# HG changeset patch # User Matthew Wild # Date 1282644677 -3600 # Node ID 60a03b2cabece4b9322b04a3e1811a7d6fc2d654 # Parent c67ed3fc55715440b6c4465883b5269a82255a2f verse.plugins.disco: Auto-disco local services on connect, and delay 'ready' event until done diff -r c67ed3fc5571 -r 60a03b2cabec plugins/disco.lua --- a/plugins/disco.lua Tue Aug 24 11:10:42 2010 +0100 +++ b/plugins/disco.lua Tue Aug 24 11:11:17 2010 +0100 @@ -332,7 +332,10 @@ end end); + local initial_disco_started; stream:hook("ready", function () + if initial_disco_started then return; end + initial_disco_started = true; stream:disco_local_services(function (services) for _, service in ipairs(services) do for identity in pairs(stream.disco.cache[service.jid].identities) do @@ -342,7 +345,9 @@ }); end end + stream:event("ready"); end); + return true; end, 5); end