plugins/mod_presence.lua

changeset 2259
22417227d2ce
parent 2229
3b38ec879076
child 2461
a6a50cf0e444
equal deleted inserted replaced
2229:3b38ec879076 2259:22417227d2ce
218 if rostermanager.is_contact_subscribed(node, host, from_bare) then 218 if rostermanager.is_contact_subscribed(node, host, from_bare) then
219 if 0 == send_presence_of_available_resources(node, host, st_from, origin, core_route_stanza) then 219 if 0 == send_presence_of_available_resources(node, host, st_from, origin, core_route_stanza) then
220 -- TODO send last recieved unavailable presence (or we MAY do nothing, which is fine too) 220 -- TODO send last recieved unavailable presence (or we MAY do nothing, which is fine too)
221 end 221 end
222 else 222 else
223 core_route_stanza(origin, st.presence({from=to_bare, to=from_bare, type="unsubscribed"})); 223 core_route_stanza(hosts[host], st.presence({from=to_bare, to=from_bare, type="unsubscribed"}));
224 end 224 end
225 elseif stanza.attr.type == "subscribe" then 225 elseif stanza.attr.type == "subscribe" then
226 if rostermanager.is_contact_subscribed(node, host, from_bare) then 226 if rostermanager.is_contact_subscribed(node, host, from_bare) then
227 core_route_stanza(origin, st.presence({from=to_bare, to=from_bare, type="subscribed"})); -- already subscribed 227 core_route_stanza(hosts[host], st.presence({from=to_bare, to=from_bare, type="subscribed"})); -- already subscribed
228 -- Sending presence is not clearly stated in the RFC, but it seems appropriate 228 -- Sending presence is not clearly stated in the RFC, but it seems appropriate
229 if 0 == send_presence_of_available_resources(node, host, from_bare, origin, core_route_stanza) then 229 if 0 == send_presence_of_available_resources(node, host, from_bare, origin, core_route_stanza) then
230 -- TODO send last recieved unavailable presence (or we MAY do nothing, which is fine too) 230 -- TODO send last recieved unavailable presence (or we MAY do nothing, which is fine too)
231 end 231 end
232 else 232 else

mercurial