Open thekad opened 4 years ago
Same apparently even without ZNC in the middle.
I think we'd need to call channels.mark
etc periodically to mark messages as read. Since there's no way from ircd to tell if a user has read a channel, our options are somewhat limited. Calling *.mark
on everything all the time seems bad. I think the best we can do is call *.mark
each time a user sends a message on the corresponding conversation.
One other problem is that all the *.mark
methods are deprecated in favor of the conversations API, however I don't see a corresponding conversations.mark
method in the docs. I'll file a ticket with Slack to see what we're supposed to do now.
Another option would be to send a *.mark
on disconnect or have a /slack read
command.
Here is the response I got from Slack support.
Adding an equivalent channels.mark method to the Conversations API is not something we have immediate plans for. This is a request we've received from other developers too. There is a discussion about making conversations.mark or a similar method available to developers in the future, however the team is unable to commit to a specific timeline.
I encourage people to email Slack requesting a conversations.mark
API method if they would like this feature. We can write a @slack read
command very easily, however it won't work in a few months when Slack removes the old API methods.
Good news, it looks like this has been added!
https://api.slack.com/methods/conversations.mark
My first thought is combining this with a new @ slack command to mark the current channel or all channels as read would make sense. I suspect I could combine that with a client-side hook to then mark channels as read when they're focused by sending the command automatically.
It's not clear to me it's necessary to call mark
upon sending a message, though. Doesn't sending a message to a channel automatically fast-forward the read marker? Or does that really need to be done manually by the client?
Description I believe irslackd doesn't change my presence to online when connecting to it. The end result is all my messages aren't marked as read until I open web/app slack. I use znc in front of irslackd, not sure if the interaction between the two is the problem.
Steps to reproduce
Expected behavior Expected my presence to change to online and messages to be marked as read for the channels I have joined via irslackd
Log output unsure how much is needed, but I can see the presence message showing in the logs:
Client setup