Using Asterisk and
XMPP to provide
greater tools to
your customers
and your users
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Who am I ?
▸ SysAdmin
▸ Working with Asterisk and XMPP since 2006
▸ XSF (XMPP Standards Foundation) member
since this year.
▸ For several years working on improve the
user experience
@mhterres
https://github.com/mhterres/
https://bitbucket.org/mhterres/
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Why XMPP ?
▸ Open
▸ Standard
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Why XMPP ?
▸ Open
▸ Standard
▸ Decentralized
▸ Secure
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Why XMPP ?
▸ Open
▸ Standard
▸ Decentralized
▸ Secure
▸ Extensible (XEPs)
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Why XMPP ?
▸ Open
▸ Standard
▸ Decentralized
▸ Secure
▸ Extensible (XEPs)
▸ Flexible
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Why XMPP ?
▸ Open
▸ Standard
▸ Decentralized
▸ Secure
▸ Extensible (XEPs)
▸ Flexible
▸ Most companies already use it
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Why XMPP ?
▸ Open
▸ Standard
▸ Decentralized
▸ Secure
▸ Extensible (XEPs)
▸ Flexible
▸ Most companies already use it
Do you want to contribute or become a XSF member?
Contact me.
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
XMPP
▸ MUC (Multi User Chat)
▹ XEP0045
▸ PubSub (Publish-Subscribe)
▹ XEP0060
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
XMPP
▸ MUC (Multi User Chat)
▹ XEP0045
▸ PubSub (Publish-Subscribe)
▹ XEP0060
▸ Servers
▹ Openfire
▹ Ejabberd
▹ MongooseIM
▹ Prosody
▹ Tigase
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Asterisk and XMPP
▸ Asterisk version 1.4 (2006)
▹ JabberSend
▹ JabberReceive
▹ JabberStatus
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Asterisk and XMPP
▸ Asterisk version 1.4 (2006)
▹ JabberSend
▹ JabberReceive
▹ JabberStatus
▸ Asterisk version 1.8 (2010)
▹ JabberJoin/JabberLeave
▹ JabberSendGroup
▹ PubSub support (Device State and MWI)
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Asterisk and XMPP
▸ Asterisk version 1.4 (2006)
▹ JabberSend
▹ JabberReceive
▹ JabberStatus
▸ Asterisk version 1.8 (2010)
▹ JabberJoin/JabberLeave
▹ JabberSendGroup
▹ PubSub support (Device State and MWI)
▸ Asterisk version 10 and above (2011)
▹ res_xmpp
▹ Contexts
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Asterisk and XMPP - CallerID
▸ Earlier Caller identification
▸ Version 1.4 and above
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
CallerID and Queues
▸ Sends CallerID information to all unpaused
queue members
▸ Sends CallerID information to MUC
▸ Other uses: integration with ticket system
▸ MUC support: Asterisk 1.8 and above
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
CallerID and Queues - example
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
AstDemo - the first PoC
▸ First PoC
▸ Integration using contexts
▸ AGI used to process XMPP messages and
responses
▸ A different approach to achieve the same
goals
▸ Asterisk 10 and above
XMPP and Asterisk - part 1: http://goo.gl/y3eEot
XMPP and Asterisk - part 2: http://goo.gl/TSCV2X
AstDemo: http://goo.gl/x4YznS
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
XyBot - PoC
▸ Features available:
▹ call
▹ enter queue
▹ sms
▸ Monitoring features
▸ Easy to add new features and monitoring
alerts
▸ Asterisk 11 and above
▸ What else?
▹ Call your customers using your own
systems data
▹ Anything you want
More informations: http://goo.gl/SsrrWB
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
IVR Data Delivery - PoC
▸ Allows integration with other systems
▹ HelpDesk systems
▹ Custom systems
▸ Use of XMPP PubSub (XEP0060)
▸ XMPP libs available for most languages
▸ ARI - the Statis App (queueapp.py)
▸ Asterisk 13 and above
More informations: http://goo.gl/E7y08V
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Questions ???
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
Thanks !!!
You can find me at
xmpp:mhterres@mundoopensource.com.br
mailto: mhterres@gmail.com
You can also access my website:
https://www.mundoopensource.com.br
Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres

AstriCon 2016 - Using Asterisk and XMPP to provide greater tools to your customers and your users

  • 1.
    Using Asterisk and XMPPto provide greater tools to your customers and your users Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 2.
    Who am I? ▸ SysAdmin ▸ Working with Asterisk and XMPP since 2006 ▸ XSF (XMPP Standards Foundation) member since this year. ▸ For several years working on improve the user experience @mhterres https://github.com/mhterres/ https://bitbucket.org/mhterres/ Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 3.
    Why XMPP ? ▸Open ▸ Standard Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 4.
    Why XMPP ? ▸Open ▸ Standard ▸ Decentralized ▸ Secure Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 5.
    Why XMPP ? ▸Open ▸ Standard ▸ Decentralized ▸ Secure ▸ Extensible (XEPs) Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 6.
    Why XMPP ? ▸Open ▸ Standard ▸ Decentralized ▸ Secure ▸ Extensible (XEPs) ▸ Flexible Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 7.
    Why XMPP ? ▸Open ▸ Standard ▸ Decentralized ▸ Secure ▸ Extensible (XEPs) ▸ Flexible ▸ Most companies already use it Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 8.
    Why XMPP ? ▸Open ▸ Standard ▸ Decentralized ▸ Secure ▸ Extensible (XEPs) ▸ Flexible ▸ Most companies already use it Do you want to contribute or become a XSF member? Contact me. Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 9.
    XMPP ▸ MUC (MultiUser Chat) ▹ XEP0045 ▸ PubSub (Publish-Subscribe) ▹ XEP0060 Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 10.
    XMPP ▸ MUC (MultiUser Chat) ▹ XEP0045 ▸ PubSub (Publish-Subscribe) ▹ XEP0060 ▸ Servers ▹ Openfire ▹ Ejabberd ▹ MongooseIM ▹ Prosody ▹ Tigase Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 11.
    Asterisk and XMPP ▸Asterisk version 1.4 (2006) ▹ JabberSend ▹ JabberReceive ▹ JabberStatus Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 12.
    Asterisk and XMPP ▸Asterisk version 1.4 (2006) ▹ JabberSend ▹ JabberReceive ▹ JabberStatus ▸ Asterisk version 1.8 (2010) ▹ JabberJoin/JabberLeave ▹ JabberSendGroup ▹ PubSub support (Device State and MWI) Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 13.
    Asterisk and XMPP ▸Asterisk version 1.4 (2006) ▹ JabberSend ▹ JabberReceive ▹ JabberStatus ▸ Asterisk version 1.8 (2010) ▹ JabberJoin/JabberLeave ▹ JabberSendGroup ▹ PubSub support (Device State and MWI) ▸ Asterisk version 10 and above (2011) ▹ res_xmpp ▹ Contexts Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 14.
    Asterisk and XMPP- CallerID ▸ Earlier Caller identification ▸ Version 1.4 and above Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 15.
    CallerID and Queues ▸Sends CallerID information to all unpaused queue members ▸ Sends CallerID information to MUC ▸ Other uses: integration with ticket system ▸ MUC support: Asterisk 1.8 and above Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 16.
    CallerID and Queues- example Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 17.
    AstDemo - thefirst PoC ▸ First PoC ▸ Integration using contexts ▸ AGI used to process XMPP messages and responses ▸ A different approach to achieve the same goals ▸ Asterisk 10 and above XMPP and Asterisk - part 1: http://goo.gl/y3eEot XMPP and Asterisk - part 2: http://goo.gl/TSCV2X AstDemo: http://goo.gl/x4YznS Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 18.
    XyBot - PoC ▸Features available: ▹ call ▹ enter queue ▹ sms ▸ Monitoring features ▸ Easy to add new features and monitoring alerts ▸ Asterisk 11 and above ▸ What else? ▹ Call your customers using your own systems data ▹ Anything you want More informations: http://goo.gl/SsrrWB Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 19.
    IVR Data Delivery- PoC ▸ Allows integration with other systems ▹ HelpDesk systems ▹ Custom systems ▸ Use of XMPP PubSub (XEP0060) ▸ XMPP libs available for most languages ▸ ARI - the Statis App (queueapp.py) ▸ Asterisk 13 and above More informations: http://goo.gl/E7y08V Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 20.
    Questions ??? Marcelo H.Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres
  • 21.
    Thanks !!! You canfind me at xmpp:mhterres@mundoopensource.com.br mailto: mhterres@gmail.com You can also access my website: https://www.mundoopensource.com.br Marcelo H. Terres (mhterres@gmail.com) - https://www.mundoopensource.com.br @mhterres