Url to last stopped reading position?

Hi,

I’ve just got a new Discourse forum pretty much up and running, but have question from a member that I can’t figure out the solution to. The community is moving from another forum, and on that software you can get a url to a topic that will take you to the most recently read point, which people then often bookmark in their browser. I haven’t been able to spot how to do that in Discourse though, anyone have any ideas?

Thanks,

Jody

1 Like

Discourse does that for me automagically. When I click on a topic, it takes me to where I was last reading. Is that what you refer to? :thinking:

1 Like

I’m afraid not. The url it takes you to when you click on a topic in the topic list, is a url specific to where you were last reading, not a url that says “take me to where I last was”. So if you bookmark that, and then view some more of the topic, and then come back to that bookmark, it’ll take you to the same place you went to originally, not where you most recently left off. I’m after a generic “where I last was for this topic” url that can be stored in the browser and will keep on working no matter how much of the topic gets read.

1 Like

They can bookmark topics using the below:

And the timestamp on each reply includes a link to the specific post.

1 Like

Doesn’t that bookmark record the specific point in the topic though? So they’d have to explicitly add a new bookmark before moving away every single time, right?

No it doesn’t and yes they would.

AFAIK, Discourse doesn’t store the last topic visited but does store the last visit timestamp for each topic (topic_users.last_visited_at) so it should be possible to find the latest topic visited and then display it. But this will require a plug-in or an external widget that calls the Discourse API.

The following material is just for completeness on this topic.

As already said, the closest to what you want is to use bookmarks:

As you pointed out, bookmarks have two failings for your purpose:

  • Bookmarks normally require user action to set them unless a plug-in or other software is used to create them.

  • Bookmarks always return to the specific topic (i.e. first post) or the specific post that was selected by the user. There is no option to have a bookmark that returns to a topic or post that is determined by software at the time the bookmark is accessed.

The URL you are talking about can always bring up the last post read because the forum software automatically stores that data. This is useful because we don’t always know when we will stop reading in the forum - it can be interrupted by system reboot, system user or application user logout or an unexpected crash.

Discourse doesn’t have an option to return to the last post viewed but I think that it would be a useful feature.

P.S.
However, Discourse does have a feature that shows you which topics you viewed in your last visit even in Bookmarks so that helps to show you which topic you might have last looked at:

Others have looked at extracting the last visit data, e.g.:

1 Like

Thanks for that in-depth answer, really helpful of you, even if the end result is indeed that there’s currenty no way to do what we’d like

Indeed. Annoyingly I’ve never coded Ruby or I’d have a go myself. I’m guessing it might be too much work, since the topic lists figure out the what the last post read was in a topic and generate a relevant url, so you could have a new url, like t/topic-title/133114/latest that then redirects to the right place

1 Like

Re the PS, hmm, I’ll take a look at it. The thing is that we have numerous topics that will go on for literally hundreds of posts, and you might not have looked at specific topics for a couple of weeks or more, and then want to take another look, and be able to go there directly from a browser bookmark.

1 Like

But then the URL is only useful for one topic.

Whereas the Latest view is perfect for that scenario because all the numerous topics with edits or new posts since the last visit above will appear above the last visited line

1 Like

Well, yeah, but there might have been 40-50 or more topics that have changed since the last time you went in :slight_smile:

1 Like

Sorry, I misread your previous reply.

You were still saying that the user wants to go back to the last conversation they were reading/having on their last visit even if that topic has no changes.

This is the auto resume feature that I would like but I can’t see the Discourse team going for it.

1 Like

Not exactly I don’t think. There’ll be lots of different topics people will be following. Within a specific category on the forum, there are dozens and dozens of long-term hundreds and hundreds of post topics, of which lots of people follow loads. And they obviously like to pop in, read a load of posts, but maybe not all the way to the end, then come back later to read some more. And some people like to browser-bookmark these

1 Like

I think the bookmarks tab might be a reasonable alternative though, since you were indeed right, that view does indeed appear to take you to where you left off, and can be filtered by category as well.

Thank you.

1 Like

In the meantime, I’d direct the user to /unread; I normally set my homepage to the unread page. :slight_smile:

3 Likes

Since the PS on your in-depth answer appears to be the solution, I’ll select that post as the solution. It was a great post even without that tbh, really informative.

2 Likes

Thanks for the encouragement as I’m intentionally trying to create more helpful posts by covering the options.

3 Likes