127 |
127 |
128 -- Listener factory |
128 -- Listener factory |
129 function new_listener(stream) |
129 function new_listener(stream) |
130 local conn_listener = {}; |
130 local conn_listener = {}; |
131 |
131 |
|
132 function conn_listener.onconnect(conn) |
|
133 stream.connected = true; |
|
134 stream.send = function (stream, data) stream:debug("Sending data: "..tostring(data)); return conn:write(tostring(data)); end; |
|
135 stream:event("connected"); |
|
136 end |
|
137 |
132 function conn_listener.onincoming(conn, data) |
138 function conn_listener.onincoming(conn, data) |
133 stream:debug("Data"); |
139 stream:event("incoming-raw", data); |
134 if not stream.connected then |
|
135 stream.connected = true; |
|
136 stream.send = function (stream, data) stream:debug("Sending data: "..tostring(data)); return conn:write(tostring(data)); end; |
|
137 stream:event("connected"); |
|
138 end |
|
139 if data then |
|
140 stream:event("incoming-raw", data); |
|
141 end |
|
142 end |
140 end |
143 |
141 |
144 function conn_listener.ondisconnect(conn, err) |
142 function conn_listener.ondisconnect(conn, err) |
145 stream.connected = false; |
143 stream.connected = false; |
146 stream:event("disconnected", { reason = err }); |
144 stream:event("disconnected", { reason = err }); |