[Freeswitch-users] Can I stream a file to a parked call.
Phillip Jones
pjintheusa at gmail.com
Mon Aug 31 13:23:36 PDT 2009
That makes perfect sense - I now send the call to a managed app instead of
park and every thing works great. thanks.
On Fri, Aug 28, 2009 at 5:12 PM, Anthony Minessale <
anthony.minessale at gmail.com> wrote:
> Taking over the session while it's parked like that from your code and
> asking it to play a file is making it do 2 things at once.
> The session's thread is already busy in the park loop so you would have to
> change it's state to something passive like soft_execute so
> it's thread was not doing anything or send it a message so the park loop
> would pick it up by using the uuid_broadcast app::arg
>
> there are variables you can set that begin group_confirm_* that you can set
> to do this all without even using a script.
>
>
> http://wiki.freeswitch.org/wiki/Channel_Variables#Answer_confirmation_variables
>
>
>
>
>
> On Fri, Aug 28, 2009 at 3:53 PM, Phillip Jones <pjintheusa at gmail.com>wrote:
>
>> The dialplan is is kicking off the C# script:
>>
>> <condition field="destination_number" expression="^(12125553666)$">
>> * <action application="managed" data="MyFSProjects.ProcessCall"/>*
>> </condition>
>>
>> I launch a thread and specify the uuid to originate:
>>
>> fsApi.Execute("originate",
>> string.Format("{{ignore_early_media=true,absolute_codec_string='PCMU'}}[*
>> origination_uuid={0}*,origination_caller_id_number={1}]sofia/gateway/broadvox/{2}
>> &park", *call.Uuid*, call.OutgoingCallerID, call.NumberToDial));
>>
>> in the callback i try and play the wav file:
>>
>> FreeSWITCH.Native.ManagedSession blegSession = new
>> FreeSWITCH.Native.ManagedSession(callID);
>>
>> if (blegSession.Ready() && blegSession.mediaReady())
>> {
>> blegSession.Answer();
>> blegSession.Execute("playback",
>> "prompts/press-1-to-accept-call-from.wav");
>> }
>>
>> I go on to bridge the leg a and b - that bits works fine.
>>
>>
>>
>> On Fri, Aug 28, 2009 at 4:40 PM, Anthony Minessale<
>> anthony.minessale at gmail.com> wrote:
>> > nevermind,
>> >
>> > I didn't look closely at your code.
>> >
>> > how did you end up with blegSession ?
>> > Are you running this script from the CLI or via the application
>> interface.
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > On Fri, Aug 28, 2009 at 3:33 PM, Anthony Minessale
>> > <anthony.minessale at gmail.com> wrote:
>> >>
>> >> the L16 codec is used because the wav files is raw PCM audio
>> >> which is being encoded to PCMU
>> >>
>> >> Have you tried doing this to a locally registered phone?
>> >>
>> >>
>> >>
>> >> On Fri, Aug 28, 2009 at 3:13 PM, Phillip Jones <pjintheusa at gmail.com>
>> >> wrote:
>> >>>
>> >>> thanks for the reply.
>> >>>
>> >>> Tried this and exactly the same result. The prompt is slowed - as if
>> >>> the person is drunk.
>> >>>
>> >>> I do notice that the originating call SDP shows:
>> >>>
>> >>> a=rtpmap:0 PCMU/8000
>> >>>
>> >>> but the play tries to use:
>> >>>
>> >>> EXECUTE sofia/external/6093693828
>> >>> playback(prompts/press-1-to-accept-call-from.wav)
>> >>> 2009-08-28 16:03:14.507375 [DEBUG] switch_ivr_play_say.c:1097 Codec
>> >>> Activated L16 at 8000hz 1 channels 20ms
>> >>>
>> >>>
>> >>> Should the codec be PCMU at 8000hz as opposed to L16 at 8000hz? If so of
>> >>> there a way of forcing this codec for play.
>> >>>
>> >>> Thanks
>> >>>
>> >>>
>> >>> Phillip
>> >>>
>> >>>
>> >>> Full code & logs
>> >>> http://pastebin.freeswitch.org/10147
>> >>> http://pastebin.freeswitch.org/10150
>> >>>
>> >>>
>> >>>
>> >>> On Thu, Aug 27, 2009 at 4:30 PM, Anthony
>> >>> Minessale<anthony.minessale at gmail.com> wrote:
>> >>> > try wedging {ignore_early_media=true} before the first [ in your
>> dial
>> >>> > string
>> >>> > and eliminate the code waiting for answer.
>> >>> >
>> >>> >
>> >>> > On Thu, Aug 27, 2009 at 3:09 PM, Phillip Jones <
>> pjintheusa at gmail.com>
>> >>> > wrote:
>> >>> >>
>> >>> >> Hi there,
>> >>> >>
>> >>> >> I know there are other ways of doing this. I am just trying get to
>> >>> >> know have fun with the FreeSWITCH API.
>> >>> >>
>> >>> >> I am using originate and park a call:
>> >>> >>
>> >>> >> fsApi.Execute("originate",
>> >>> >>
>> >>> >>
>> >>> >>
>> string.Format("[origination_uuid={0},origination_caller_id_number={1}]sofia/gateway/broadvox/{2}
>> >>> >> &park", blegSession.Uuid, OutgoingCallerID, NumberToDial));
>> >>> >>
>> >>> >> That works great, the phone rings. I want to play something to this
>> >>> >> called party when they pick up.
>> >>> >>
>> >>> >> while (!blegSession.answered())
>> >>> >> {
>> >>> >> Log.WriteLine(LogLevel.Alert,
>> >>> >> "Inside::CallReturns:!Session.answered::Loop");
>> >>> >> blegSession.sleep(500, 1);
>> >>> >> }
>> >>> >>
>> >>> >> string promptFile = "prompts/whisper.wav";
>> >>> >> blegSession.StreamFile(promptFile, 0);
>> >>> >>
>> >>> >>
>> >>> >> This works - but the audio is choppy and slow.
>> >>> >>
>> >>> >> Is there something I need to do to that parked call before
>> streaming
>> >>> >> that
>> >>> >> file?
>> >>> >>
>> >>> >>
>> >>> >> Thanks for any input.
>> >>> >>
>> >>> >> Phil
>> >>> >>
>> >>> >> _______________________________________________
>> >>> >> 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/
>> >>> > Twitter: http://twitter.com/FreeSWITCH_wire
>> >>> >
>> >>> > AIM: anthm
>> >>> > MSN:anthony_minessale at hotmail.com<MSN%3Aanthony_minessale at hotmail.com>
>> >>> > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com<PAYPAL%3Aanthony.minessale at gmail.com>
>> >>> > IRC: irc.freenode.net #freeswitch
>> >>> >
>> >>> > FreeSWITCH Developer Conference
>> >>> > sip:888 at conference.freeswitch.org<sip%3A888 at conference.freeswitch.org>
>> >>> > iax:guest at conference.freeswitch.org/888
>> >>> > googletalk:conf+888 at conference.freeswitch.org<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
>> >>> >
>> >>> >
>> >>>
>> >>> _______________________________________________
>> >>> 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/
>> >> Twitter: http://twitter.com/FreeSWITCH_wire
>> >>
>> >> AIM: anthm
>> >> MSN:anthony_minessale at hotmail.com<MSN%3Aanthony_minessale at hotmail.com>
>> >> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com<PAYPAL%3Aanthony.minessale at gmail.com>
>> >> IRC: irc.freenode.net #freeswitch
>> >>
>> >> FreeSWITCH Developer Conference
>> >> sip:888 at conference.freeswitch.org<sip%3A888 at conference.freeswitch.org>
>> >> iax:guest at conference.freeswitch.org/888
>> >> googletalk:conf+888 at conference.freeswitch.org<googletalk%3Aconf%2B888 at conference.freeswitch.org>
>> >> pstn:213-799-1400
>> >
>> >
>> >
>> > --
>> > Anthony Minessale II
>> >
>> > FreeSWITCH http://www.freeswitch.org/
>> > ClueCon http://www.cluecon.com/
>> > Twitter: http://twitter.com/FreeSWITCH_wire
>> >
>> > AIM: anthm
>> > MSN:anthony_minessale at hotmail.com <MSN%3Aanthony_minessale at hotmail.com>
>> > GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com<PAYPAL%3Aanthony.minessale at gmail.com>
>> > IRC: irc.freenode.net #freeswitch
>> >
>> > FreeSWITCH Developer Conference
>> > sip:888 at conference.freeswitch.org <sip%3A888 at conference.freeswitch.org>
>> > iax:guest at conference.freeswitch.org/888
>> > googletalk:conf+888 at conference.freeswitch.org<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
>> >
>> >
>>
>>
>> _______________________________________________
>> 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/
> Twitter: http://twitter.com/FreeSWITCH_wire
>
> AIM: anthm
> MSN:anthony_minessale at hotmail.com <MSN%3Aanthony_minessale at hotmail.com>
> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com<PAYPAL%3Aanthony.minessale at gmail.com>
> IRC: irc.freenode.net #freeswitch
>
> FreeSWITCH Developer Conference
> sip:888 at conference.freeswitch.org <sip%3A888 at conference.freeswitch.org>
> iax:guest at conference.freeswitch.org/888
> googletalk:conf+888 at conference.freeswitch.org<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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20090831/dad883cf/attachment-0002.html
More information about the FreeSWITCH-users
mailing list