• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Having fun with jabber bots
 

Having fun with jabber bots

on

  • 9,167 views

Victor's presentation about xmpp and Jabber bots at Pycon Ireland 2010 ...

Victor's presentation about xmpp and Jabber bots at Pycon Ireland 2010

Imagine the possibility of creating a real time channel, capable of notifying and interact, using a simple instant messaging application. Integrating such tool on your application could bring real value to you and customers. The main focus of this presentation is to show an easy way to create and use computer bots through the Python language, suggesting useful applications, and bring together some advanced considerations about security and natural language processing.

Learn how to create a bot using jabberBot (5 minute tutorial):
basics
testing
live example
How to make it useful?
Real time notification system
Integration with Yahoo, Exchange APIs
System administration
Getting serious

Alternative libraries
Language Processing

Statistics

Views

Total Views
9,167
Views on SlideShare
7,963
Embed Views
1,204

Actions

Likes
4
Downloads
69
Comments
4

23 Embeds 1,204

http://malditacomedia.blogspot.com.br 587
http://malditacomedia.blogspot.com 472
http://coding.fratech.net 81
http://codingatfratech.tumblr.com 12
http://blog.lambda3.com.br 7
http://dashboard.bloglines.com 7
http://feed.lambda3.com.br 5
http://malditacomedia.blogspot.com.es 4
http://malditacomedia.blogspot.pt 4
http://www.slideee.com 4
http://www.malditacomedia.blogspot.com.br 3
http://malditacomedia.blogspot.fr 3
http://malditacomedia.blogspot.co.uk 3
http://malditacomedia.blogspot.ru 2
http://theoldreader.com 2
http://malditacomedia.blogspot.jp 1
http://malditacomedia.blogspot.de 1
http://www.malditacomedia.blogspot.com 1
http://malditacomedia.blogspot.mx 1
http://translate.googleusercontent.com 1
http://www.mefeedia.com 1
http://malditacomedia.blogspot.ch 1
http://drizzlin.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

14 of 4 previous next Post a comment

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Having fun with jabber bots Having fun with jabber bots Presentation Transcript

    • Having Fun with Jabber Bots Victor Hugo Germano
    • Why Jabber Bots? What kinda a crazy am I?
    • It’s Fun! http://www.flickr.com/photos/sleepallday/3311794264/
    • Maybe a glimpse of the future? http://www.flickr.com/photos/dancoulter/21042744/
    • Dynamic web Is not enough!
    • Tired of Ctrl+R and F5 http://www.flickr.com/photos/disaster_area/3454110496/
    • We want websites like this!
    • But during the game... Real time streamming... for sure!
    • FLASH
    • Would FLASH be the answer?
    • No! At least is what most companies are saying
    • “Big” Problem How to create a chat room? Or a chess game?
    • Because Latency Matters Specially when developing and application
    • client server Traditional Polling Often Problematic
    • ? Any other options?
    • Extensive Messaging and Presence Protocol Event-Driven XML oriented
    • Stanzas Presence <presence from="victorhg@im.net/home">   <status>at #pyconIreland o/</status> </presence>
    • Stanzas Message <message to="mary@im.net/work"      from="victorhg@im.net/home"      type="chat" >     <body>How u doing? ;) </body> </message>
    • Stanzas IQ (Info Query) <iq type="get" id="an_id"      from="victorhg@im.net/casa"      to="im.net">     <query xmlns="jabber:iq:roster"/> </iq>
    • client server Long Polling
    • Jabber.org
    • But XML sucks! xmppPy is your friend!
    • xmppPy conn = xmpp.Client(‘gmail.com’) conn.connect([server, port]) conn.auth(user, pwd) conn.send(Message( "email@gmail.com","hello!")) conn.disconnect()
    • First Example Using GTalkBot http://github.com/victorhg/botnet/blob/master/botnet/gtalkbot.py
    • mybot.py from gtalkbot import GTalkBot, botcommand class MyBot(GTalkBot): def __init__(self): super(MyBot,self).__init__('USER_ID','PWD') @botcommand def hello(self, mess, args): return “Hello World!” MyBot().run_client() http://github.com/victorhg/botnet/blob/master/botnet/gtalkbot.py
    • $> python mybot.py
    • How about a real bot? Enough with the hello_world
    • Demo Add a contact on your GTalk account pycon.bot@gmail.com
    • Having fun! Show me the code!
    • How can you use it? http://www.flickr.com/photos/flysi/183272970/
    • Real Time Web? Powered by XMPP
    • BOSH Bidirectional-streams Over Synchronous HTTP
    • Strophe.js When XMPP hits the web http://code.stanziq.com/strophe/
    • Strophe.js // Connecting var conn = new Strophe.Connection(URL) conn.connect( jid, password, callback ); // Creating stanzas var stanza = new Strophe.Builder( “message”, { “to”: “john@jabber.org”, type:”chat” } );
    • Who uses XMPP on the web?
    • References http://xmpp.org/ http://xmpppy.sourceforge.net/ http://thpinfo.com/2007/python-jabberbot/ http://xmpppy-guide.berlios.de/ http://code.stanziq.com/strophe/ Real Time Web with XMPP @ InfoQ
    • Thank you! twitter.com/victorhg google.com/profiles/victorhg Use it! Share it! Remix it!