[Freeswitch-users] Problems with Originate

Nik Middleton nik.middleton at noblesolutions.co.uk
Sun Feb 15 03:39:12 PST 2009


You are indeed correct.  I still had my asterisk hat on, and was
expecting a hang-up event to be fired with the call outcome.  I was
explicitly testing for call failure.  I've not modified the code to test
the result of the originate and it works as expected.

 

I will add some words to the wiki explaining this for those converting
from Asterisk

 

Regards, 

 

________________________________

From: freeswitch-users-bounces at lists.freeswitch.org
[mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of
Anthony Minessale
Sent: 14 February 2009 22:45
To: freeswitch-users at lists.freeswitch.org
Subject: Re: [Freeswitch-users] Problems with Originate

 


What do you suggest is not working?

the call failed and it *did not* run the code inside if
(new_session.ready())
The call was never established therefore it would not run the hangup
hook either.
In order to trigger the hangup hook the session would need to exist.  If
the session could not originate the new_session obj
is an empty shell with no actual session inside.

var new_session = new Session(<dial string>, <existing session>);
if (!new_session.ready()) {
   // the call never was established.
}

I gave you real code to try in my last email that you completely
ignored.....


and finally you are declaring the function wrong

declare it at the top.

function on_hangup(hup_session, how)
{
.....
}

I sense you seem to think things are going to magically transform into
however you are thinking they should work
instead of you perhaps learning how they actually work.




On Sat, Feb 14, 2009 at 1:47 PM, Nik Middleton
<nik.middleton at noblesolutions.co.uk> wrote:

Nope,

 

Still not working.  Here's my little test javascript

 

var new_session = new
Session('{ignore_early_media=true,}sofia/internal/1001 at 192.168.3.206');

    

            //set the on_hangup function to be called when this session
is hungup


            new_session.setHangupHook(on_hangup,"hup"); 

            

            var on_hangup = function(hup_session, how) {


                                    console_log("err","In hangup
section\n");                                                  

                                    //exit here would end the script so
you could cleanup and just be done


                                    exit();


                        }  

            

            

    if (new_session.ready()) {

                        new_session.answer( );

                        new_session.sleep(1500);

                        new_session.streamFile("female2.wav");

            }

 

And this is the output

 

[NOTICE] sofia.c:3090 sofia_handle_sip_i_state() Hangup
sofia/internal/sip:1001 at 192.168.0.29:5060 [CS_CONSUME_MEDIA] [USER_BUSY]

[ERR] switch_ivr_originate.c:1116 switch_ivr_originate() Cannot create
outgoing channel of type [user] cause: [USER_BUSY]

[INFO] mod_dptools.c:1909 audio_bridge_function() Originate Failed.
Cause: USER_BUSY

[NOTICE] switch_core_session.c:957 switch_core_session_thread() Session
95 (sofia/internal/sip:1001 at 192.168.0.29:5060) Ended

[NOTICE] switch_core_session.c:959 switch_core_session_thread() Close
Channel sofia/internal/sip:1001 at 192.168.0.29:5060 [CS_HANGUP]

[NOTICE] mod_dptools.c:600 answer_function() Channel
[sofia/internal/0000000000 at 192.168.3.206] has been answered

 

________________________________

From: freeswitch-users-bounces at lists.freeswitch.org
[mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of
Anthony Minessale
Sent: 14 February 2009 17:20


To: freeswitch-users at lists.freeswitch.org
Subject: Re: [Freeswitch-users] Problems with Originate

 

are you running this as a dialplan app?
session is a reserved variable name for the session you executed the app
on.

are you using an alternate name for your new session like my_session
etc....?

this works for me, try it yourself.

var my_session = new
Session("sofia/external/7003 at conference.freeswitch.org");
consoleLog("err", "ready: " + my_session.ready() + "\n");




On Sat, Feb 14, 2009 at 7:17 AM, Nik Middleton
<nik.middleton at noblesolutions.co.uk> wrote:

Understood.

 

However, using the second method, how can I trap on call failure?

 

If I originate a call and the user is busy, the console reports this
fact, but then the script continues to execute 

 

if (session.ready()) {

                        console_log("notice","Session result=[" +
session.cause + "]  \n");

                        if (session.cause == "USER_BUSY") {

                                                            Disposition
= "BUSY";

                                                session.Hangup();

                        }

In this case session.cause reports 'NONE'  and what's surprising is that
even though the call failed (busy) session.ready returns a true value.

________________________________

From: freeswitch-users-bounces at lists.freeswitch.org
[mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of
Anthony Minessale
Sent: 13 February 2009 13:55


To: freeswitch-users at lists.freeswitch.org

Subject: Re: [Freeswitch-users] Problems with Originate

 

The first way is deprecated and will be removed.
The 2nd way is the correct way.

On Fri, Feb 13, 2009 at 5:48 AM, Alexandru Nedelcu <alex at sinapticode.ro>
wrote:

On Fri, 2009-02-13 at 13:33 +0200, Alexandru Nedelcu wrote:
> The problem with this setup is that origination_caller_id_number
doesn't
> work from inside the JS file (when calling session.originate).

I just discovered something interesting.

When originating the call like this ...
 session = new Session("<connection_string>")
instead of this ...
 session = new Session(); session.originate("<connection_string>")

... then it works. Is this some kind of bug, or what's the difference
here?


Thanks,

--
Alexandru Nedelcu
Software Developer, Sinapticode



_______________________________________________
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




-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/

AIM: anthm
MSN:anthony_minessale at hotmail.com
<mailto:MSN%3Aanthony_minessale at hotmail.com> 
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
<mailto:PAYPAL%3Aanthony.minessale at gmail.com> 
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
<mailto:sip%3A888 at conference.freeswitch.org> 
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
<mailto:googletalk%3Aconf%2B888 at conference.freeswitch.org> 
pstn:213-799-1400


_______________________________________________
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




-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/

AIM: anthm
MSN:anthony_minessale at hotmail.com
<mailto:MSN%3Aanthony_minessale at hotmail.com> 
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
<mailto:PAYPAL%3Aanthony.minessale at gmail.com> 
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
<mailto:sip%3A888 at conference.freeswitch.org> 
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
<mailto:googletalk%3Aconf%2B888 at conference.freeswitch.org> 
pstn:213-799-1400


_______________________________________________
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




-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/

AIM: anthm
MSN:anthony_minessale at hotmail.com
<mailto:MSN%3Aanthony_minessale at hotmail.com> 
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
<mailto:PAYPAL%3Aanthony.minessale at gmail.com> 
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
<mailto:sip%3A888 at conference.freeswitch.org> 
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
<mailto:googletalk%3Aconf%2B888 at conference.freeswitch.org> 
pstn:213-799-1400

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20090215/590620a3/attachment-0002.html 


More information about the FreeSWITCH-users mailing list