[Freeswitch-users] How to originate a session from outside

Adeel Ansari adeel.gnome at gmail.com
Tue Sep 2 19:18:35 PDT 2008


Glad it worked for you. Actually, its not really a big deal in changing that
example on the wiki. But IMO, the example should show exactly the concerned
thing, just like any other example over there. In your example you got
separate methods to make a call and to set the configuration, thats good. In
fact, we should make the code clear, readable, and maintainable. But here
its not the concern. So, I came up with the shortest code snippet, as
possible. Moreover, the example is showing one more thing, if you notice,
that is Java is as good as anyother language, if not superior. And we can do
things in Java very precisely with a few line of codes.

P.S. Setters should not return any thing, at least in Java Naming
Convention. You should rename your method "setConfig" to "getConfig", or
comeup with something else.

On Tue, Sep 2, 2008 at 8:22 PM, Gayatri Kulkarni <xtpl.gayatri at gmail.com>wrote:

>  Guys I made a stupid mistake again
> guess what - I didn't specify the port number in the URL !!!
> anyways, the code worked
> the exception was because I was using an older version of XMLRPC API.
>
> Anyways, Adeel you can modify the Java example on the wiki with this one. I
> think this one's better than what you already have posted there - if you
> don't mind that is!
> I don't mean to offend you.
>
> Thanks a lot anyways!
>
> Regards,
> Gayatri Kulkarni
>
> -----
> Whenever you find yourself on the side of the majority, it is time to pause
> and reflect.
>
>  *From:* Gayatri Kulkarni <xtpl.gayatri at gmail.com>
> *Sent:* Tuesday, September 02, 2008 4:29 AM
> *To:* freeswitch-users at lists.freeswitch.org
> *Subject:* Re: [Freeswitch-users] How to originate a session from outside
>
> Hey Adeel,
>
> Remember, *originate sofia/internal/1001 &bridge(sofia/internal/1003*) had
> worked the other day?
>
> Well, now it isn't working!
> FS is still saying  No_ROUTE_DESTINATION
> And, it is also giving me a SAXParseException!
>
> You want to have a look at the code?
> Here it is:
>
> /**
>  *
>  */
> package localcall;
>
> import java.lang.String;
> import java.net.*;
>
> import org.apache.xmlrpc.XmlRpcException;
> import org.apache.xmlrpc.client.XmlRpcClient;
> import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
>
> /**
>  * @author Gayatri Kulkarni
>  *
>  */
> public class LocalCall {
>
>  /**
>   *
>   */
>  public LocalCall() {
>   // TODO Auto-generated constructor stub
>  }
>
>  public XmlRpcClientConfigImpl setConfig(){
>   XmlRpcClientConfigImpl conf = new XmlRpcClientConfigImpl();
>   String server = "http://192.168.10.36/RPC2";
>   String uname = "freeswitch";
>   String pswd = "works";
>   try {
>    URL server_url = new URL(server);
>    conf.setServerURL(server_url);
>   }
>   catch (MalformedURLException e){
>    System.out.println("Cannot generate server URL");
>   }
>   conf.setBasicPassword(pswd);
>   conf.setBasicUserName(uname);
>
>   return (conf);
>  }
>
>  public void placeCall(XmlRpcClientConfigImpl conf){
>   XmlRpcClient rpcClient = new XmlRpcClient();
>   String api = "freeswitch.api";
>   rpcClient.setConfig(conf);
>    Object[] params = new Object[]{ "originate",
>    "sofia/internal/1001 &bridge(sofia/internal/1002)" };
>    try {
>    rpcClient.execute(api, params );
>      }
>      catch (XmlRpcException excpn){
>       System.out.println("Could not execute service. \n");
>       excpn.printStackTrace();
>      }
>  }
>
>  /**
>   * @param args
>   */
>  public static void main(String[] args) {
>   // TODO Auto-generated method stub
>
>   LocalCall call = new LocalCall();
>
>   call.placeCall(call.setConfig());
>  }
>
> }
>
> I have done load mod_xml_rpc on the CLI of FS.
>
> Thanks a lot,
> Regards,
> Gayatri Kulkarni
>
> -----
> Whenever you find yourself on the side of the majority, it is time to pause
> and reflect.
>
>  *From:* Adeel Ansari <adeel.gnome at gmail.com>
> *Sent:* Wednesday, August 27, 2008 1:20 AM
> *To:* freeswitch-users at lists.freeswitch.org
> *Subject:* Re: [Freeswitch-users] How to originate a session from outside
>
> Show your program. Further, try the example given in here after appropriate
> modification.
> http://wiki.freeswitch.org/wiki/Freeswitch_XML-RPC#Java_Example
>
> On Wed, Aug 27, 2008 at 3:56 PM, Gayatri Kulkarni <xtpl.gayatri at gmail.com>wrote:
>
>>  Thanks a lot!
>> it worked - *but why?*
>> When I did the same thing through the program it gave me :
>>
>>          at RMIServer.main(RMIServer.java:49)
>> Caused by:
>> org.xml.sax.*SAXParseException*: Unknown type: string
>>         at
>> org.apache.xmlrpc.parser.RecursiveTypeParserImpl.startElement(Recursi
>> veTypeParserImpl.java:115)
>>         at
>> org.apache.xmlrpc.parser.XmlRpcResponseParser.startElement(XmlRpcResp
>> onseParser.java:126)
>>         at
>> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startEle
>> ment(Unknown Source)
>>         at
>> com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scan
>> StartElement(Unknown Source)
>>         at
>> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImp
>> l$FragmentContentDriver.next(Unknown Source)
>>         at
>> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(U
>> nknown Source)
>>         at
>> com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next
>> (Unknown Source)
>>         at
>> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImp
>> l.scanDocument(Unknown Source)
>>         at
>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(U
>> nknown Source)
>>         at
>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(U
>> nknown Source)
>>         at
>> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown So
>> urce)
>>         at
>> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Un
>> known Source)
>>         at
>> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.p
>> arse(Unknown Source)
>>         at
>> org.apache.xmlrpc.client.XmlRpcStreamTransport.readResponse(XmlRpcStr
>> eamTransport.java:265)
>>         at
>> org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStre
>> amTransport.java:216)
>>         at
>> org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorke
>> r.java:53)
>>         at
>> org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:166)
>>         at
>> org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:136)
>>         at
>> org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:125)
>>         at RMIServer.makeACall(RMIServer.java:36)
>>         at RMIServer.main(RMIServer.java:49)
>>
>>  *From:* Adeel Ansari <adeel.gnome at gmail.com>
>> *Sent:* Wednesday, August 27, 2008 12:21 AM
>>   *To:* freeswitch-users at lists.freeswitch.org
>> *Subject:* Re: [Freeswitch-users] How to originate a session from outside
>>
>> Try this,
>> *originate sofia/internal/1001 &bridge(sofia/internal/1003*)
>>
>> Cheers.
>>
>>
> _______________________________________________
> 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
>
>


-- 
Best,
Adeel Ansari

http://www.linkedin.com/in/adeelansari
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20080903/14a0592d/attachment-0002.html 


More information about the FreeSWITCH-users mailing list