Setting up port audio for incoming/outgoing calls
On the wiki, an example of a port audio configuration is given that involves creating a Sip gateway on localhost. As I couldn't get this to work (apparently due to the external profile's detection of NAT), I thought I would try an alternative approach. I am modifying the default dial plan here. At some point I'll probably just rewrite it anyway. I have created a user in the directory for extension 1020. For outbound calls, in default.xml, I have the following: <extension name="portaudio" continue="true"> <condition field="source" expression="mod_portaudio"> <action application="set_user" data="1020@$${domain}"/> <action application="set" data="effective_caller_id_number=1020"/> </condition> </extension> The log shows that the set_user is executed, as is the set effective_caller_id_number (the latter shouldn't be necessary, unless I'm misunderstanding). However, running show channels after making a call from the portaudio device still shows the user name and caller id as FreeSWITCH,0000000000 Also, when I try to call a local extension from the audio device, I get the following in the logs, and the call is terminated. I've checked the code, and clearly the failure to open the file is the cause of the termination. The Sip phone on the extension rings once and then it receives the cancellation from FreeSWITCH. 2008-12-25 10:29:59 [DEBUG] switch_ivr_originate.c:1313 switch_ivr_originate() P lay Ringback File [local_stream://moh] 2008-12-25 10:29:59 [ERR] mod_local_stream.c:308 local_stream_file_open() Unknow n source moh 2008-12-25 10:29:59 [ERR] switch_ivr_originate.c:1322 switch_ivr_originate() Err or Playing File 2008-12-25 10:29:59 [DEBUG] switch_core_codec.c:122 switch_core_session_set_read _codec() Restore original codec. 2008-12-25 10:29:59 [NOTICE] switch_ivr_originate.c:1560 switch_ivr_originate() Hangup sofia/internal/sip:1000@192.168.0.4:2048;line=mxyv04us [CS_CONSUME_MEDIA] [NO_ANSWER] 2008-12-25 10:29:59 [DEBUG] switch_channel.c:1494 switch_channel_perform_hangup( ) Send signal sofia/internal/sip:1000@192.168.0.4:2048;line=mxyv04us [KILL] Any hints would be welcome. There is no urgency, of course, as I'm doing this for fun and out of interest. Happy holidays to all on the FreeSWITCH list.
I've solved part of my problem. local_stream_file_open() was looking for moh/48000, because I had set the sample rate to 48 khz in my portaudio configuration. (The context was that the music was to be used as ring-back). Not surprisingly, the lookup failed, as did the lookup for "moh"; if it had been moh/8000 it would have succeeded. It all makes sense now.
Not quite... you needed to have a moh/48000 defined in localstream too. ;) so when you play local_stream://moh it appends the rate to the end to find the exact one. If you define a moh by itself it would have fallen back to that. See local_stream.conf.xml ;) /b On Dec 25, 2008, at 12:17 AM, Jason White wrote:
I've solved part of my problem.
local_stream_file_open() was looking for moh/48000, because I had set the sample rate to 48 khz in my portaudio configuration. (The context was that the music was to be used as ring-back). Not surprisingly, the lookup failed, as did the lookup for "moh"; if it had been moh/8000 it would have succeeded.
It all makes sense now.
_______________________________________________ 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
Thanks are due to Brian for his help with this. Now, how do I set up my configuration for outgoing calls so that, when I make a call from the portaudio module, the caller_id_number and caller_id_name will be stored in the database as the extension I want, rather than as 0000000000, FreeSWITCH? I've tried setting origination_caller_id_name, origination_caller_id_number, caller_id_name and caller_id_number in the dial plan, but obviously it enters the database before these changes take effect. Thanks to FreeSWITCH developers and other community members for your patience and helpfulness with these inquiries, and feel free to delay your replies until after the holidays if desired.
Open up portaudi.conf.xml and look for the callerid settings. /b On Dec 25, 2008, at 6:12 PM, Jason White wrote:
Now, how do I set up my configuration for outgoing calls so that, when I make a call from the portaudio module, the caller_id_number and caller_id_name will be stored in the database as the extension I want, rather than as 0000000000, FreeSWITCH?
participants (2)
-
Brian West
-
Jason White