|
1 local async = require "scansion.async"; |
|
2 local client = require "scansion.objects.client"; |
|
3 require "verse".init("component"); |
|
4 |
|
5 return setmetatable({ |
|
6 connects = function (component) |
|
7 local wait, done = async.waiter(); |
|
8 component.stream:hook("ready", function () |
|
9 component.stream.conn:pause() |
|
10 component.log"ready" |
|
11 done() |
|
12 component.log("ready done") |
|
13 end); |
|
14 component.stream:debug("Connecting as a component..."); |
|
15 component.stream:connect_component(component.jid, component.password); |
|
16 wait(); |
|
17 end; |
|
18 }, { __index = client }); |