Perhaps I'm missing something here... That presence-based delivery is an optional service feature implies that items published are normally queued to node subscribers when they are offline, and later delivered when they sign on. However I can't find this explicitly stated in the spec.
Also, the impact of persist_items on delivery to offline subscribers is not discussed. Is a non-persisting node inherently presence-based delivery? (Intuitively, I'd say not.) That on_sub_and_presence is an option for send_last_published_item could imply that items published when a subscriber is offline need not be queued for later delivery, which seems very strange. Also, I see no method for reliable delivery of items to offline subscribers... IQ notifications seem to address this only for online subscribers. This seems like a significant omission. I discovered this when I configured a node on ejabberd as follows, expecting it to queue items if the subscriber is offline, as for normal messages (which it doesn't): <field var='pubsub#notify_retract'><value>0</value></field> <field var='pubsub#persist_items'><value>0</value></field> <field var='pubsub#publish_model'><value>open</value></field> <field var='pubsub#access_model'><value>whitelist</value></field> <field var='pubsub#send_last_published_item'><value>never</value></field> Thanks, Liam
