SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




        Jabber is more than Instant Messaging



                                              O'Reilly EuroOscon

                                                 20/09/2006
                                                    Florian Holzhauer

                                                  jid: fh@jabber.ccc.de
                                                 mail: fh-j@fholzhauer.de




EuroOsconk: Jabber – Florian Holzhauer - #1
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                                    Intro

             ●    Jabber / XMPP
                    ●   eXtensible Message and Presence Protocol
             ●    JEPs: Jabber Enhancement Proposal
                    ●   XEP?
             ●    Jabber is open
                    ●   New ideas, anyone?
                    ●   xmpp.org
                    ●   Jabber.org




EuroOsconk: Jabber – Florian Holzhauer - #2
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                              Infrastructure

             ●    Decentralized Dynamical Network
                    ●   „like Mail“
             ●    XMPP: RFC 3920-3924
             ●    Several jabberd-implementations
             ●    SRV records
             ●    Lots of clients
                    ●   Even for OS/2, Amiga, Symbian and Newton
                    ●   Google Talk
                    ●   Livejournal
                    ●   Mabber


EuroOsconk: Jabber – Florian Holzhauer - #3
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                        Server infrastructure
                                                    (jabberd14 as example..)


             ●    Jabberd routing

                                                        sessions                            some.jabberd.com
                                        dns
                                                                                            Port 5269

                                                                                            SRV _xmpp-server._tcp.some.jabberd.com
                                                                                s2s
      *@jabber.ccc.de

                                                                                                 Gateways
                                                                                                 AIM/ICQ/MSN/Yahoo
                                                    router
                                                                                                 SMS/eMail/IRC/RSS...

                                                                               transports
                                  c2s
                                  Ports 5222/5223
     fh@jabber.ccc.de
EuroOsconk: Jabber – Florian Holzhauer - #4
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                              Running a jabberd

             ●    http://www.jabber.org/software/servers.shtml
                    ●   Ejabberd - erlang
                    ●   Jabberd1.4 – C
                    ●   W ildfire – Java
                    ●   Several others - some weird, some cool.
             ●    Resource usage?
             ●    Start small, extend later
             ●    Few gateway users == no trouble
             ●    Backend storage
                    ●   *sql, ldap, files, berkeley db?



EuroOsconk: Jabber – Florian Holzhauer - #5
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                          Pubsub (JEP 0060)

             ●    Push mechanism for any content
                    ●   Media provider offers „node“
                    ●   You subscribe to the node
                    ●   When content changes all subscribers are notified
             ●    Various content possible
             ●    Several Standards
                    ●   Atom over Pubsub
                    ●   User Mood
                    ●   Avatar Picture
                    ●   User Tune („Now playing“)
                    ●   ...

EuroOsconk: Jabber – Florian Holzhauer - #6
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                              Atom over Pubsub

             ●    „RSS over XMPP“
             ●    No repeated polling
                    ●   Less traffic
             ●    Instant Notification
                    ●   Faster
             ●    Node „sharing“
                    ●   Several publishers
             ●    Subscription Management




EuroOsconk: Jabber – Florian Holzhauer - #7
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                             Common Alterting Protocol

             ●    JEP 0127
             ●    „to collect and relay all types of hazard warnings
                  and reports“
             ●    Instant delivery
             ●    Used in the CapWin Project – Maryland, Virginia




EuroOsconk: Jabber – Florian Holzhauer - #8
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                                CapWin

             ●    Jabber/Web based system
             ●    „CapWIN is a partnership [..] to develop an
                  interoperable first responder data communication
                  and information sharing network“
             ●    47 agencies, 1754 users




EuroOsconk: Jabber – Florian Holzhauer - #9
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                     HTTP Auth via Jabber

             ●   „Single Sign on“
             ●   JEP 0070




EuroOsconk: Jabber – Florian Holzhauer - #10
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                               Virtual Presence

             ●   Each user has its avatar
                    ●   Customizable
                    ●   Animation
             ●   Shown in the browser
             ●   Chatting capabilities
             ●   JEP 0151




EuroOsconk: Jabber – Florian Holzhauer - #11
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                                   Lluna



             ●   Same Website = Same Interests
             ●   Chat with visitors of the same website
             ●   Privacy: <md5sum-of-website>@conference
             ●   Currently windows only
             ●   Open Source
             ●   Shopping Assistant on Website



EuroOsconk: Jabber – Florian Holzhauer - #12
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                               SIP/Simple/Jingle

             ●   SIP/Simple can be replaced using Jabber
             ●   Jabber is more extensible
             ●   One central server
                    ●   Logging is easy, and important for financial
                        companies due to regulations by the Securities
                        Exchange Commission
             ●   Big installation by Bell South
             ●   Jingle
                    ●   VoIP via Jabber
                    ●   Google Talk


EuroOsconk: Jabber – Florian Holzhauer - #13
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                               HTTP Binding

             ●   JEP 0124
                    ●   Jabber over HTTP
                    ●   Encapsulated in <body>
             ●   Javascript-based Jabber-Client
             ●   „Web 2.0“
                    ●   Mabber
                    ●   JWChat




EuroOsconk: Jabber – Florian Holzhauer - #14
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                               Server Monitoring

             ●   Nagios supports Jabber
             ●   Jabber ID = machine
             ●   Sputnik – Wlan Access Points
                    ●   Accounting
                    ●   Administration
                    ●   Monitoring




EuroOsconk: Jabber – Florian Holzhauer - #15
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                   Support/Knowledge Management

             ●   Find an „expert“ via Jabber
             ●   Implemented by Qunu
             ●   Jabber conferences




EuroOsconk: Jabber – Florian Holzhauer - #16
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                               Other ideas

             ●   Multiuser games
             ●   Blogging
                    ●   Livejournal has „Jabber support“
             ●   Integration into „Web 2.0“ communities
             ●   ...




EuroOsconk: Jabber – Florian Holzhauer - #17
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                 Jabber and the „officials“: US army

             ●   „U.S. Army Future Combat System“
             ●   Developed by Boeing
             ●   „connect people and sensors in real time“
             ●   Chat services provided by jabber




EuroOsconk: Jabber – Florian Holzhauer - #18
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                         Coding with jabber?

             ●   Well documented
             ●   Libraries for most common languages
                    ●   Perl
                    ●   Python
                    ●   C++
                    ●   Ruby
                    ●   Java
                    ●   Dylan
                    ●   ...
             ●   A lot of sample code online, some nice books
             ●   Please: Not yet another new desktop client.

EuroOsconk: Jabber – Florian Holzhauer - #19
?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream




                                   Hey, wake up! It's over.

       ●    Slides + Urls:
            http://fholzhauer.de/docs/euos2006/
       ●    Any questions?
       ●    Feel free to contact me via jabber:
             ● fh@jabber.ccc.de




EuroOsconk: Jabber – Florian Holzhauer - #20

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSockets
 
Real-Time with Flowdock
Real-Time with FlowdockReal-Time with Flowdock
Real-Time with Flowdock
 
Apache httpd-2.4 : Watch out cloud!
Apache httpd-2.4 : Watch out cloud!Apache httpd-2.4 : Watch out cloud!
Apache httpd-2.4 : Watch out cloud!
 
Web sockets in Java
Web sockets in JavaWeb sockets in Java
Web sockets in Java
 
Plone Deployment (PloneConf Edition)
Plone Deployment (PloneConf Edition)Plone Deployment (PloneConf Edition)
Plone Deployment (PloneConf Edition)
 
Converting Your DEV Environment to a Docker Stack
Converting Your DEV Environment to a Docker StackConverting Your DEV Environment to a Docker Stack
Converting Your DEV Environment to a Docker Stack
 
Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014
 
Converting your DEV Environment to a Docker Stack - ZCOE18
Converting your DEV Environment to a Docker Stack - ZCOE18Converting your DEV Environment to a Docker Stack - ZCOE18
Converting your DEV Environment to a Docker Stack - ZCOE18
 
WebSockets in JEE 7
WebSockets in JEE 7WebSockets in JEE 7
WebSockets in JEE 7
 
An Introduction to Apache ServiceMix 4 - FUSE ESB
An Introduction to Apache ServiceMix 4 - FUSE ESBAn Introduction to Apache ServiceMix 4 - FUSE ESB
An Introduction to Apache ServiceMix 4 - FUSE ESB
 
Cometdの紹介
Cometdの紹介Cometdの紹介
Cometdの紹介
 
Fighting XMPP abuse and spam with ejabberd - ejabberd Workshop #1
Fighting XMPP abuse and spam with ejabberd - ejabberd Workshop #1Fighting XMPP abuse and spam with ejabberd - ejabberd Workshop #1
Fighting XMPP abuse and spam with ejabberd - ejabberd Workshop #1
 
Plone Deployment Secrets & Tricks
Plone Deployment Secrets & TricksPlone Deployment Secrets & Tricks
Plone Deployment Secrets & Tricks
 
Full-Stack Plone Deployment with Ansible
Full-Stack Plone Deployment with AnsibleFull-Stack Plone Deployment with Ansible
Full-Stack Plone Deployment with Ansible
 
Html5 security
Html5 securityHtml5 security
Html5 security
 
MNPHP Scalable Architecture 101 - Feb 3 2011
MNPHP Scalable Architecture 101 - Feb 3 2011MNPHP Scalable Architecture 101 - Feb 3 2011
MNPHP Scalable Architecture 101 - Feb 3 2011
 
Rest Vs Soap Yawn2289
Rest Vs Soap Yawn2289Rest Vs Soap Yawn2289
Rest Vs Soap Yawn2289
 
Php push notifications
Php push notificationsPhp push notifications
Php push notifications
 
HTML5 WebSocket Introduction
HTML5 WebSocket IntroductionHTML5 WebSocket Introduction
HTML5 WebSocket Introduction
 
Bandwidth limiting howto
Bandwidth limiting howtoBandwidth limiting howto
Bandwidth limiting howto
 

Destacado (8)

DTN Routing Verfahren
DTN Routing VerfahrenDTN Routing Verfahren
DTN Routing Verfahren
 
Text Link Spam-Erkennung und -Unterdrückung
Text Link Spam-Erkennung und -UnterdrückungText Link Spam-Erkennung und -Unterdrückung
Text Link Spam-Erkennung und -Unterdrückung
 
IP Geolocation
IP GeolocationIP Geolocation
IP Geolocation
 
Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012
 
Linkspam: Erkennung und Unterdrückung
Linkspam: Erkennung und UnterdrückungLinkspam: Erkennung und Unterdrückung
Linkspam: Erkennung und Unterdrückung
 
bephpug - varnish & co
bephpug - varnish & cobephpug - varnish & co
bephpug - varnish & co
 
Entwicklung mit Chef und Vagrant - PHPUG HH
Entwicklung mit Chef und Vagrant - PHPUG HHEntwicklung mit Chef und Vagrant - PHPUG HH
Entwicklung mit Chef und Vagrant - PHPUG HH
 
Jabber/XMPP
Jabber/XMPPJabber/XMPP
Jabber/XMPP
 

Similar a Jabber is more than instant messaging

Messaging With Erlang And Jabber
Messaging With  Erlang And  JabberMessaging With  Erlang And  Jabber
Messaging With Erlang And Jabber
l xf
 
Microblogging via XMPP
Microblogging via XMPPMicroblogging via XMPP
Microblogging via XMPP
Stoyan Zhekov
 
AMF Flash and .NET
AMF Flash and .NETAMF Flash and .NET
AMF Flash and .NET
Yaniv Uriel
 
Eduardo Silva - monkey http-server everywhere
Eduardo Silva - monkey http-server everywhereEduardo Silva - monkey http-server everywhere
Eduardo Silva - monkey http-server everywhere
StarTech Conference
 
In Pursuit of the Holy Grail: Building Isomorphic JavaScript Apps
In Pursuit of the Holy Grail: Building Isomorphic JavaScript AppsIn Pursuit of the Holy Grail: Building Isomorphic JavaScript Apps
In Pursuit of the Holy Grail: Building Isomorphic JavaScript Apps
Spike Brehm
 
Martin Zeiser, Universal Pwn n Play - pacsec -final
Martin Zeiser, Universal Pwn n Play - pacsec -finalMartin Zeiser, Universal Pwn n Play - pacsec -final
Martin Zeiser, Universal Pwn n Play - pacsec -final
PacSecJP
 
Kann JavaScript elegant sein?
Kann JavaScript elegant sein?Kann JavaScript elegant sein?
Kann JavaScript elegant sein?
jbandi
 

Similar a Jabber is more than instant messaging (20)

Messaging With Erlang And Jabber
Messaging With  Erlang And  JabberMessaging With  Erlang And  Jabber
Messaging With Erlang And Jabber
 
Rails hosting
Rails hostingRails hosting
Rails hosting
 
Comet: Making The Web a 2-Way Medium
Comet: Making The Web a 2-Way MediumComet: Making The Web a 2-Way Medium
Comet: Making The Web a 2-Way Medium
 
Why we choose Symfony2
Why we choose Symfony2Why we choose Symfony2
Why we choose Symfony2
 
Microblogging via XMPP
Microblogging via XMPPMicroblogging via XMPP
Microblogging via XMPP
 
Ejabberd installation configuration
Ejabberd installation configurationEjabberd installation configuration
Ejabberd installation configuration
 
Developing realtime apps with Drupal and NodeJS
Developing realtime apps with Drupal and NodeJS Developing realtime apps with Drupal and NodeJS
Developing realtime apps with Drupal and NodeJS
 
Chat app case study - xmpp vs SIP
Chat app case study - xmpp vs SIPChat app case study - xmpp vs SIP
Chat app case study - xmpp vs SIP
 
How to run a bank on Apache CloudStack
How to run a bank on Apache CloudStackHow to run a bank on Apache CloudStack
How to run a bank on Apache CloudStack
 
XMPP-IoT Protocol designed mainly to send mesages
XMPP-IoT Protocol designed mainly to send mesagesXMPP-IoT Protocol designed mainly to send mesages
XMPP-IoT Protocol designed mainly to send mesages
 
Ejabberd with xmpp
Ejabberd with xmppEjabberd with xmpp
Ejabberd with xmpp
 
AMF Flash and .NET
AMF Flash and .NETAMF Flash and .NET
AMF Flash and .NET
 
Eduardo Silva - monkey http-server everywhere
Eduardo Silva - monkey http-server everywhereEduardo Silva - monkey http-server everywhere
Eduardo Silva - monkey http-server everywhere
 
In Pursuit of the Holy Grail: Building Isomorphic JavaScript Apps
In Pursuit of the Holy Grail: Building Isomorphic JavaScript AppsIn Pursuit of the Holy Grail: Building Isomorphic JavaScript Apps
In Pursuit of the Holy Grail: Building Isomorphic JavaScript Apps
 
Server-Side JavaScript Developement - Node.JS Quick Tour
Server-Side JavaScript Developement - Node.JS Quick TourServer-Side JavaScript Developement - Node.JS Quick Tour
Server-Side JavaScript Developement - Node.JS Quick Tour
 
Martin Zeiser, Universal Pwn n Play - pacsec -final
Martin Zeiser, Universal Pwn n Play - pacsec -finalMartin Zeiser, Universal Pwn n Play - pacsec -final
Martin Zeiser, Universal Pwn n Play - pacsec -final
 
Alfresco Rumors: XMPP Enable Alfresco nodes (POC)
Alfresco Rumors: XMPP Enable Alfresco nodes (POC)Alfresco Rumors: XMPP Enable Alfresco nodes (POC)
Alfresco Rumors: XMPP Enable Alfresco nodes (POC)
 
Nodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredevNodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredev
 
Challenges and experiences with IPTV from a network point of view
Challenges and experiences with IPTV from a network point of viewChallenges and experiences with IPTV from a network point of view
Challenges and experiences with IPTV from a network point of view
 
Kann JavaScript elegant sein?
Kann JavaScript elegant sein?Kann JavaScript elegant sein?
Kann JavaScript elegant sein?
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 

Jabber is more than instant messaging

  • 1. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Jabber is more than Instant Messaging O'Reilly EuroOscon 20/09/2006 Florian Holzhauer jid: fh@jabber.ccc.de mail: fh-j@fholzhauer.de EuroOsconk: Jabber – Florian Holzhauer - #1
  • 2. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Intro ● Jabber / XMPP ● eXtensible Message and Presence Protocol ● JEPs: Jabber Enhancement Proposal ● XEP? ● Jabber is open ● New ideas, anyone? ● xmpp.org ● Jabber.org EuroOsconk: Jabber – Florian Holzhauer - #2
  • 3. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Infrastructure ● Decentralized Dynamical Network ● „like Mail“ ● XMPP: RFC 3920-3924 ● Several jabberd-implementations ● SRV records ● Lots of clients ● Even for OS/2, Amiga, Symbian and Newton ● Google Talk ● Livejournal ● Mabber EuroOsconk: Jabber – Florian Holzhauer - #3
  • 4. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Server infrastructure (jabberd14 as example..) ● Jabberd routing sessions some.jabberd.com dns Port 5269 SRV _xmpp-server._tcp.some.jabberd.com s2s *@jabber.ccc.de Gateways AIM/ICQ/MSN/Yahoo router SMS/eMail/IRC/RSS... transports c2s Ports 5222/5223 fh@jabber.ccc.de EuroOsconk: Jabber – Florian Holzhauer - #4
  • 5. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Running a jabberd ● http://www.jabber.org/software/servers.shtml ● Ejabberd - erlang ● Jabberd1.4 – C ● W ildfire – Java ● Several others - some weird, some cool. ● Resource usage? ● Start small, extend later ● Few gateway users == no trouble ● Backend storage ● *sql, ldap, files, berkeley db? EuroOsconk: Jabber – Florian Holzhauer - #5
  • 6. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Pubsub (JEP 0060) ● Push mechanism for any content ● Media provider offers „node“ ● You subscribe to the node ● When content changes all subscribers are notified ● Various content possible ● Several Standards ● Atom over Pubsub ● User Mood ● Avatar Picture ● User Tune („Now playing“) ● ... EuroOsconk: Jabber – Florian Holzhauer - #6
  • 7. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Atom over Pubsub ● „RSS over XMPP“ ● No repeated polling ● Less traffic ● Instant Notification ● Faster ● Node „sharing“ ● Several publishers ● Subscription Management EuroOsconk: Jabber – Florian Holzhauer - #7
  • 8. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Common Alterting Protocol ● JEP 0127 ● „to collect and relay all types of hazard warnings and reports“ ● Instant delivery ● Used in the CapWin Project – Maryland, Virginia EuroOsconk: Jabber – Florian Holzhauer - #8
  • 9. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream CapWin ● Jabber/Web based system ● „CapWIN is a partnership [..] to develop an interoperable first responder data communication and information sharing network“ ● 47 agencies, 1754 users EuroOsconk: Jabber – Florian Holzhauer - #9
  • 10. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream HTTP Auth via Jabber ● „Single Sign on“ ● JEP 0070 EuroOsconk: Jabber – Florian Holzhauer - #10
  • 11. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Virtual Presence ● Each user has its avatar ● Customizable ● Animation ● Shown in the browser ● Chatting capabilities ● JEP 0151 EuroOsconk: Jabber – Florian Holzhauer - #11
  • 12. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Lluna ● Same Website = Same Interests ● Chat with visitors of the same website ● Privacy: <md5sum-of-website>@conference ● Currently windows only ● Open Source ● Shopping Assistant on Website EuroOsconk: Jabber – Florian Holzhauer - #12
  • 13. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream SIP/Simple/Jingle ● SIP/Simple can be replaced using Jabber ● Jabber is more extensible ● One central server ● Logging is easy, and important for financial companies due to regulations by the Securities Exchange Commission ● Big installation by Bell South ● Jingle ● VoIP via Jabber ● Google Talk EuroOsconk: Jabber – Florian Holzhauer - #13
  • 14. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream HTTP Binding ● JEP 0124 ● Jabber over HTTP ● Encapsulated in <body> ● Javascript-based Jabber-Client ● „Web 2.0“ ● Mabber ● JWChat EuroOsconk: Jabber – Florian Holzhauer - #14
  • 15. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Server Monitoring ● Nagios supports Jabber ● Jabber ID = machine ● Sputnik – Wlan Access Points ● Accounting ● Administration ● Monitoring EuroOsconk: Jabber – Florian Holzhauer - #15
  • 16. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Support/Knowledge Management ● Find an „expert“ via Jabber ● Implemented by Qunu ● Jabber conferences EuroOsconk: Jabber – Florian Holzhauer - #16
  • 17. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Other ideas ● Multiuser games ● Blogging ● Livejournal has „Jabber support“ ● Integration into „Web 2.0“ communities ● ... EuroOsconk: Jabber – Florian Holzhauer - #17
  • 18. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Jabber and the „officials“: US army ● „U.S. Army Future Combat System“ ● Developed by Boeing ● „connect people and sensors in real time“ ● Chat services provided by jabber EuroOsconk: Jabber – Florian Holzhauer - #18
  • 19. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Coding with jabber? ● Well documented ● Libraries for most common languages ● Perl ● Python ● C++ ● Ruby ● Java ● Dylan ● ... ● A lot of sample code online, some nice books ● Please: Not yet another new desktop client. EuroOsconk: Jabber – Florian Holzhauer - #19
  • 20. ?xml version='1.0'?> <stream:stream to='jabber.ccc.de' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/stream Hey, wake up! It's over. ● Slides + Urls: http://fholzhauer.de/docs/euos2006/ ● Any questions? ● Feel free to contact me via jabber: ● fh@jabber.ccc.de EuroOsconk: Jabber – Florian Holzhauer - #20