summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2013-08-25 16:39:06 (GMT)
committerRemko Tronçon <git@el-tramo.be>2013-08-27 19:47:48 (GMT)
commit1bb607f96e79845ce30dd5590b0d53cc394ac150 (patch)
tree6156622ddd1b3238aec73536e0dc25b632965a71 /Sluift/Examples/EchoBot.lua
parentc4431ee90f3f1daac0a12b35bfa3378d5c570eaa (diff)
downloadswift-1bb607f96e79845ce30dd5590b0d53cc394ac150.zip
swift-1bb607f96e79845ce30dd5590b0d53cc394ac150.tar.bz2
PubSub implementation & Sluift refactoring.
Change-Id: I04ff7111b73565c00bff6db183451774a633344f
Diffstat (limited to 'Sluift/Examples/EchoBot.lua')
-rw-r--r--Sluift/Examples/EchoBot.lua44
1 files changed, 24 insertions, 20 deletions
diff --git a/Sluift/Examples/EchoBot.lua b/Sluift/Examples/EchoBot.lua
index 09da63b..fc495c4 100644
--- a/Sluift/Examples/EchoBot.lua
+++ b/Sluift/Examples/EchoBot.lua
@@ -1,27 +1,31 @@
---
--- Copyright (c) 2010 Remko Tronçon
--- Licensed under the GNU General Public License v3.
--- See Documentation/Licenses/GPLv3.txt for more information.
---
+--[[
+ Copyright (c) 2010-2013 Remko Tronçon
+ Licensed under the GNU General Public License v3.
+ See Documentation/Licenses/GPLv3.txt for more information.
+--]]
---
--- An XMPP Echoing Bot
---
--- This script logs into an XMPP server, sends initial presence,
--- and then waits for incoming messages, and echoes them back.
---
--- The following environment variables are used:
--- * SLUIFT_JID, SWIFT_PASS: JID and password to log in with
--- * SLUIFT_DEBUG: Sets whether debugging should be turned on
---
+--[[
+
+ An XMPP Echoing Bot
+
+ This script logs into an XMPP server, sends initial presence,
+ and then waits for incoming messages, and echoes them back.
+
+ The following environment variables are used:
+ * SLUIFT_JID, SWIFT_PASS: JID and password to log in with
+ * SLUIFT_DEBUG: Sets whether debugging should be turned on
+
+--]]
require "sluift"
sluift.debug = os.getenv("SLUIFT_DEBUG") or false
c = sluift.new_client(os.getenv("SLUIFT_JID"), os.getenv("SLUIFT_PASS"))
-c:connect()
-c:send_presence("Send me a message")
-c:for_event(function(e)
- if e["type"] == "message" then c:send_message(e["from"], e["body"]) end
- end)
+c:connect(function ()
+ c:set_version{name = "EchoBot", version = "0.1"}
+ c:send_presence("Send me a message")
+ for message in c:messages() do
+ c:send_message{to = message["from"], body = message["body"]}
+ end
+end)