[Freeswitch-users] mod_xml_curl - directory only

Michael Jerris mike at jerris.com
Fri Dec 23 02:21:00 MSK 2016


check out mod_dptools.c:4231

this is the code that actually processes the return

looks like it looks for dial-string and params prefixed with “dial-var-“  .. if you don’t have any vars you are inserting in you don’t need those


> On Dec 22, 2016, at 6:43 AM, Vallimamod Abdullah <vma at vallimamod.org> wrote:
> 
> Well, a safe bet is to return the complete user document (as in your first example) in both cases to allow it to be fully cached.
> 
> Also, you need to test but I am not sure if just returning the domain dial-string param will work in the user_call case. The code specifically requests the user element and the group and domain params/vars are merged to it during lookup.
> 
> Best Regards,
> -- 
> Vallimamod Abdullah
> vma at vallimamod.org
> .
> 
> 
>> On 22 Dec 2016, at 12:11, Tihomir Culjaga <tculjaga at gmail.com> wrote:
>> 
>> 
>> 
>> On 22 December 2016 at 11:53, Vallimamod Abdullah <vma at vallimamod.org> wrote:
>> Hi,
>> 
>>> purpose=null, action=user_call - what do i send here ?
>> 
>> This is called when you dial with the user channel (user/agent1) to retrieve the dial-string data. So you need to send user info here.
>> 
>> 
>> so in other words all i need here, is to return dial-string ?
>> 
>> in my case: 
>> 
>> <document type="freeswitch/xml">
>> <section name="directory">
>> <domain name="$${domain}">
>> <params>
>> <param name="dial-string" value="{^^:sip_invite_domain=${dialed_domain}:presence_id=${dialed_user}@${dialed_domain}}${sofia_contact(*/${dialed_user}@${dialed_domain})},${verto_contact(${dialed_user}@${dialed_domain})}"/>
>> </params>
>> </domain>
>> </section>
>> </document>
>> 
>> 
>>> purpose=null, reverse-auth-lookup - what do i return here ?
>> 
>> This is called when authenticating the user to retrieve auth related params (password, a1-hash, auth-acl, etc.) So you also need to send user info here.
>> 
>> 
>> cool, i can return just a1-hash and see if it works :=)
>> 
>> 
>> 
>> 
>> 
>> Best Regards,
>> --
>> Vallimamod Abdullah
>> vma at vallimamod.org
>> .
>> 
>>> On 22 Dec 2016, at 10:28, Tihomir Culjaga <tculjaga at gmail.com> wrote:
>>> 
>>> Hello everyone,
>>> 
>>> i'd like to use mod_xml_curl for serving directory.
>>> 
>>>    <binding name="my_registrations">
>>>      <param name="gateway-url" value="http://192.168.5.150:8080/getuser" bindings="directory"/>
>>>      <param name="method" value="GET"/>
>>>      <param name="timeout" value="10"/>
>>>    </binding>
>>> 
>>> ...and as far as registrations ( SIP or verto ) it is ok, meaning my devices do register.
>>> 
>>> 
>>> i return something like this:
>>> 
>>> <document type="freeswitch/xml">
>>> <section name="directory">
>>> <domain name="$${domain}">
>>> <params>
>>> <param name="dial-string" value="{^^:sip_invite_domain=${dialed_domain}:presence_id=${dialed_user}@${dialed_domain}}${sofia_contact(*/${dialed_user}@${dialed_domain})},${verto_contact(${dialed_user}@${dialed_domain})}"/>
>>> <param name="jsonrpc-allowed-methods" value="verto"/>
>>> </params>
>>> <groups>
>>> <group name="nexios-cc">
>>> <users>
>>> <user id="agent1" number-alias="1031" cacheable="10000">
>>> <params>
>>> <param name="a1-hash" value="f40e695952e177a9224ca3f54bf6ec5a"/>
>>> </params>
>>> <variables>
>>> <variable name="user_context" value="default"/>
>>> <variable name="effective_caller_id_name" value="EXT 1031"/>
>>> <variable name="effective_caller_id_number" value="1031"/>
>>> </variables>
>>> </user>
>>> </users>
>>> </group>
>>> </groups>
>>> </domain>
>>> </section>
>>> </document>
>>> 
>>> 
>>> but when i place a call i get a request with action=user_call with no other info than user xxx is trying to place an outgoing call without saying where :=)
>>> 
>>> section=directory&tag_name=domain&key_name=name&key_value=192.168.5.150&Event-Name=REQUEST_PARAMS&Core-UUID=15731076-c3d5-4ad6-8518-41b9c42140be&FreeSWITCH-Hostname=bladeranger&FreeSWITCH-Switchname=bladeranger&FreeSWITCH-IPv4=192.168.5.150&FreeSWITCH-IPv6=%3A%3A1&Event-Date-Local=2016-12-22%2009%3A44%3A56&Event-Date-GMT=Thu,%2022%20Dec%202016%2008%3A44%3A56%20GMT&Event-Date-Timestamp=1482396296153258&Event-Calling-File=mod_dptools.c&Event-Calling-Function=user_outgoing_channel&Event-Calling-Line-Number=4129&Event-Sequence=7368&as_channel=true&action=user_call&originate_timeout=0&origination_uuid=bf0fd829-56df-48c4-8112-41ba777ee91d&ignore_early_media=true&last_route=true&origination_caller_id_number=xxxxxxxx&origination_caller_id_name=xxxxxxxx&key=id&user=agent1&domain=192.168.5.150
>>> 
>>> 
>>> 
>>> So, here i got few questions :=)
>>> 
>>>      • purpose=null, action=sip_auth - i send user info here (SIP)
>>>      • purpose=null, action=jsonrpc-authenticate - i send user info here (Verto)
>>>      • purpose=null, action=user_call - what do i send here ?
>>>      • purpose=null, reverse-auth-lookup - what do i return here ?
>>>      • purpose=gateways - i will send "not found"
>>>      • purpose=network-list - i will send "not found"
>>>      • purpose=publish-vm - i will send "not found"
>>> 
>>> 
>>> Thanks to everyone who is going to enlight these few things above :=)
>>> 
>>> regards,
>>> Tihomir.
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>> 
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://confluence.freeswitch.org
>>> http://www.cluecon.com
>>> 
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>> 
>> 
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>> 
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://confluence.freeswitch.org
>> http://www.cluecon.com
>> 
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>> 
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services: 
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>> 
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://confluence.freeswitch.org
>> http://www.cluecon.com
>> 
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
> 
> 
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services: 
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
> 
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://confluence.freeswitch.org
> http://www.cluecon.com
> 
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org




Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list