Responding to incoming xmpp/jabber messages

I have not found anything in the documentation or forums on how incoming xmpp messages can be handled. The only way to use jabbersend/receive seems to be within the dialplan of an existing voicecall. I would like to be able to send my asterisk server a xmpp message and begin a conversation with it. When I enter “xmpp set debug on” into the CLI and I send a xmpp message to the asterisk associated google talk account, I see the following in my CLI output:

<— XMPP received from ‘xxxgmailcom’ —>
hi<met:google-mail-signature xmlns:met=“google:metadata”>_xNiTclUQbUIuU_qMylIo4E8M1g</met:google-mail-signature><cha:active xmlns:cha=“http://jabber.org/protocol/chatstates”/><nos:x value=“disabled” xmlns:nos=“google:nosave”/><arc:record otr=“false” xmlns:arc=“http://jabber.org/protocol/archive”/>
<------------->

<— XMPP received from ‘xxxgmailcom’ —>
<cha:inactive xmlns:cha=“http://jabber.org/protocol/chatstates”/>
<------------->

How can I set up asterisk to answer this incoming message and send back a reply? I would like to begin an interactive session…

Which version. Earlier versions (e.g. 1.6) do not support out of dialogue messages. Later ones do, but only, I think for SIP.

I’m running 11.5.0 using AsteriskNow. I don’t expect audio to be part of the calls at all. They will be just jabber text exchanges.

Try wiki.asterisk.org/wiki/display/ … essageSend

I’m not sure how I can use that to respond to incoming messages. My concern is situations where there is no existing call, and an incoming xmpp message comes into the asterisk server from one of the users on it’s buddy list. How can I have asterisk respond to this event and turn it into a call? I basically want asterisk to take on the role of an xmpp robot.

Yes, that the case for that application you need to read it in order to understand the way it works, if youare looking for complete example there is one on voip-info.org

for anyone interested in the answer to this, it is all about setting these variables in xmpp.conf

sendtodialplan=yes ;; this will take send unsolicited incoming xmpp messages into the dialplan
context=context ;; this sets the context those incoming messages are sent to