[Freeswitch-users] curl_xml

Vitalii Colosov vetali100 at gmail.com
Mon May 24 12:45:59 PDT 2010


Sorry, I never used rubby, no help from my side here...

This is my XML response, it's not so long to put it in pastebin, also I
never used pastebin yet:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="freeswitch/xml">
  <section name="directory">
    <domain name="$${domain}">
      <params>
        <param name="dial-string" value="{presence_id=${dialed_user}@
${dialed_domain}}${sofia_contact(${dialed_user}@${dialed_domain})}"/>
      </params>
      <groups>
        <group name="default">
          <users>
            <user id="1000">
              <params>
                <param name="a1-hash" value="somehashvalue"/>
                <param name="vm-a1-hash" value="somehashvalue"/>
              </params>
              <variables>
                <variable name="user_context" value="default"/>
                <variable name="accountcode" value="1000"/>
              </variables>
            </user>
          </users>
        </group>
      </groups>
    </domain>
  </section>
</document>

Regards,
Vitalie

2010/5/24 Erwin Davis <davis.erwin at gmail.com>

> Hi, Vitalli,
>
> Thanks for your PHP code. Unfortunately, I can't run that code because my
> project is in rails.
> But I didnot see the difference between you code and mine. What does the
> xml log file look like when you turn on "xml_curl debug_on"? Could you cut
> and paste them into  freeswitch pastebin?
>
> My code is cloned from
> http://wiki.freeswitch.org/wiki/Mod_xml_curl_Ruby_directory_example. I am
> not sure that the xml output may cause some problem.
>
> When I type "find_use_xml  id 1018 192.168.1.31", the FS ignored the
> response from web server. Instead, it retrieve the info from the local
> directory.
>
> freeswitch at proxy1.voiceserver.com> find_user_xml id 1018  192.168.1.31
> 2010-05-24 15:12:12.239449 [CONSOLE] mod_xml_curl.c:299 XML response is in
> /usr/local/freeswitch/
> scripts803ca405-c463-4deb-8121-982e1251831a.tmp.xml
> API CALL [find_user_xml(id 1018  192.168.1.31)] output:
> <user id="1018">
>       <params>
>           <param name="password" value="1234"></param>   <<<<===== the
> server response with "1018", "1234" is the local default setting
>
>           <param name="vm-password" value="1018"></param>
>
>     </params>
>
>       <variables>
>           <variable name="toll_allow"
> value="domestic,international,local"></variable>
>
>           <variable name="accountcode" value="1018"></variable>
>
>
>           <variable name="user_context" value="default"></variable>
>
>           <variable name="effective_caller_id_name" value="Extension
> 1018"></variable>
>
>           <variable name="effective_caller_id_number"
> value="1018"></variable>
>
>           <variable name="outbound_caller_id_name"
> value="MyPBX"></variable>
>
>           <variable name="outbound_caller_id_number"
> value="0000000000"></variable>
>
>           <variable name="callgroup" value="techsupport"></variable>
>
>     </variables>
>
>   </user>
>
> Below is the rails code to output the xml response.
> ==============================================
> ========
>
>   def directory
>
>     if params['user'].nil? || params['user'].empty?
>       ##if not looking for a user info, send 404 Not Found
>       @out_xml = Output404NotFound()
>     else
>       @username = params['user'].to_s
>       puts "username = " + @username
>       @domain = params['domain'].to_s
>       puts params
>       @dir=Directory.find_by_effective_caller_id_number(@username)
>       puts @dir
>       if @dir.nil?
>         @out_xml = Output404NotFound()
>       else
>         @out_xml = OutputXMLResponse()
>       end
>     end
>     puts "reply for directory query: " + @out_xml + "\n"
>   end
>
> private
>
>   def Output404NotFound
>     xml_text = "<?xml version=\"1.0\" encoding=\"UTF-8\"
> standalone=\"no\"?>
>                  <document type=\"freeswitch/xml\">
>                      <section name=\"result\">
>                           <result status=\"not found\" />
>                      </section>
>                  </document> "
>     return xml_text
>   end
>
>   def OutputXMLResponse
>     xml_text =
>         "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>
>            <document type=\"freeswitch/xml\">
>              <section name=\"directory\" description=\"User Directory\">
>
>                  <domain name=\"#{@domain}\">
>                       <params>
>                          <param name=\"dial-string\"
> value=\"{presence_id=${dialed_user}@
> ${dialed_domain}}${sofia_contact(${dialed_user}@${dialed_domain})}\"/>
>                       </params>
>
>                        <groups>
>                            <group name=\"default\">
>                                <users>
>                                   <user id=\"#{@username}\">
>                                      <params>
>                                         <param name=\"password\" value=\""
> + @dir.password + "\"/>
>                                      </params>
>
>                                   </user>
>                                </users>
>                            </group>
>                          </groups>
>                    </domain>
>              </section>
>          </document> "
>      puts "reply for directory query: " + xml_text + "\n"
>      return xml_text
>   end
>
>
>
>
> On Mon, May 24, 2010 at 8:38 AM, Vitalii Colosov <vetali100 at gmail.com>wrote:
>
>> Just to avoid any misunderstanding - this is to check all other things
>> around freeswitch configuration.
>>
>> If this will work, it will be very easy to add database lookup for the
>> user trying to register:
>>
>>
>> $user = $_POST['user'];
>> $query="select password from your_users_table where user ='$user'";
>> $result=mysqli_query($db_connection, $query);
>>
>> ...get user and password from the result
>>
>> And then use $user and $password variables instead of hard-coded "1018",
>> "1018" in the code I provided.
>>
>> Really hope this helps, it works for me.
>>
>> Regards,
>> Vitalie
>>
>>
>> 2010/5/24 Vitalii Colosov <vetali100 at gmail.com>
>>
>>> Sorry there was an else related to the missing entry, i removed it.
>>>
>>> Please try another one.
>>>
>>> 2010/5/24 Vitalii Colosov <vetali100 at gmail.com>
>>>
>>> Please try to use my attached php script, if you can.
>>>>
>>>> I changed it to fit your data (user 1018, pass: 1018), but I did not
>>>> check for any syntax error (hope it does not have :-) ).
>>>>
>>>> Please reply back on result.
>>>>
>>>> Regards,
>>>>
>>>> Vitalie
>>>>
>>>>
>>>> 2010/5/24 Erwin Davis <davis.erwin at gmail.com>
>>>>
>>>>> yeah, my code replied with line 29-46. I donot know where the rest of
>>>>> html code was generated.
>>>>>
>>>>> On Mon, May 24, 2010 at 10:34 AM, Milena <testeador01 at gmail.com>wrote:
>>>>>
>>>>>> Hello,
>>>>>> You're not meant to send a whole website full of html tags as a
>>>>>> response.
>>>>>> Just reply the part of the lines 29 - 46 on your pastebin and get rid
>>>>>> of the rest.
>>>>>>
>>>>>>
>>>>>> 2010,
>>>>>> /5/24 Erwin Davis <davis.erwin at gmail.com>
>>>>>>
>>>>>> Hi, I am stuck, My console log is in
>>>>>>> http://pastebin.freeswitch.org/13030 and my xml log is in
>>>>>>> http://pastebin.freeswitch.org/13029.  I guess that the problem
>>>>>>> should be pretty small but I just can not figure it out. -:(  Thanks for
>>>>>>> your help.
>>>>>>>
>>>>>>> On Mon, May 24, 2010 at 8:12 AM, Vitalii Colosov <
>>>>>>> vetali100 at gmail.com> wrote:
>>>>>>>
>>>>>>>> Hi Erwin,
>>>>>>>> Maybe you need to add the first line <?xml version="1.0"
>>>>>>>> encoding="UTF-8" standalone="no"?>
>>>>>>>>
>>>>>>>> This is what I have and it works perfectly, tested right now:
>>>>>>>>
>>>>>>>> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
>>>>>>>> <document type="freeswitch/xml">
>>>>>>>>   <section name="directory">
>>>>>>>>     <domain name="$${domain}">
>>>>>>>>       <params>
>>>>>>>>         <param name="dial-string"
>>>>>>>> value="{presence_id=${dialed_user}@
>>>>>>>> ${dialed_domain}}${sofia_contact(${dialed_user}@
>>>>>>>> ${dialed_domain})}"/>
>>>>>>>>       </params>
>>>>>>>>       <groups>
>>>>>>>>         <group name="default">
>>>>>>>>           <users>
>>>>>>>>             <user id="1000">
>>>>>>>>               <params>
>>>>>>>>                 <param name="a1-hash" value="somehashvalue"/>
>>>>>>>>                 <param name="vm-a1-hash" value="somehashvalue"/>
>>>>>>>>               </params>
>>>>>>>>               <variables>
>>>>>>>>                 <variable name="user_context" value="default"/>
>>>>>>>>                 <variable name="accountcode" value="1000"/>
>>>>>>>>               </variables>
>>>>>>>>             </user>
>>>>>>>>           </users>
>>>>>>>>         </group>
>>>>>>>>       </groups>
>>>>>>>>     </domain>
>>>>>>>>   </section>
>>>>>>>> </document>
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Vitalie
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> 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
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> 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
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> 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
>>>>>
>>>>>
>>>>
>>>
>>
>> _______________________________________________
>> 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
>>
>>
>
> _______________________________________________
> 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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20100524/21a96e10/attachment-0001.html 


More information about the FreeSWITCH-users mailing list