local listener = {};
local runner_callbacks = {};
+do
+ -- Connection counter resets to 0 on load and reload
+ -- Bump it up to current value
+ local count = 0;
+ for _ in pairs(sessions) do
+ count = count + 1;
+ end
+ measure_connections(count);
+end
+
--- Stream events handlers
local stream_xmlns_attr = {xmlns='urn:ietf:params:xml:ns:xmpp-streams'};
sm_destroy_session(session, reason);
conn:close();
end
+ else
+ local reason = (reason and (reason.name or reason.text or reason.condition)) or reason;
+ sm_destroy_session(session, reason);
end
end
if session then
(session.log or log)("info", "Client disconnected: %s", err or "connection closed");
sm_destroy_session(session, err);
+ session.conn = nil;
sessions[conn] = nil;
end
end