首先,我不得不說,這個教程可能對你有些幫助,但是也有可能無法根本解決某些問題。因為這一塊的東西太少了。網(wǎng)上幾乎沒有參考。
對于Skype的集成,早在幾年前好像就是支持的。在Freeswitch的官網(wǎng)上也有對應(yīng)的說明。
早起主要有三種方式:
·Skype Connect
·mod_skypopen (deprecated)
·SipTheeSkppe(deprecated)
ok,那就很明朗了。我們只有一條路可以走。
準備
首先你要有一個skype賬戶,沒有就去官網(wǎng)上申請一個。(現(xiàn)在skpye已經(jīng)被微軟收購了,如果你有微軟賬號也可以登錄)
其次你要有個Freeswitch。當然,這個是肯定有的。
Freeswitch配置
這些都可以參考Freeswitch官網(wǎng)上的,我也是按照上面來的。不過稍微有一點點不同。(可能文檔沒有及時更新)
SIP Profile
位置在 conf/sip_profiles/external/skype.xml(該文件需要你新建)
<include>
<gateway name="skype">
<param name="realm" value="sip.skype.com"/>
<param name="proxy" value="sip.skype.com"/> <!-- is this necessary? it's the same as realm -->
<param name="from-domain" value="sip.skype.com"/>
<param name="username" value="YOUR_SKYPE_sip_USERNAME"/>
<param name="from-user" value="YOUR_SKYPE_sip_USERNAME"/>
<param name="password" value="YOUR_SKYPE_SIP_PASSWORD"/>
<param name="contact-params" value="YOUR_SKYPE_sip_USERNAME@sip.skype.com"/>
<param name="extension" value="YOUR_SKYPE_sip_USERNAME"/>
<param name="extension-in-contact" value="true"/>
<param name="retry-seconds" value="30"/>
<param name="caller-id-in-from" value="false"/>
</gateway>
</include>
這個配置是網(wǎng)關(guān)上的參考,需要說明幾點。
首先,看你一下你的server是否可以ping通sip.skype.com。避免物理上的不可訪問。
其次,YOUR_SKYPE_sip_USERNAME并不是你的skype的賬戶名。(可能文檔寫作的時候是可以的,但是現(xiàn)在肯定不行)。這個username是skype connect里的profile的username。(后面介紹)
同理,這里的YOUR_SKYPE_SIP_PASSWORD也不是你的skype的密碼,是skype connect里的profile的password。
另外,建議retry-seconds設(shè)置時間小一點。
理論上來說,配置了Sip Profile,已經(jīng)完成了一半,你可以實現(xiàn)freeswitch通過skype外呼的能力了。 如果要實現(xiàn)skype呼入freeswitch,需要再完成如下配置。
Dialpan
Inbound: conf/dialplan/public/01_skype.xml(該文件需要你新建)
<include>
<extension name="skype_inbound">
<condition field="destination_number" expression="YOUR_SKYPE_SIP_USERNAME">
<action application="transfer" data="YOU_LOCAL_NUMBER_WHERE_YOU_Want_TRANSFER_SKYPE_CALL XML default"/>
</condition>
</extension>
</include>
Outbound: conf/dialplan/default/01_skype.xml(該文件需要你新建)
<include>
<extension name="skype_outbound">
<condition field="destination_number" expression="^(YOURPREFIX\d+)$">
<action application="bridge" data="sofia/gateway/skype/$1"/>
</condition>
</extension>
</include>
注意:這段官網(wǎng)上標注是沒有測試過的,因為筆者不需要,我就沒有配置了。僅供參考。
Sip Connect配置
Skype被收購后,官網(wǎng)上也是繞來繞去的。筆者弄了半天才弄清楚Sip Connect的概念。
流程
言歸正傳,理一下這個圖里的關(guān)系。
Skype賬號和微軟賬號都可以登錄skype,但是兩者不互通(之前踩過坑)
需要登錄skype manager(使用對應(yīng)的賬戶),然后在特性里開通Skype Connect。
這一步不可使用百度,可以使用google搜skype manager,然后找到入口。
進入后要先創(chuàng)建一個組。我創(chuàng)建了一個名為MyFamily的組。
skype manager頁面
點擊Features,點擊Skype Connect,創(chuàng)建Profile
Features
創(chuàng)建后Profile后就可以查看用戶名和密碼
查看用戶名和密碼
還記得上面Freeswitch配置的用戶名和密碼嗎? 這里就是需要配置的值。
配置完成后,這個網(wǎng)關(guān)就可以注冊上了。但是不可以外呼。因為沒有激活。激活要交費,只是線路的費用,一個線路一個月將近5歐。
這里充了錢只能充值到我個人賬戶,這里的組賬戶還是沒有錢。不理解為什么。
問了Skype客戶,答復(fù)告訴我是國內(nèi)不支持Skype Connect功能,那我充值異常怎么說??? 客服答,請直接退款。