Hey folks,

For awhile I've been designing systems whereby any entity announcing presence has the responsibility of continuously refreshing this presence. I've even done this within XMPP by including a <ttl> element in the presence stanza indicating a timeout value. If the receiving entity does not receive a new presence stanza within this time period then it considers the sending entity to be unavailable. I prefer this to the practice of the receiving entity having to periodically probe whoever it has received presence from. The end result is pretty much the same, but to me it feels cleaner to put this responsibility on the sender.

I wonder if it couldn't hurt to standardize a simple thing like this?

<presence from="alice" to="bob">
  <status>I'm here</status>
  <ttl xmlns="urn:xmpp:tmp:ttl">600</ttl>
</presence>

Given the above directed presence, Bob would expect another presence stanza from Alice within 10 minutes.

Justin

Reply via email to