راه اندازی webrtc روی استریسک

راه اندازی webrtc روی استریسک

نصب پیش‌نیازها

در صورتی که Git روی سرور نصب نیست، ابتدا آن را نصب نمایید:

apt update

apt install git -y

دریافت و نصب کتابخانه SRTP

cd /usr/src/

git clone GitHub - cisco/libsrtp: Library for SRTP (Secure Realtime Transport Protocol)

apt install libsrtp2-dev -y

cd libsrtp

./configure --enable-openssl

make

make runtest

make install

کامپایل مجدد Asterisk با پشتیبانی از SRTP و TLS

cd /usr/src/asterisk-18.14.0.s.2/

./configure --with-crypto --with-ssl --with-srtp=/usr/local

make

make install

درج گواهی ssl معتبردر استریسک

لازم است کلیدهای گواهی ssl در مسیر زیر جایگذاری شوند

mkdir /etc/simotel/keys

ریست سرویس Asterisk

service asterisk restart

پیکربندی Asterisk

غیرفعالسازی WebSocket در chan_sip

در فایل sip.conf:

websocket_enabled = false

فعالسازی HTTPS و WebSocket امن

در فایل /etc/asterisk/http.conf:

[general]

enabled = yes

bindaddr = 0.0.0.0

bindport = 8088

tlsenable = yes

tlsbindaddr = 0.0.0.0:8089

tlscertfile = /etc/simotel/keys/simotel.pem

tlsprivatekey = /etc/simotel/keys/simotel.key

بررسی فعال بودن ماژول‌های لازم در /etc/asterisk/modules.conf

load = chan_pjsip.so

load = res_pjsip.so

load = chan_sip.so

load = res_crypto.so


تعریف داخلی PJSIP برای WebRTC

در فایل /etc/asterisk/pjsip.conf موارد زیر را اضافه کنید:

[transport-wss]

type=transport

protocol=wss

bind=0.0.0.0:8089

cert_file=/etc/simotel/keys/simotel.pem

priv_key_file=/etc/simotel/keys/simotel.key

[600]

type=endpoint

transport=transport-wss

context=routing

disallow=all

allow=ulaw,alaw

aors=600

auth=auth600

dtls_auto_generate_cert=yes

webrtc=yes

media_encryption=dtls

use_avpf=yes

rtcp_mux=yes

force_rport=yes

rewrite_contact=yes

rtp_symmetric=yes

[600]

type=aor

max_contacts=30

[auth600]

type=auth

auth_type=userpass

username=600

password=600@asd

ریست سرویس Asterisk برای اعمال تغییرات

systemctl restart asterisk.service


بررسی وضعیت WebSocket و ماژول‌ها

در محیط CLI استریسک:

rasterisk

http show status

module show like pjsip.so

تصویر

module show like srtp

تصویر


پیکربندی تنظیمات دایال‌پد

برای فعال کردن کلاینت webrtc به آدرس https://softphone.mysup.ir/ در بخش تنظیمات دایال‌پد، آدرس سرور، داخلی و رمز عبور را وارد کرده و گزینه Log In را بزنید. در صورت موفق بودن، وضعیت داخلیReady خواهد شد.


تنظیم Dialplan برای تماس داخلی

برای تست تماس داخلی به داخلی، در سیموتل باید مسیر Dialplan مناسب تنظیم شود.

در بخش Outgoing، پترن 6XX را اضافه کرده و در Customplan، روت زیر را قرار دهید:

[routingpjsip]

exten => _XXX,1,Dial(PJSIP/${EXTEN})

1 پسندیده