當(dāng)前位置:首頁 ? 行業(yè)觀察 ? 正文

網(wǎng)絡(luò)電話VOIP技術(shù)解析

一、VOIP介紹

VOIP即網(wǎng)絡(luò)電話,Voice over Internet Protocol,通過把語音信號經(jīng)過數(shù)字化處理、壓縮編碼打包、通過網(wǎng)絡(luò)傳輸,然后解壓、把數(shù)字信號還原成聲音,讓通話對方聽到。 話音從源端到達(dá)目的端的基本過程是: 聲 – 電轉(zhuǎn)換:通過壓電陶瓷等類似裝置將聲波變換為電信號。

量化采樣:將模擬電信號按照某種采樣方法(比如脈沖編碼調(diào)制,即PCM)轉(zhuǎn)換成數(shù)字信號;

封包:將一定時長的數(shù)字化之后的語音信號組合為一幀,隨后,按照國際電聯(lián)(ITU-T)的標(biāo)準(zhǔn),這些話音幀被封裝到一個RTP(即實時傳輸協(xié)議,Realtime Transport Protocol)博主weixin@yuyinjiqiren報文中,并被進(jìn)一步封裝到UDP報文和IP報文中。

傳輸:IP報文在IP網(wǎng)絡(luò)由源端傳遞到目的端 去抖動:去除因封包在網(wǎng)絡(luò)中傳輸速度不均勻所造成的抖動音 拆包 電聲轉(zhuǎn)換 一個完整的、可以大規(guī)模商用運營的IP電話系統(tǒng)包括如下一些技術(shù)(暫不完全):尋址 話音編解碼 回聲消除和回聲抑制 傳輸 IP報文時延控制功能 去抖動 IP報文的去抖動(de-jitter)功能 。

二、VOIP與傳統(tǒng)電話的比較

簡單地來說,VOIP網(wǎng)絡(luò)電話免費(流量、wifi),傳統(tǒng)電話更穩(wěn)定點。不過現(xiàn)在網(wǎng)絡(luò)電話行業(yè)發(fā)展快,很多產(chǎn)品穩(wěn)定性都超過了傳統(tǒng)電話,好比mimicall、vp3000等,所以現(xiàn)在越來越多的人習(xí)慣了使用網(wǎng)絡(luò)電話去進(jìn)行溝通。

三、開源軟PBX(軟交換)的選擇

國內(nèi)比較流行和擁有活躍用戶群的是FreeSwitch和Asterisk,由于之前對Asterisk有一定的應(yīng)用經(jīng)驗,所以選擇了Asterisk。二者都基于sip協(xié)議。

四、客戶端開源sip協(xié)議庫的選取

目前比較流行的開源的SIP協(xié)議庫是PJSIP,它實現(xiàn)了SIP、SDP、RTP、STUN、TURN和ICE。PJSIP作為基于SIP的一個多媒體通信框架提供了非常清晰的API,以及NAT穿越的功能。PJSIP具有非常好的移植性,幾乎支持現(xiàn)今所有系統(tǒng):從桌面系統(tǒng)、嵌入式系統(tǒng)到智能手機。PJSIP同時支持語音、視頻、狀態(tài)呈現(xiàn)和即時通訊。PJSIP具有非常完善的文檔,對開發(fā)者非常友好支持。

五、調(diào)研評估和Demo搭建

目前市場上對于voip的應(yīng)用已經(jīng)比較成熟,好多公司都在做。微信電話本等的推出說明voip完全可行。相對于去哪兒呼叫中心更好的服務(wù)于去哪兒用戶解決海外用戶撥打人工服務(wù)的困難,盡最大努力降低用戶的成本,voip完全可行。

1)Demo的快速搭建

找一臺linux機器首先下載安裝pjsip軟件 安裝過程這里不做過細(xì)講解

用ldconfig命令 驗證pjsip的動態(tài)鏈接是否創(chuàng)建

ldconfig -p | grep pj

安裝Asterisk 13(注意只有12以上才支持了pjsip)

這里注意在編譯的時候其實可以查詢系統(tǒng)的位數(shù),我的是64位所以直接指定了64,查詢指定的命令如下:

ARCH=$(getconf LONG_BIT | grep “64”)

./configure –libdir=/usr/lib${ARCH}

用make menuselect命令選擇安裝的模塊

做選擇需要編譯安裝的modules,查看確保pjsip相關(guān)的module已選擇

然后make config 命令是將asterisk作為linux service的服務(wù)

還有一點就是Asterisk 13 requires pjsip >= 2.4. 所以選取版本的時候也 需要注意。

2)demo客戶端軟件選取

PjSua是開源的客戶端代碼,同時支持ios和android等主流操作系統(tǒng),做測試用的話eyeBeam,X-Lite,Blink 都可以作為PC客戶端,Blink PC客戶端做tls測試的時候比較方便。

這里可以同時下載eyeBeam,X-Lite兩臺互撥便于測試。

3)Asterisk的配置

Demo可以配置兩個測試的分機號(可以認(rèn)為是用戶名和密碼)

配置是在 /etc/asterisk/pjsip.conf 中

監(jiān)聽地址端口配置為本機ip和5061端口,協(xié)議配置成udp

分別再配置兩個號 8005和8006

[transport-udp]

type=transport

protocol=udp

bind=0.0.0.0:5061

[8005]

type=endpoint

context=from-external

disallow=all

allow=ulaw

transport=transport-udp

auth=8005

aors=8005

[8005]

t
未經(jīng)允許不得轉(zhuǎn)載:思誠科技 ? 網(wǎng)絡(luò)電話VOIP技術(shù)解析
分享到
1
0
上一篇
下一篇

相關(guān)推薦

客服微信
heshang2000 復(fù)制已復(fù)制
客戶服務(wù)專屬聯(lián)系微信
contact-img
客服QQ
2711008116 復(fù)制已復(fù)制
客戶服務(wù)專屬聯(lián)系QQ
專屬客服