<div dir="ltr">IMHO this is something that should be solved in that node rather than running parallel nodes or adding a PEP dependency.<div><div><br></div><div>Almost like returning a different metadata key-value pair to each requesting JID.</div>
<div><br></div><div>I remember Kev having some very wise ideas about how to elegantly solve this during the FOSDEM bus trip back to A-loft (but that could have been the beer speaking).</div><div><br></div><div>S.</div></div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On 28 July 2014 15:14, Ashley Ward <span dir="ltr"><<a href="mailto:ashley.ward@surevine.com" target="_blank">ashley.ward@surevine.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div class="">On 28 Jul 2014, at 14:06, Simon Tennant <<a href="mailto:simon@buddycloud.com" target="_blank">simon@buddycloud.com</a>> wrote:<br>
<div><br><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><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 style="white-space:pre-wrap">      </span>/<a href="mailto:user/user@domain.com" target="_blank">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></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>Simon Tennant | <a href="http://buddycloud.com" target="_blank">buddycloud.com</a> | +49 17 8545 0880 | office hours: <a href="http://goo.gl/tQgxP" target="_blank">goo.gl/tQgxP</a>
</div>