Good arvo, all; I'm battling with a problem in making Early Media play and getting nowhere. I've searched the wiki, forums and the web in general without anything that seems to help. This suggests to me that I'm either doing something stupendously stupid, or there's a very, very odd thing going on here. I've been tasked with something that should be fairly simple: Accept an inbound call Play a specific audio file as early media Pickup the call after a certain time interval Play another audio file into the off-hook channel Disconnect the call. Sounds simple. My extension looks like so: <extension name="Inbound"> <condition field="destination_number" expression="^\+12125551212$"> <action application="pre_answer"/> <action application="set" data="ringback=/usr/local/freeswitch/sounds/early-media.wav"/> <!-- <action application="set" data="ringback=%(2000, 4000, 440.0, 480.0)"/> --> <action application="sleep" data="10000"/> <action application="answer"/> <action application="playback" data="/usr/local/freeswitch/sounds/playback"/> <action application="hangup" data="16"/> </condition> </extension> (Replace the 212 number with a real inbound DID which is being routed from Verizon (via SIP) to this FreeSWITCH machine) The call is received, a 183 is sent by FreeSWITCH (pre_answer), it waits the 10 seconds, picks up the call and plays the playback.PCMU file... but there's no early media. I've tcpdumped on the FS machine and verified it definitely is /not/ sending out RTP until the call 200 OKs and the Playback begins. As you can see, I've also attempted to replace the ringback= to a cadence instead of a WAV file, just to ensure it isn't unhappy with the WAV format, with the same results. Boy, I'd sure love it if someone could point out what potentially brain damaged thing I'm doing (assuming it's nothing arcane). My thanks to all; - Jock
I already emailed you the solution but i'll reply so everyone will know. Set ringback before you pre_answer. /b On Aug 30, 2010, at 1:49 PM, Jock McKechnie wrote:
Good arvo, all;
I'm battling with a problem in making Early Media play and getting nowhere. I've searched the wiki, forums and the web in general without anything that seems to help. This suggests to me that I'm either doing something stupendously stupid, or there's a very, very odd thing going on here.
I've been tasked with something that should be fairly simple: Accept an inbound call Play a specific audio file as early media Pickup the call after a certain time interval Play another audio file into the off-hook channel Disconnect the call.
Sounds simple. My extension looks like so: <extension name="Inbound"> <condition field="destination_number" expression="^\+12125551212$"> <action application="pre_answer"/> <action application="set" data="ringback=/usr/local/freeswitch/sounds/early-media.wav"/> <!-- <action application="set" data="ringback=%(2000, 4000, 440.0, 480.0)"/> --> <action application="sleep" data="10000"/> <action application="answer"/> <action application="playback" data="/usr/local/freeswitch/sounds/playback"/> <action application="hangup" data="16"/> </condition> </extension> (Replace the 212 number with a real inbound DID which is being routed from Verizon (via SIP) to this FreeSWITCH machine)
The call is received, a 183 is sent by FreeSWITCH (pre_answer), it waits the 10 seconds, picks up the call and plays the playback.PCMU file... but there's no early media. I've tcpdumped on the FS machine and verified it definitely is /not/ sending out RTP until the call 200 OKs and the Playback begins.
As you can see, I've also attempted to replace the ringback= to a cadence instead of a WAV file, just to ensure it isn't unhappy with the WAV format, with the same results.
Boy, I'd sure love it if someone could point out what potentially brain damaged thing I'm doing (assuming it's nothing arcane).
My thanks to all; - Jock
Thank you, Brian. I have actually omitted an awful lot of "grasping at straws" steps, however I have tried this (and I did it again, just now, both with the .wav ringback and the cadence ringback, just to be certain I hadn't imagined it) and there is still no RTP coming out after the 183. The ringback after pre_answer was tried because of this: http://wiki.freeswitch.org/wiki/Misc._Dialplan_Tools_ring_ready (I also tried ring_ready instead of a pre_answer without any particular progress - although I don't understand, for the same reason as above, why ringback being set after ring_ready actually works... Not that it does for me, anyway ;) So, apparently, not quite _that_ easy. Perhaps something else I've missed? - JP On Mon, Aug 30, 2010 at 1:57 PM, Brian West <brian@freeswitch.org> wrote:
I already emailed you the solution but i'll reply so everyone will know.
Set ringback before you pre_answer.
/b
On Aug 30, 2010, at 1:49 PM, Jock McKechnie wrote:
Good arvo, all;
I'm battling with a problem in making Early Media play and getting nowhere. I've searched the wiki, forums and the web in general without anything that seems to help. This suggests to me that I'm either doing something stupendously stupid, or there's a very, very odd thing going on here.
I've been tasked with something that should be fairly simple: Accept an inbound call Play a specific audio file as early media Pickup the call after a certain time interval Play another audio file into the off-hook channel Disconnect the call.
Sounds simple. My extension looks like so: <extension name="Inbound"> <condition field="destination_number" expression="^\+12125551212$"> <action application="pre_answer"/> <action application="set" data="ringback=/usr/local/freeswitch/sounds/early-media.wav"/> <!-- <action application="set" data="ringback=%(2000, 4000, 440.0, 480.0)"/> --> <action application="sleep" data="10000"/> <action application="answer"/> <action application="playback" data="/usr/local/freeswitch/sounds/playback"/> <action application="hangup" data="16"/> </condition> </extension> (Replace the 212 number with a real inbound DID which is being routed from Verizon (via SIP) to this FreeSWITCH machine)
The call is received, a 183 is sent by FreeSWITCH (pre_answer), it waits the 10 seconds, picks up the call and plays the playback.PCMU file... but there's no early media. I've tcpdumped on the FS machine and verified it definitely is /not/ sending out RTP until the call 200 OKs and the Playback begins.
As you can see, I've also attempted to replace the ringback= to a cadence instead of a WAV file, just to ensure it isn't unhappy with the WAV format, with the same results.
Boy, I'd sure love it if someone could point out what potentially brain damaged thing I'm doing (assuming it's nothing arcane).
My thanks to all; - Jock
_______________________________________________ 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
I can tell you without a doubt it works. Ring_Read == 180 ringing, pre_answer == 183 early media. I suspect your firewall or you have nat involved and you're not catching on to what is going on. /b On Aug 30, 2010, at 2:10 PM, Jock McKechnie wrote:
Thank you, Brian.
I have actually omitted an awful lot of "grasping at straws" steps, however I have tried this (and I did it again, just now, both with the .wav ringback and the cadence ringback, just to be certain I hadn't imagined it) and there is still no RTP coming out after the 183.
The ringback after pre_answer was tried because of this: http://wiki.freeswitch.org/wiki/Misc._Dialplan_Tools_ring_ready (I also tried ring_ready instead of a pre_answer without any particular progress - although I don't understand, for the same reason as above, why ringback being set after ring_ready actually works... Not that it does for me, anyway ;)
So, apparently, not quite _that_ easy. Perhaps something else I've missed?
- JP
And I agree that it must work, somewhere. But it does not. Work with me here: Firstly, I tcpdumped on the FreeSWITCH machine. If I'm not seeing the RTP on the FS machine, it's not going to be anything like a firewall or a NAT issue. Secondly, and far more telling (as the above could be related to me screwing up the tcpdump somehow): I get the Playback audio, so it is possible to get audio back down the line eventually and the RTP does reach the caller, so RTP is able to flow from FS to caller without interference (as I said in the initial mail, the only RTP sent from FS starts _after_ the 200 OK). It simply is that FS is not sending out early media. Like I said, either I'm doing something remarkably stupid, or there is something extremely strange going on here. Should I try to use ring_ready AND pre_answer in combination? I have not attempted that yet. If so, in what order? - JP On Mon, Aug 30, 2010 at 2:15 PM, Brian West <brian@freeswitch.org> wrote:
I can tell you without a doubt it works. Ring_Read == 180 ringing, pre_answer == 183 early media. I suspect your firewall or you have nat involved and you're not catching on to what is going on.
/b
On Aug 30, 2010, at 2:10 PM, Jock McKechnie wrote:
Thank you, Brian.
I have actually omitted an awful lot of "grasping at straws" steps, however I have tried this (and I did it again, just now, both with the .wav ringback and the cadence ringback, just to be certain I hadn't imagined it) and there is still no RTP coming out after the 183.
The ringback after pre_answer was tried because of this: http://wiki.freeswitch.org/wiki/Misc._Dialplan_Tools_ring_ready (I also tried ring_ready instead of a pre_answer without any particular progress - although I don't understand, for the same reason as above, why ringback being set after ring_ready actually works... Not that it does for me, anyway ;)
So, apparently, not quite _that_ easy. Perhaps something else I've missed?
- JP
_______________________________________________ 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
I havent tried changing the ringing to something else, but I have had success with this: <action application="set" data="instant_ringback=true"/> <action application="ring_ready" /> With no pre-answer. I found as soon as it pre-answered, in my situation, that the ringing tone stopped. On Tue, Aug 31, 2010 at 7:35 AM, Jock McKechnie <jock.mckechnie@gmail.com> wrote:
And I agree that it must work, somewhere. But it does not. Work with me here: Firstly, I tcpdumped on the FreeSWITCH machine. If I'm not seeing the RTP on the FS machine, it's not going to be anything like a firewall or a NAT issue. Secondly, and far more telling (as the above could be related to me screwing up the tcpdump somehow): I get the Playback audio, so it is possible to get audio back down the line eventually and the RTP does reach the caller, so RTP is able to flow from FS to caller without interference (as I said in the initial mail, the only RTP sent from FS starts _after_ the 200 OK). It simply is that FS is not sending out early media. Like I said, either I'm doing something remarkably stupid, or there is something extremely strange going on here. Should I try to use ring_ready AND pre_answer in combination? I have not attempted that yet. If so, in what order? - JP
Thank you for the suggestion, Bob. I slimmed down my config to this, plus the sleep/playback/hangup. I confirm seeing the 180 in the signalling, no RTP, it waits a bit, then the 200 OK and RTP floods through. I _know_ this should simply work, but... it doesn't. Anyone else got any thoughts? Cheers again; - Jock On Mon, Aug 30, 2010 at 3:20 PM, Bob Coleman <bobc@devassert.com> wrote:
I havent tried changing the ringing to something else, but I have had success with this:
<action application="set" data="instant_ringback=true"/> <action application="ring_ready" />
With no pre-answer. I found as soon as it pre-answered, in my situation, that the ringing tone stopped.
On Tue, Aug 31, 2010 at 7:35 AM, Jock McKechnie <jock.mckechnie@gmail.com> wrote:
And I agree that it must work, somewhere. But it does not. Work with me here: Firstly, I tcpdumped on the FreeSWITCH machine. If I'm not seeing the RTP on the FS machine, it's not going to be anything like a firewall or a NAT issue. Secondly, and far more telling (as the above could be related to me screwing up the tcpdump somehow): I get the Playback audio, so it is possible to get audio back down the line eventually and the RTP does reach the caller, so RTP is able to flow from FS to caller without interference (as I said in the initial mail, the only RTP sent from FS starts _after_ the 200 OK). It simply is that FS is not sending out early media. Like I said, either I'm doing something remarkably stupid, or there is something extremely strange going on here. Should I try to use ring_ready AND pre_answer in combination? I have not attempted that yet. If so, in what order? - JP
_______________________________________________ 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
180 from us won't include media... its just a ringing indication. /b On Aug 30, 2010, at 3:45 PM, Jock McKechnie wrote:
Thank you for the suggestion, Bob.
I slimmed down my config to this, plus the sleep/playback/hangup. I confirm seeing the 180 in the signalling, no RTP, it waits a bit, then the 200 OK and RTP floods through.
I _know_ this should simply work, but... it doesn't. Anyone else got any thoughts?
Cheers again;
- Jock
On Mon, Aug 30, 2010 at 3:51 PM, Brian West <brian@freeswitch.org> wrote:
180 from us won't include media... its just a ringing indication.
That's what I thought, I appreciate the confirmation on that. I've reset it back to: <extension name="Inbound"> <condition field="destination_number" expression="^\+12132895773$"> <action application="set" data="instant_ringback=true"/> <action application="pre_answer"/> <action application="sleep" data="10000"/> <action application="answer"/> <action application="playback" data="/usr/local/freeswitch/sounds/playback"/> <action application="hangup" data="16"/> </condition> </extension> And using: ngrep -q '' 'port !ssh' Can confirm there's no RTP until the 200 OK. Demented. - JP On Aug 30, 2010, at 3:45 PM, Jock McKechnie wrote:
Thank you for the suggestion, Bob.
I slimmed down my config to this, plus the sleep/playback/hangup. I confirm seeing the 180 in the signalling, no RTP, it waits a bit, then the 200 OK and RTP floods through.
I _know_ this should simply work, but... it doesn't. Anyone else got any thoughts?
Cheers again;
- Jock
_______________________________________________ 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
Well nothing is going to be sent because it has NOTHING to send... what exactly do you wish it to do? Do you want to send your own ringback inband? Or have the far end do it? So in your previous example the 180 was sent but no RTP because thats fine. You can also do inband early media but you'll have to generate it via the various methods we have. The defaults have examples of this. /b On Aug 30, 2010, at 4:13 PM, Jock McKechnie wrote:
Can confirm there's no RTP until the 200 OK.
Demented.
- JP
On Mon, Aug 30, 2010 at 4:23 PM, Brian West <brian@freeswitch.org> wrote:
Well nothing is going to be sent because it has NOTHING to send... what exactly do you wish it to do? Do you want to send your own ringback inband? Or have the far end do it? So in your previous example the 180 was sent but no RTP because thats fine. You can also do inband early media but you'll have to generate it via the various methods we have. The defaults have examples of this.
As in the initial eMail, I wish to play a specific audio file as early media, pick up the call, play another audio file post answer, and then disconnect. I had not tried the example given in the defaults, it's been a while since I'd looked through them. I ripped an example straight out of the default sample to try and get a working baseline I could modify, if I could get ANY early media it would be start. So far I have this: <extension name="wait"> <condition field="destination_number" expression="^wait$"> <action application="pre_answer"/> <action application="sleep" data="20000"/> <action application="answer"/> <action application="sleep" data="1000"/> <action application="playback" data="/usr/local/freeswitch/sounds/playback"/> <action application="hangup"/> </condition> </extension> <!-- Send a 183 and send uk-ring as the ringtone. (early media) --> <extension name="Inbound"> <condition field="destination_number" expression="^\+12132895773$"> <action application="set" data="ringback=$${uk-ring}"/> <action application="bridge" data="loopback/wait"/> </condition> </extension> Quite a different set up, now I'm bridging the call and then playing back via this bridged loopback extension, but still no RTP on the 183. Is this closer to what you think should work out of the box? - JP
On Aug 30, 2010, at 4:13 PM, Jock McKechnie wrote:
Can confirm there's no RTP until the 200 OK.
Demented.
- JP
_______________________________________________ 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
did you try the ones I listed? I did not phrase them in xml because it's redundant but you should simply be able to make a simple extension that calls playback WITHOUT calling answer and the file will play in early media? Maybe it's too easy? This will play a file in early media, answer then play it again as in-call media. <extension name="109"> <condition field="destination_number" expression="^109$"> <action application="playback" data="ivr/ivr-welcome_to_freeswitch.wav"/> <action application="answer"/> <action application="playback" data="ivr/ivr-welcome_to_freeswitch.wav"/> </condition> </extension> On Mon, Aug 30, 2010 at 4:59 PM, Jock McKechnie <jock.mckechnie@gmail.com> wrote:
On Mon, Aug 30, 2010 at 4:23 PM, Brian West <brian@freeswitch.org> wrote:
Well nothing is going to be sent because it has NOTHING to send... what exactly do you wish it to do? Do you want to send your own ringback inband? Or have the far end do it? So in your previous example the 180 was sent but no RTP because thats fine. You can also do inband early media but you'll have to generate it via the various methods we have. The defaults have examples of this.
As in the initial eMail, I wish to play a specific audio file as early media, pick up the call, play another audio file post answer, and then disconnect. I had not tried the example given in the defaults, it's been a while since I'd looked through them. I ripped an example straight out of the default sample to try and get a working baseline I could modify, if I could get ANY early media it would be start. So far I have this: <extension name="wait"> <condition field="destination_number" expression="^wait$"> <action application="pre_answer"/> <action application="sleep" data="20000"/> <action application="answer"/> <action application="sleep" data="1000"/> <action application="playback" data="/usr/local/freeswitch/sounds/playback"/> <action application="hangup"/> </condition> </extension> <!-- Send a 183 and send uk-ring as the ringtone. (early media) --> <extension name="Inbound"> <condition field="destination_number" expression="^\+12132895773$"> <action application="set" data="ringback=$${uk-ring}"/> <action application="bridge" data="loopback/wait"/> </condition> </extension> Quite a different set up, now I'm bridging the call and then playing back via this bridged loopback extension, but still no RTP on the 183. Is this closer to what you think should work out of the box? - JP
On Aug 30, 2010, at 4:13 PM, Jock McKechnie wrote:
Can confirm there's no RTP until the 200 OK.
Demented.
- JP
_______________________________________________ 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
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
On Mon, Aug 30, 2010 at 5:48 PM, Anthony Minessale < anthony.minessale@gmail.com> wrote:
did you try the ones I listed?
I did not phrase them in xml because it's redundant but you should simply be able to make a simple extension that calls playback WITHOUT calling answer and the file will play in early media?
Maybe it's too easy?
This will play a file in early media, answer then play it again as in-call media.
<extension name="109"> <condition field="destination_number" expression="^109$"> <action application="playback" data="ivr/ivr-welcome_to_freeswitch.wav"/> <action application="answer"/> <action application="playback" data="ivr/ivr-welcome_to_freeswitch.wav"/> </condition> </extension>
I did not, I misunderstood your initial eMail, clearly. I have rigged up the above and something quite odd happens - definitely much closer, but still odd. The CLI shows FreeSWITCH accept the call, there is almost a full ten second pause, and then I hear a 'click' on the line, there is another pause, and then I get the latter Playback (I've used two different audio files to ensure I can tell the difference). However, I've tcpdumped and according to Wireshark: INVITE 100 Trying (10.1 second pause) Early Media RTP 200 OK Latter Playback RTP BYE A review of the audio through WireShark verifies that FS is playing the first WAV file as, apparently, early media. So I appear to have two problems: Firstly, there's a ten second pause. I did not reinstate my sleep statement, so I don't understand why it's waiting so long after getting the call. And although FreeSWITCH is now definitely pumping out the early media, Verizon is, apparently, not handing it back. Is there any possibility something slightly non-standard is happening here, so VZ's equipment (cough, Sonus, cough) is unaware it should be passing RTP on to the calling party? I'm afraid my telephony knowledge is primarily VoIP related to Asterisk (wail, moan, etc, etc) and OpenSIPS. I was under the impression that a 183 Ringing was required in the flow to alert the far-end (calling party) that early media is coming, but I could, of course, be very wrong. Thank you very much Anthony; - Jock
I decided to go over all of the things I had tried, and discovered that the below gives me "early media", at least, it provides RTP but it is playing back silence, so it would appear, as Brian suggested above, somehow I'm not convincing FS _what_ it should be playing. I used a 'ringback', as I'm bridging, which I believe is the correct setting to use. I continue to simplify the config in hopes of just getting some kind of early media, which is why I'm using a cadence description for the ringback, instead of playing a WAV file, which is the final goal. <extension name="wait"> <condition field="destination_number" expression="^wait$"> <action application="pre_answer"/> <action application="sleep" data="10000"/> <action application="answer"/> <action application="sleep" data="1000"/> <action application="playback" data="/usr/local/freeswitch/sounds/playback"/> <action application="hangup"/> </condition> </extension> <extension name="Inbound"> <condition field="destination_number" expression="^\+12132895773$"> <action application="set" data="ringback=%(2000, 4000, 440.0, 480.0)"/> <action application="set" data="instant_ringback=true"/> <action application="set" data="ignore_early_media=true"/> <action application="bridge" data="loopback/wait"/> </condition> </extension> With the above, I get apparently a normal "conversation" (INVITE, 100, 183, early media RTP, 200 OK, playback RTP), but the early media is "blank". I'm getting closer, but still not quite there. Can anyone point out what I'm still missing? My thanks; - Jock On Tue, Aug 31, 2010 at 8:58 AM, Jock McKechnie <jock.mckechnie@gmail.com>wrote:
On Mon, Aug 30, 2010 at 5:48 PM, Anthony Minessale < anthony.minessale@gmail.com> wrote:
did you try the ones I listed?
I did not phrase them in xml because it's redundant but you should simply be able to make a simple extension that calls playback WITHOUT calling answer and the file will play in early media?
Maybe it's too easy?
This will play a file in early media, answer then play it again as in-call media.
<extension name="109"> <condition field="destination_number" expression="^109$"> <action application="playback" data="ivr/ivr-welcome_to_freeswitch.wav"/> <action application="answer"/> <action application="playback" data="ivr/ivr-welcome_to_freeswitch.wav"/> </condition> </extension>
I did not, I misunderstood your initial eMail, clearly.
I have rigged up the above and something quite odd happens - definitely much closer, but still odd. The CLI shows FreeSWITCH accept the call, there is almost a full ten second pause, and then I hear a 'click' on the line, there is another pause, and then I get the latter Playback (I've used two different audio files to ensure I can tell the difference).
However, I've tcpdumped and according to Wireshark: INVITE 100 Trying (10.1 second pause) Early Media RTP 200 OK Latter Playback RTP BYE
A review of the audio through WireShark verifies that FS is playing the first WAV file as, apparently, early media.
So I appear to have two problems: Firstly, there's a ten second pause. I did not reinstate my sleep statement, so I don't understand why it's waiting so long after getting the call. And although FreeSWITCH is now definitely pumping out the early media, Verizon is, apparently, not handing it back. Is there any possibility something slightly non-standard is happening here, so VZ's equipment (cough, Sonus, cough) is unaware it should be passing RTP on to the calling party? I'm afraid my telephony knowledge is primarily VoIP related to Asterisk (wail, moan, etc, etc) and OpenSIPS. I was under the impression that a 183 Ringing was required in the flow to alert the far-end (calling party) that early media is coming, but I could, of course, be very wrong.
Thank you very much Anthony;
- Jock
On Tue, Aug 31, 2010 at 4:55 PM, Brian West <brian@freeswitch.org> wrote:
What device are you working with.. because handling early media is optional so your device might be ignoring it.
I'm working directly with an inbound vendor, with a signalling proxy in the middle, so the flow is: Verizon -> OpenSIPS -> FreeSWITCH The media is, of course, going direct VZ<->FS (which works, since asides from the early media, I get the audio fine on Playback). VZ is running a Sonus of some sort, beyond that I'm unsure. I know I can force a ringback on inbound Asterisk calls and it works, so I'm assuming their equipment is correctly set to handle early media, but not 100% positive. - JP
On Aug 31, 2010, at 4:47 PM, Jock McKechnie wrote:
I'm getting closer, but still not quite there. Can anyone point out what I'm still missing?
My thanks;
- Jock
_______________________________________________ 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
Again I can tell you without a shadow of a doubt that this works fine... FreeSWITCH will send early media we have people doing this... if it didn't work we would have an army of very angry people beating our doors down. Are you doing any RTP proxy on OpenSIPS? /b On Sep 1, 2010, at 9:20 AM, Jock McKechnie wrote:
On Tue, Aug 31, 2010 at 4:55 PM, Brian West <brian@freeswitch.org> wrote: What device are you working with.. because handling early media is optional so your device might be ignoring it.
I'm working directly with an inbound vendor, with a signalling proxy in the middle, so the flow is:
Verizon -> OpenSIPS -> FreeSWITCH
The media is, of course, going direct VZ<->FS (which works, since asides from the early media, I get the audio fine on Playback).
VZ is running a Sonus of some sort, beyond that I'm unsure. I know I can force a ringback on inbound Asterisk calls and it works, so I'm assuming their equipment is correctly set to handle early media, but not 100% positive.
- JP
On Wed, Sep 1, 2010 at 9:24 AM, Brian West <brian@freeswitch.org> wrote:
Again I can tell you without a shadow of a doubt that this works fine... FreeSWITCH will send early media we have people doing this... if it didn't work we would have an army of very angry people beating our doors down. Are you doing any RTP proxy on OpenSIPS?
Believe me, I understand what you're saying. This is why I keep suggesting I must be doing something barmy, but as yet, it just simply isn't working and I can't find whatever "it" is. No RTP proxying. I just tried it with a different inbound provider (Peerless), to ensure it wasn't specifically a VZ thing, and it isn't. I then realised that I *know* it's FreeSWITCH not playing ball, not a provider, because I've used Wireshark to reassemble the RTP and listen to it, and it definitely /is not/ playing any kind of ringing cadence in early media. The early media RTP is literally silence, until the call 200 OKs and the RTP has the Playback audio. What's my next step? Hire a consultant to actually log into the machine? I don't like admitting defeat, but I'm wondering if I'm to the point where without having someone staring at how it's set up, and can personally tcpdump to see what I'm seeing (so they know I'm not full of it;), I'm not going to get much further. Thanks; - Jock
On Sep 1, 2010, at 9:20 AM, Jock McKechnie wrote:
On Tue, Aug 31, 2010 at 4:55 PM, Brian West <brian@freeswitch.org>
wrote:
What device are you working with.. because handling early media is optional so your device might be ignoring it.
I'm working directly with an inbound vendor, with a signalling proxy in the middle, so the flow is:
Verizon -> OpenSIPS -> FreeSWITCH
The media is, of course, going direct VZ<->FS (which works, since asides from the early media, I get the audio fine on Playback).
VZ is running a Sonus of some sort, beyond that I'm unsure. I know I can force a ringback on inbound Asterisk calls and it works, so I'm assuming their equipment is correctly set to handle early media, but not 100% positive.
- JP
_______________________________________________ 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
Your problem is 100% related to the example you are testing and not the real-world usage. in your dialplan where you have: <action application="bridge" data="loopback/wait"/> change it to: <action application="bridge" data="{ignore_early_media=true}loopback/wait"/> This is not documented properly in the default config. Without the ignore_early_media param the ringing stage ends as soon as you get a 183 and the call bridges instantly assuming the far end will be sending the media. On Wed, Sep 1, 2010 at 10:07 AM, Jock McKechnie <jock.mckechnie@gmail.com> wrote:
On Wed, Sep 1, 2010 at 9:24 AM, Brian West <brian@freeswitch.org> wrote:
Again I can tell you without a shadow of a doubt that this works fine... FreeSWITCH will send early media we have people doing this... if it didn't work we would have an army of very angry people beating our doors down. Are you doing any RTP proxy on OpenSIPS?
Believe me, I understand what you're saying. This is why I keep suggesting I must be doing something barmy, but as yet, it just simply isn't working and I can't find whatever "it" is. No RTP proxying. I just tried it with a different inbound provider (Peerless), to ensure it wasn't specifically a VZ thing, and it isn't. I then realised that I *know* it's FreeSWITCH not playing ball, not a provider, because I've used Wireshark to reassemble the RTP and listen to it, and it definitely /is not/ playing any kind of ringing cadence in early media. The early media RTP is literally silence, until the call 200 OKs and the RTP has the Playback audio. What's my next step? Hire a consultant to actually log into the machine? I don't like admitting defeat, but I'm wondering if I'm to the point where without having someone staring at how it's set up, and can personally tcpdump to see what I'm seeing (so they know I'm not full of it;), I'm not going to get much further. Thanks; - Jock
On Sep 1, 2010, at 9:20 AM, Jock McKechnie wrote:
On Tue, Aug 31, 2010 at 4:55 PM, Brian West <brian@freeswitch.org> wrote: What device are you working with.. because handling early media is optional so your device might be ignoring it.
I'm working directly with an inbound vendor, with a signalling proxy in the middle, so the flow is:
Verizon -> OpenSIPS -> FreeSWITCH
The media is, of course, going direct VZ<->FS (which works, since asides from the early media, I get the audio fine on Playback).
VZ is running a Sonus of some sort, beyond that I'm unsure. I know I can force a ringback on inbound Asterisk calls and it works, so I'm assuming their equipment is correctly set to handle early media, but not 100% positive.
- JP
_______________________________________________ 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
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
I'm struggling with getting VoiceMail messages sent out via email. I've tried the python and PHP scripts but it doesn't look like either of them actually get run when a voice mail is left. I've also created a lua script for testing purposes to show that the script is actually being called, and it doesn't look like it's getting called either. Currently in switch.conf.xml I have the following: <param name="mailer-app" value="/usr/local/bin/lua51/lua"/> <param name="mailer-app-args" value="/usr/local/freeswitch/scripts/test.lua"/> My directory.xml contains the following: <user id="1001"> <params> <param name="vm-email-all-messages" value="true"/> <param name="vm-attach-file" value="true"/> <param name="vm-keep-local-after-email" value="false"/> <param name="vm-mailto" value="Peter.Hinman@ParcelPool.com"/> </params> </user> The session log for the call shows the following: 2010-09-01 16:28:55.588613 [DEBUG] mod_voicemail.c:2403 Deliver VM to 1001@ParcelPool.com 2010-09-01 16:28:55.607187 [DEBUG] switch_utils.c:631 Emailed file [/tmp/mail.12833585354d4c] to [Peter.Hinman@ParcelPool.com] 2010-09-01 16:28:55.607187 [DEBUG] mod_voicemail.c:2571 Sending message to Peter.Hinman@ParcelPool.com 2010-09-01 16:28:55.609671 [DEBUG] switch_cpp.cpp:602 CoreSession::hangup If I call the lua script from the command line it runs correctly, but it doesn't appear to get called by FS when I leave a voice mail msg. Any ideas what I'm missing here? Thanks, Peter
Please DO NOT click reply, change the subject and hijack a thread. You have without knowing hijacked the "Early Media Troubles" thread. Click New message and input the address of the list. If you notice the list archives will also show that your thread is in the middle of another thread that is already in progress. Doing this increases the chances of your email being ignored or lost due to how some clients thread lists. Have you tried this: http://wiki.freeswitch.org/wiki/Mod_voicemail#nullmailer_settings I know it works I use it daily... but I use exim 4 and the perl script in scripts/perl/sendmail /b On Sep 1, 2010, at 11:48 AM, Peter Hinman wrote:
I'm struggling with getting VoiceMail messages sent out via email. I've tried the python and PHP scripts but it doesn't look like either of them actually get run when a voice mail is left. I've also created a lua script for testing purposes to show that the script is actually being called, and it doesn't look like it's getting called either.
Currently in switch.conf.xml I have the following:
<param name="mailer-app" value="/usr/local/bin/lua51/lua"/> <param name="mailer-app-args" value="/usr/local/freeswitch/scripts/test.lua"/>
My directory.xml contains the following: <user id="1001"> <params> <param name="vm-email-all-messages" value="true"/> <param name="vm-attach-file" value="true"/> <param name="vm-keep-local-after-email" value="false"/> <param name="vm-mailto" value="Peter.Hinman@ParcelPool.com"/> </params> </user>
The session log for the call shows the following: 2010-09-01 16:28:55.588613 [DEBUG] mod_voicemail.c:2403 Deliver VM to 1001@ParcelPool.com 2010-09-01 16:28:55.607187 [DEBUG] switch_utils.c:631 Emailed file [/tmp/mail.12833585354d4c] to [Peter.Hinman@ParcelPool.com] 2010-09-01 16:28:55.607187 [DEBUG] mod_voicemail.c:2571 Sending message to Peter.Hinman@ParcelPool.com 2010-09-01 16:28:55.609671 [DEBUG] switch_cpp.cpp:602 CoreSession::hangup
If I call the lua script from the command line it runs correctly, but it doesn't appear to get called by FS when I leave a voice mail msg.
Any ideas what I'm missing here?
Thanks, Peter
On Wed, Sep 1, 2010 at 11:08 AM, Anthony Minessale < anthony.minessale@gmail.com> wrote:
Your problem is 100% related to the example you are testing and not the real-world usage.
Agreed, however this is what my company needs it to do, so it's "real world" for me.
in your dialplan where you have:
<action application="bridge" data="loopback/wait"/>
change it to:
<action application="bridge" data="{ignore_early_media=true}loopback/wait"/>
This is not documented properly in the default config. Without the ignore_early_media param the ringing stage ends as soon as you get a 183 and the call bridges instantly assuming the far end will be sending the media.
I've tried this, actually (I did so again, just to be sure). This is also not the issue. I'm not making this up just to give you guys a hard time, it _really_ isn't working, I swear. (Go ahead, call 213/289-5773, it's up right now) - JP
On Wed, Sep 1, 2010 at 10:07 AM, Jock McKechnie <jock.mckechnie@gmail.com> wrote:
On Wed, Sep 1, 2010 at 9:24 AM, Brian West <brian@freeswitch.org> wrote:
Again I can tell you without a shadow of a doubt that this works fine... FreeSWITCH will send early media we have people doing this... if it
didn't
work we would have an army of very angry people beating our doors down. Are you doing any RTP proxy on OpenSIPS?
Believe me, I understand what you're saying. This is why I keep suggesting I must be doing something barmy, but as yet, it just simply isn't working and I can't find whatever "it" is. No RTP proxying. I just tried it with a different inbound provider (Peerless), to ensure it wasn't specifically a VZ thing, and it isn't. I then realised that I *know* it's FreeSWITCH not playing ball, not a provider, because I've used Wireshark to reassemble the RTP and listen to it, and it definitely /is not/ playing any kind of ringing cadence in early media. The early media RTP is literally silence, until the call 200 OKs and the RTP has the Playback audio. What's my next step? Hire a consultant to actually log into the machine? I don't like admitting defeat, but I'm wondering if I'm to the point where without having someone staring at how it's set up, and can personally tcpdump to see what I'm seeing (so they know I'm not full of it;), I'm not going to get much further. Thanks; - Jock
On Sep 1, 2010, at 9:20 AM, Jock McKechnie wrote:
On Tue, Aug 31, 2010 at 4:55 PM, Brian West <brian@freeswitch.org> wrote: What device are you working with.. because handling early media is optional so your device might be ignoring it.
I'm working directly with an inbound vendor, with a signalling proxy
in
the middle, so the flow is:
Verizon -> OpenSIPS -> FreeSWITCH
The media is, of course, going direct VZ<->FS (which works, since asides from the early media, I get the audio fine on Playback).
VZ is running a Sonus of some sort, beyond that I'm unsure. I know I can force a ringback on inbound Asterisk calls and it works, so I'm assuming their equipment is correctly set to handle early media, but not 100% positive.
- JP
_______________________________________________ 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
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
AIM: anthm MSN:anthony_minessale@hotmail.com <MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com<PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <sip%3A888@conference.freeswitch.org> googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:+19193869900
_______________________________________________ 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
your company needs to do loopback? I also have confirmed it works every single time before I post you an example. The last thing I said indeed makes it work properly on the default config. I just listened to the uk ringback. If you make us SSH to your box and do it for you we will if it ends this thread. On Wed, Sep 1, 2010 at 12:03 PM, Jock McKechnie <jock.mckechnie@gmail.com> wrote:
On Wed, Sep 1, 2010 at 11:08 AM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
Your problem is 100% related to the example you are testing and not the real-world usage.
Agreed, however this is what my company needs it to do, so it's "real world" for me.
in your dialplan where you have:
<action application="bridge" data="loopback/wait"/>
change it to:
<action application="bridge" data="{ignore_early_media=true}loopback/wait"/>
This is not documented properly in the default config. Without the ignore_early_media param the ringing stage ends as soon as you get a 183 and the call bridges instantly assuming the far end will be sending the media.
I've tried this, actually (I did so again, just to be sure). This is also not the issue. I'm not making this up just to give you guys a hard time, it _really_ isn't working, I swear. (Go ahead, call 213/289-5773, it's up right now) - JP
On Wed, Sep 1, 2010 at 10:07 AM, Jock McKechnie <jock.mckechnie@gmail.com> wrote:
On Wed, Sep 1, 2010 at 9:24 AM, Brian West <brian@freeswitch.org> wrote:
Again I can tell you without a shadow of a doubt that this works fine... FreeSWITCH will send early media we have people doing this... if it didn't work we would have an army of very angry people beating our doors down. Are you doing any RTP proxy on OpenSIPS?
Believe me, I understand what you're saying. This is why I keep suggesting I must be doing something barmy, but as yet, it just simply isn't working and I can't find whatever "it" is. No RTP proxying. I just tried it with a different inbound provider (Peerless), to ensure it wasn't specifically a VZ thing, and it isn't. I then realised that I *know* it's FreeSWITCH not playing ball, not a provider, because I've used Wireshark to reassemble the RTP and listen to it, and it definitely /is not/ playing any kind of ringing cadence in early media. The early media RTP is literally silence, until the call 200 OKs and the RTP has the Playback audio. What's my next step? Hire a consultant to actually log into the machine? I don't like admitting defeat, but I'm wondering if I'm to the point where without having someone staring at how it's set up, and can personally tcpdump to see what I'm seeing (so they know I'm not full of it;), I'm not going to get much further. Thanks; - Jock
On Sep 1, 2010, at 9:20 AM, Jock McKechnie wrote:
On Tue, Aug 31, 2010 at 4:55 PM, Brian West <brian@freeswitch.org> wrote: What device are you working with.. because handling early media is optional so your device might be ignoring it.
I'm working directly with an inbound vendor, with a signalling proxy in the middle, so the flow is:
Verizon -> OpenSIPS -> FreeSWITCH
The media is, of course, going direct VZ<->FS (which works, since asides from the early media, I get the audio fine on Playback).
VZ is running a Sonus of some sort, beyond that I'm unsure. I know I can force a ringback on inbound Asterisk calls and it works, so I'm assuming their equipment is correctly set to handle early media, but not 100% positive.
- JP
_______________________________________________ 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
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
_______________________________________________ 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
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
ringback has nothing to do with playback, it's only relevant to bridge. trying to call playback before you answer will implicitly create a pre_answer Do this in your dialplan: playback file1 sleep 10000 answer playback file2 if you expect the playback to loop endlessly it would take more steps, the easiest of which would be to make a 10 second audio file and use: playback file1 answer playback file2 On Mon, Aug 30, 2010 at 1:49 PM, Jock McKechnie <jock.mckechnie@gmail.com> wrote:
Good arvo, all; I'm battling with a problem in making Early Media play and getting nowhere. I've searched the wiki, forums and the web in general without anything that seems to help. This suggests to me that I'm either doing something stupendously stupid, or there's a very, very odd thing going on here. I've been tasked with something that should be fairly simple: Accept an inbound call Play a specific audio file as early media Pickup the call after a certain time interval Play another audio file into the off-hook channel Disconnect the call. Sounds simple. My extension looks like so: <extension name="Inbound"> <condition field="destination_number" expression="^\+12125551212$"> <action application="pre_answer"/> <action application="set" data="ringback=/usr/local/freeswitch/sounds/early-media.wav"/> <!-- <action application="set" data="ringback=%(2000, 4000, 440.0, 480.0)"/> --> <action application="sleep" data="10000"/> <action application="answer"/> <action application="playback" data="/usr/local/freeswitch/sounds/playback"/> <action application="hangup" data="16"/> </condition> </extension> (Replace the 212 number with a real inbound DID which is being routed from Verizon (via SIP) to this FreeSWITCH machine) The call is received, a 183 is sent by FreeSWITCH (pre_answer), it waits the 10 seconds, picks up the call and plays the playback.PCMU file... but there's no early media. I've tcpdumped on the FS machine and verified it definitely is /not/ sending out RTP until the call 200 OKs and the Playback begins. As you can see, I've also attempted to replace the ringback= to a cadence instead of a WAV file, just to ensure it isn't unhappy with the WAV format, with the same results. Boy, I'd sure love it if someone could point out what potentially brain damaged thing I'm doing (assuming it's nothing arcane). My thanks to all; - Jock _______________________________________________ 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
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
participants (5)
-
Anthony Minessale
-
Bob Coleman
-
Brian West
-
Jock McKechnie
-
Peter Hinman