VoIP Mailing List Archives
Mailing list archives for the VoIP community |
|
View previous topic :: View next topic |
Author |
Message |
ctalle at voiceway.ca Guest
|
Posted: Wed Sep 17, 2008 5:45 pm Post subject: [Freeswitch-users] Alternative to directory lookup using mod |
|
|
Just wondering...
I noticed that with xml_curl temp files are being created for each
request - this doesn't really help for higher request volumes.
Do you know of any way of updating the FS xml tree (let's say the
directory node for one domain) without curl?
Cristian
Peter P GMX wrote:
Quote: | Just to mention:
I figured out that, if you do an xml_curl request it tries to reply
based on the dynamic XML answer. If the answer is wrong if takes the
content of the config files.
This may be the reason why your standard numbers from the config files
1000, 1001, ... work and carl doesn't.
Best regards
Peter
Cristian Talle schrieb:
Quote: | Thank you veeery much, I'll give it a try!
Best,
Cristian
Peter P GMX wrote:
Quote: | Hello,
I have done it the following way:
xml_curl.conf.xml:
<configuration name="xml_curl.conf" description="cURL XML Gateway">
<bindings>
<binding name="example">
<param name="gateway-url"
value="http://192.168.0.35:3000/xml_curls/directory"
bindings="configuration|dialplan|directory"/>
</binding>
</bindings>
</configuration>
My Ruby on Rails server is listening on Port 3000. But https works also
(but very very slow).
If a phone (e.g. 1002) tries to register I answer with
<document type="freeswitch/xml">
<section name="directory">
<domain name="my.domain">
<user id="1002">
<params>
<param name="password" value="xxxx"/>
</params>
<variables>
<variable name="accountcode" value="1002"/>
<variable name="user_context" value="default"/>
<variable name="effective_caller_id_name" value="Extension 1002"/>
<variable name="effective_caller_id_number" value="1002"/>
</variables>
</user>
</domain>
</section>
</document>
Hope this helps
Best regards
Peter
Cristian Talle schrieb:
Quote: | Hi Carl,
I am experiencing a similar problem, have you found any solution so far?
Thank you,
Cristian Talle
Quote: | I wonder if anybody could provide a complete set of configuration files for
a working xml_curl user directory lookup.
I have been trying using the default set of configuration files, added the
xml_curl module loading and modified the configuration like this:
<configuration name="xml_curl.conf" description="cURL XML Gateway">
<bindings>
<binding name="dialplan fetcher">
<param name="gateway-url" value="
http://172.16.26.10/apache2-default/dialplan.php" <http://172.16.26.10/apache2-default/dialplan.php%22> bindings="dialplan"/>
</binding>
<binding name="directory fetcher">
<param name="gateway-url" value="
http://172.16.26.10/apache2-default/directory.php" <http://172.16.26.10/apache2-default/directory.php%22> bindings="directory"/>
</binding>
</bindings>
</configuration>
Both scripts just dump the expected XML result:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="freeswitch/xml">
<section name="dialplan" description="example_curl_dialplan">
<context name="default">
<extension name="curl_test">
<condition field="destination_number" expression="^999999999$">
<action application="answer"/>
<action application="send_display" data="Echo Test"/>
<action application="echo"/>
</condition>
</extension>
</context>
</section>
</document>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="freeswitch/xml">
<section name="directory" description="example_curl_directory">
<domain name="172.26.16.10">
<user id="carl">
<params>
<param name="password" value="1234"/>
</params>
</user>
</domain>
</section>
</document>
The sofia-sip parameter "accept-blind-reg" is set to false.
When using one of the default users (1000), I can register and the xml_curl
dialplan lookup works like expected. However, when trying to register as
user carl,
I can see that the XML is received by the xml_curl interface, but sofia-sip
complains that it cannot find the user. Here is a part of the console
output:
mod_xml_curl.c:194 xml_url_fetch() XML response is in
/tmp/6053a796-2bdb-11dd-9449-17a3c8baef50.tmp.xml
sofia_reg.c:1061 sofia_reg_parse_auth() can't find user [carl at 172.16.26.10 <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users>]
When using the xml_locate cli command, I get a similar result:
Quote: | / xml_locate directory domain name 172.16.26.10
| /mod_xml_curl.c:194 xml_url_fetch() XML response is in
/tmp/93d6019a-2bdb-11dd-9449-17a3c8baef50.tmp.xml
API CALL [xml_locate(directory domain name 172.16.26.10)] output:
<domain name="172.16.26.10">
### contents of local XML file (users 1000 and up)
</domain>
It fetches the XML from the webserver and dumps the contents of the local
XML files. Disabling the "directory" section in the default freeswitch.xml
file does not help,
as I initially thought it might be caused by the duplicate domain names.
I hope someone could help out here.
| _______________________________________________
Freeswitch-users mailing list
Freeswitch-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
| _______________________________________________
Freeswitch-users mailing list
Freeswitch-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
| ------------------------------------------------------------------------
_______________________________________________
Freeswitch-users mailing list
Freeswitch-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
|
_______________________________________________
Freeswitch-users mailing list
Freeswitch-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
|
_______________________________________________
Freeswitch-users mailing list
Freeswitch-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org |
|
Back to top |
|
|
brian at freeswitch.org Guest
|
Posted: Wed Sep 17, 2008 5:47 pm Post subject: [Freeswitch-users] Alternative to directory lookup using mod |
|
|
Are those temp files not going away?
/b
On Sep 17, 2008, at 5:43 PM, Cristian Talle wrote:
Quote: | Just wondering...
I noticed that with xml_curl temp files are being created for each
request - this doesn't really help for higher request volumes.
Do you know of any way of updating the FS xml tree (let's say the
directory node for one domain) without curl?
Cristian
|
_______________________________________________
Freeswitch-users mailing list
Freeswitch-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org |
|
Back to top |
|
|
anthony.minessale at g... Guest
|
Posted: Wed Sep 17, 2008 8:43 pm Post subject: [Freeswitch-users] Alternative to directory lookup using mod |
|
|
if you say inhale the xml into memory and the sever goes haywire and sends you 2 gigs out output you are in for a treat.
if you can get enough call volume on one box where the disk i/o of xml_curl even shows up on the map in relation to all the rtp etc, we've won.
On Wed, Sep 17, 2008 at 6:00 PM, Cristian Talle <ctalle@voiceway.ca (ctalle@voiceway.ca)> wrote:
--
Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
AIM: anthm
MSN:anthony_minessale@hotmail.com ([email]MSN%3Aanthony_minessale@hotmail.com[/email])
GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com ([email]PAYPAL%3Aanthony.minessale@gmail.com[/email])
IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference
sip:888@conference.freeswitch.org ([email]sip%3A888@conference.freeswitch.org[/email])
iax:guest@conference.freeswitch.org/888
googletalk:conf+888@conference.freeswitch.org ([email]googletalk%3Aconf%2B888@conference.freeswitch.org[/email])
pstn:213-799-1400 |
|
Back to top |
|
|
mike at jerris.com Guest
|
Posted: Thu Sep 18, 2008 6:05 pm Post subject: [Freeswitch-users] Alternative to directory lookup using mod |
|
|
Do you have any performance tests to show the difference?
Mike
On Sep 18, 2008, at 6:50 PM, Cristian Talle wrote:
Quote: | I gave it a try though... and it works nicely (at least for directory entries for now). I've added 3 more commands to xml_curl: cache_on, cache_off and cache_delete_key.
- cache_on - enables caching: it will store in a switch_hash_t structure all xml strings returned by curl, using <username>@<realm> as a key (since we're talking directory only in this example). The same key is looked up every time the xml is requested for that user/realm and the code returns an xml structure created using switch_parse_xml_from_str().
- cache_off - switches back to the original behavior and clears the hash.
- cache_delete_key <key> - will invalidate the cache entry so that next time it is reloaded by curl.
considering a 500 bytes - 1K string for each profile, you can cache 10000 user profiles in ~10M (considering we're storing the char* s)
please see a sample console output,with a terminal registering every 25 seconds
============================================================================
freeswitch@localhost.localdomain (freeswitch@localhost.localdomain)> 2008-09-18 18:26:19 [CONSOLE] mod_xml_curl.c:363 xml_url_fetch() XML response is in /tmp/d0c586a8-85d0-11dd-838c-5148f6e85b7b.tmp.xml
freeswitch@localhost.localdomain (freeswitch@localhost.localdomain)> xml_curl cache_on
API CALL [xml_curl(cache_on)] output:
OK
freeswitch@localhost.localdomain (freeswitch@localhost.localdomain)> 2008-09-18 18:26:44 [CONSOLE] mod_xml_curl.c:245 xml_url_fetch() Key is not in cache [1039@192.168.1.225 (1039@192.168.1.225)].
2008-09-18 18:26:45 [CONSOLE] mod_xml_curl.c:363 xml_url_fetch() XML response is in /tmp/e00c7ae0-85d0-11dd-838c-5148f6e85b7b.tmp.xml
2008-09-18 18:27:10 [CONSOLE] mod_xml_curl.c:231 xml_url_fetch() Using xml from cache: 1039@192.168.1.225 (1039@192.168.1.225)
2008-09-18 18:27:35 [CONSOLE] mod_xml_curl.c:231 xml_url_fetch() Using xml from cache: 1039@192.168.1.225 (1039@192.168.1.225)
freeswitch@localhost.localdomain (freeswitch@localhost.localdomain)> xml_curl cache_delete_key 1039@192.168.1.225 (1039@192.168.1.225)
2008-09-18 18:27:42 [NOTICE] mod_xml_curl.c:128 xml_curl_function() Removing value for [1039@192.168.1.225 (1039@192.168.1.225)]
API CALL [xml_curl(cache_delete_key 1039@192.168.1.225 (1039@192.168.1.225))] output:
OK
2008-09-18 18:28:01 [CONSOLE] mod_xml_curl.c:245 xml_url_fetch() Key is not in cache [1039@192.168.1.225 (1039@192.168.1.225)].
2008-09-18 18:28:01 [CONSOLE] mod_xml_curl.c:363 xml_url_fetch() XML response is in /tmp/0d729f00-85d1-11dd-838c-5148f6e85b7b.tmp.xml
freeswitch@localhost.localdomain (freeswitch@localhost.localdomain)> xml_curl cache_off
2008-09-18 18:28:07 [NOTICE] mod_xml_curl.c:102 xml_curl_function() cleaning up directory cache
API CALL [xml_curl(cache_off)] output:
OK
========================================================================
|
|
|
Back to top |
|
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|