<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">On 28 Jul 2014, at 14:06, Simon Tennant <<a href="mailto:simon@buddycloud.com">simon@buddycloud.com</a>> wrote:<br><div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><div>For buddycloud channels, we're looking for a sensible way to store a users read state per publish-subscribe node.</div><div><br></div><div>For example:</div><div><ul><li>a pub-sub node has a large number of posts</li>
<li>user reads some of them from oldest to newest on one device</li><li>client stores "read up to this postID/timestamp" on pub-sub server.</li><li>user carries on unread posts on a second device.</li></ul><div>
In this case we're simply trying to store a timestamp/or postID of the newest message that the user has read up to (vs IMAP style un/read per post).</div></div><div><br></div><div>Is there a sensible way to implement this per node, per user?</div>
</div></blockquote><br></div><div>How about on a PEP node for the user? Although this is then taking it out of the buddycloud stack.</div><div><br></div><div>Alternatively, to keep it within the buddycloud stack you could store it on a separate node within the userís personal channels:</div><div><br></div><div>e.g.</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>/<a href="mailto:user/user@domain.com">user/user@domain.com</a>/readstatus</div><div>or something like that</div><div><br></div><div>You could use the node id as the item id (for easy retrieval) and some information within the payload (such as last item id read, when it was read, maybe even what device it was read from).</div><br><div>ó</div><div>Ash</div></body></html>