|
|
楼主 |
发表于 2011-11-17 10:16:41
|
显示全部楼层
Receiving Calls From Google Voice
本帖最后由 Test 于 2011-11-17 10:30 编辑
Receiving Calls From Google Voice
FreeSWITCH and mod_dingaling now allow you to receive incoming Google Voice calls. You must have a Google Voice account to receive incoming DID calls.
mod_dingaling can also receive calls from Gmail users that click on an available Chat user, followed by the "Voice calling" button, and finally the "Call computer" button.
Follow these steps in FreeSWITCH:
- Update to latest FreeSWITCH git as of Friday afternoon, September 3, 2010.
- Modify your jingle profile as follows:
- Uncomment this line: <param name="candidate-acl" value="wan.auto"/>
- Edit the lines for dialplan, context, and extension as needed
Log into Google Voice:
- Click on Settings > Phones
- Uncheck all phones
- Check Google Chat
- Log out of gmail ( Or turn off chat at the bottom of the gmail page)
A sample jingle client file:
- <profile type="client">
- <param name="name" value="mercutioviz"/>
- <param name="login" value="mercutio.viz@gmail.com/talk"/>
- <param name="password" value="foobar"/>
- <param name="dialplan" value="XML"/>
- <param name="context" value="public"/>
- <param name="message" value="Thanks GOOG!"/>
- <param name="rtp-ip" value="${bind_server_ip}"/>
- <param name="auto-login" value="true"/>
- <param name="sasl" value="plain"/>
- <param name="server" value="talk.google.com"/>
- <param name="tls" value="true"/>
- <param name="use-rtp-timer" value="true"/>
- <param name="exten" value="1002"/>
- <param name="vad" value="both"/>
- <param name="candidate-acl" value="wan.auto"/>
- <param name="local-network-acl" value="localnet.auto"/>
- </profile>
复制代码
ATTENTION: message param must be set to something - it will be the message shown to folks trying to chat with your account.NOTE: If you are making a copy of "client.xml" be sure to change this line:<param name="name" value="$${xmpp_client_profile}"/>The "name" here is the name of your profile - it is used in the dialstring when making outbound calls.
Make a call to your Google Voice number. Your phone should ring. (The above file is for a phone registered as user 1002.) Answer and talk! If you have call screening turned on then you can do the usual press 1 to accept and press 2 to send to voicemail.
It seems that receiving of calls Fully doesn't work unless you have call screening Enabled, so please enable it.To automatically press 1 to accept, when you pick up your phone you need to change your dialplan.Put the following in your dialplan (same context as the receiving extension):
- <extension name="google_in" continue="true">
- <condition field="caller_id_name" expression="^(Google Voice)$" >
- <action application="log" data="Google Voice Call Incoming" />
- <action application="set" data="execute_on_answer=send_dtmf 1"/>
- </condition>
- </extension>
复制代码
NOTES:
- You must be logged out of gmail (or turn off chat) to receive calls via FreeSWITCH/dingaling, otherwise GV will send the call to your gmail client
- You must uncheck all other phones in your forwards to section. (I could not get dingaling to work simultaneously with ringing another phone.)
Test Notes
I tested this configure, it seems that the followings are not working. (internet---FW(openwrt)--FS--sip phone)
1. Normal PSTN--call--GV#--forwarded to Gmail---FS--sip phone, doesn't work.
Another user reports that (1) works even if from time to time it goes to voice mail. 2. Computer(other's gmail account)--Call Phone option---GV#--forwarded go Gmail---FS---sip phone, doesn't work.
What works
1. Computer--call-Gmail-computer--FS--sip phone , works
2. Dial PSTN with Gmail/GV, works.
Also, "external-rtp-ip" with numeric value must be used for incoming call from "Gmail call computer". This setting is not necessary for calling out.
Another user reports that this is working with external-rtp-ip from the normal FS stun process.
See Also
http://wiki.freeswitch.org/wiki/Google_Voice
|
|