ចំណេះដឹងអំពីប្រព័ន្ធទូរស័ព្ទនិម្មិត (PBX) 27/03/2026

មគ្គុទ្ទេសក៍សម្រាប់ការដំឡើង និងកំណត់រចនាសម្ព័ន្ធ Asterisk PBX — អ្វីដែលអ្នកជំនាញព័ត៌មានវិទ្យារាល់រូបត្រូវដឹង

ការកំណត់រចនាសម្ព័ន្ធ Asterisk PBX

ប្រសិនបើអ្នកមានសំណួរអំពីភាពឆបគ្នារវាង WebRTC ជាមួយកំណែជាក់លាក់មួយនៃ Asterisk សូមដឹកនាំសំណួរទាំងនោះទៅកាន់វេទិការគាំទ្រ Asterisk ដែលសមស្រប។

ការរៀបចំប្រព័ន្ធ Asterisk PBX

Asterisk និង SIP.js ត្វូបានសាកល្បងដោយប្រើការរៀបចំដូចខាងក្រោម:

  • CentOS 7.2 minimal (x86_64)
  • Asterisk 16.9.0
  • OpenSSL 1.0.1e-fips ថ្ងៃទី ១១ ខែកុម្ភៈ ឆ្នាំ ២០១៣ ឬក្រោយ
  • អាសយដ្ឋាន IP សាធារណៈ ដើម្បីជៀសវាងស្ថានការណ៍ NAT នៅផ្នែកម៉ាស៊ីនបម្រើ
  • SELinux បានបិទ

កញ្ចប់ដែលត្រូវការ

ដំឡើងភារៈអាស្រ័យដូចខាងក្រោម:

  • wget
  • gcc
  • gcc-c++
  • ncurses-devel
  • libxml2-devel
  • sqlite-devel
  • libsrtp-devel
  • libuuid-devel
  • openssl-devel

ការដំឡើង Asterisk

cd /usr/local/src/

  1. ទាញយក Asterisk ដោយប្រើ: wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16.9.0.tar.gz
  2. ស្រង់ Asterisk: tar zxvf asterisk*
  3. ចូលទៅក្នុងថតឯកសារ Asterisk: cd /usr/local/src/asterisk*
  4. រត់ស្គ្រីបកំណត់រចនាសម្ព័ន្ធ Asterisk: ./configure --with-jansson-bundled
  5. រត់ឧបករណ៍ Asterisk menuselect: make menuselect

នៅក្នុងម៉ឺនុយជ្រើសរើស សូមរុករកទៅជម្រើសសមាសភាព និងធានាថា res_srtp និង pjproject ត្រូវបានបើកដំណើរការ។ ប្រសិនបើមាន x បី នៅជាប់ res_srtp មានបញ្ហាជាមួយបណ្ណាល័យ srtp ហើយអ្នកនឹងត្រូវដំឡើងវាឡើងវិញ។ រក្សាទុកការកំណត់រចនាសម្ព័ន្ធ (សង្កត់ x)។

កំណត់ compile និងដំឡើង Asterisk: make && make install

ប្រសិនបើអ្នកត្រូវការការកំណត់រចនាសម្ព័ន្ធគំរូ អ្នកអាចរត់ make samples ដើម្បីដំឡើងវា។ ប្រសិនបើអ្នកត្រូវការដំឡើងស្គ្រីបចាប់ផ្តើម Asterisk អ្នកអាចរត់ make config។

ការរៀបចំវិញ្ញាបនបត្រ DTLS នៅក្នុង Asterisk

វិញ្ញាបនបត្រ SSL ដែលចុះហត្ថលេខាដោយខ្លួនឯងអាចទទួលយកបានសម្រាប់គោលបំណងអភិវឌ្ឍន៍ ប៉ុន្តែវានឹងមិនដំណើរការក្នុងបរិស្ថានផលិតកម្មទេ។ Let’s Encrypt គឺជាវិធីដ៏ល្អមួយដើម្បីទទួលបានវិញ្ញាបនបត្រឥតគិតថ្លៃ។

វិញ្ញាបនបត្រដែលចុះហត្ថលេខាដោយខ្លួនឯង

mkdir /etc/asterisk/keys

ចូលទៅក្នុងថតឯកសារស្គ្រីប Asterisk: cd /usr/local/src/asterisk*/contrib/scripts

បង្កើតវិញ្ញាបនបត្រ DTLS (ជំនួស pbx.mycompany.com ដោយអាសយដ្ឋាន IP ឬឈ្មោះ DNS របស់អ្នក ហើយជំនួស My Super Company ដោយឈ្មោះក្រុមហ៊ុនរបស់អ្នក): ./ast_tls_cert -C pbx.mycompany.com -O "My Super Company" -d /etc/asterisk/keys

ការកំណត់រចនាសម្ព័ន្ធ Asterisk សម្រាប់ WebRTC

សម្រាប់ WebRTC ការកំណត់ជាច្រើនដែលចាំបាច់ត្រូវតែដាក់ក្នុងការកំណត់ peer។ ការកំណត់ global មិនបណ្តាលចុះទៅការកំណត់ peer បានល្អទេ។ តាមលំនាំដើម ឯកសារកំណត់រចនាសម្ព័ន្ធ Asterisk ស្ថិតនៅក្នុង /etc/asterisk/។ ចាប់ផ្តើមដោយកែសម្រួល http.conf និងធានាថាបន្ទាត់ដូចខាងក្រោមមានភាពត្រឹមត្រូវ:

;http.conf
[general]
enabled=yes
bindaddr=127.0.0.1        ; ជំនួសដោយអាសយដ្ឋាន IP របស់អ្នក
bindport=8088             ; ជំនួសដោយច្រកដែលអ្នកចង់ស្តាប់
tlsenable=yes
tlsbindaddr=127.0.0.1:8089  ; ជំនួសដោយអាសយដ្ឋាន IP របស់អ្នក
tlscertfile=/etc/asterisk/keys/asterisk.pem

ផ្លាស់ប្តូរអាសយដ្ឋាន IP និងច្រកទៅជាអាសយដ្ឋាន IP របស់ម៉ាស៊ីនបម្រើ និងច្រកដែលអ្នកចង់ឱ្យ Asterisk ស្តាប់ការតភ្ជាប់ WebSocket។

បន្ទាប់មក កែសម្រួល sip.conf។ នៅទីនេះ អ្នកនឹងរៀបចំ peer ពីរ — មួយសម្រាប់ client WebRTC និងមួយសម្រាប់ client SIP ដែលមិនមែន WebRTC។ peer WebRTC ត្រូវការការអ៊ិនគ្រីប avpf និង icesupport ឱ្យបានបើកដំណើរការ។ ក្នុងករណីភាគច្រើន directmedia គួរតែបិទ។ ដូចគ្នាផងដែរ សម្រាប់ client WebRTC ការដឹកជញ្ជូនត្រូវតែបញ្ជាក់ជា ws ដើម្បីអនុញ្ញាតការតភ្ជាប់ WebSocket។ បន្ទាត់កំណត់រចនាសម្ព័ន្ធទាំងនេះទាំងអស់ត្រូវតែដាក់នៅក្រោម peer ខ្លួនឯង; ការកំណត់ទាំងនេះជា global អាចមិនដំណើរការ។

;sip.conf
[general]
realm=127.0.0.1           ; ជំនួសដោយអាសយដ្ឋាន IP របស់អ្នក
udpbindaddr=127.0.0.1     ; ជំនួសដោយអាសយដ្ឋាន IP របស់អ្នក
transport=udp

[1060]                    ; នេះនឹងជា client WebRTC
type=friend
username=1060             ; អ្នកប្រើប្រាស់ Auth សម្រាប់ SIP.js
host=dynamic              ; អនុញ្ញាតឱ្យ host ណាមួយចុះឈ្មោះ
secret=password           ; លេខសម្ងាត់ SIP សម្រាប់ SIP.js
encryption=yes            ; ប្រាប់ Asterisk ឱ្យប្រើការអ៊ិនគ្រីបសម្រាប់ peer នេះ
avpf=yes                  ; ប្រាប់ Asterisk ឱ្យប្រើ AVPF សម្រាប់ peer នេះ
icesupport=yes            ; ប្រាប់ Asterisk ឱ្យប្រើ ICE សម្រាប់ peer នេះ
context=default           ; ប្រាប់ Asterisk ឱ្យប្រើ context មួយណា នៅពេល peer នេះហៅ
directmedia=no            ; Asterisk នឹងបញ្ជូន media សម្រាប់ peer នេះ
transport=udp,ws,wss      ; Asterisk នឹងអនុញ្ញាត peer នេះចុះឈ្មោះលើ UDP ឬ WebSockets
force_avp=yes             ; បង្ខំ Asterisk ឱ្យប្រើ avp។ បានណែនាំក្នុង Asterisk 11.11
dtlsenable=yes            ; ប្រាប់ Asterisk ឱ្យបើក DTLS សម្រាប់ peer នេះ
dtlsverify=fingerprint    ; ប្រាប់ Asterisk ឱ្យផ្ទៀងផ្ទាត់ DTLS fingerprint
dtlscertfile=/etc/asterisk/keys/asterisk.pem  ; ប្រាប់ Asterisk ថាឯកសារ DTLS cert របស់អ្នកស្ថិតនៅទីណា
dtlssetup=actpass         ; ប្រាប់ Asterisk ឱ្យប្រើប៉ារ៉ាម៉ែត្រ SDP actpass នៅពេលរៀបចំ DTLS
rtcp_mux=yes              ; ប្រាប់ Asterisk ឱ្យធ្វើ RTCP mux

[1061]                    ; នេះនឹងជា client SIP ចាស់
type=friend
username=1061
host=dynamic
secret=password
context=default

ជាចុងក្រោយ រៀបចំ extensions.conf ដើម្បីអនុញ្ញាតឱ្យ peer ទាំងពីរហៅគ្នា:

;extensions.conf
[default]
exten => 1060,1,Dial(SIP/1060)  ; ការហៅ 1060 នឹងហៅ client SIP ដែលចុះឈ្មោះទៅ 1060
exten => 1061,1,Dial(SIP/1061)  ; ការហៅ 1061 នឹងហៅ client SIP ដែលចុះឈ្មោះទៅ 1061

ចាប់ផ្តើម Asterisk ឡើងវិញដោយប្រើ service asterisk restart ដើម្បីធានាថាការកំណត់ថ្មីមានប្រសិទ្ធភាព។

ការដោះស្រាយបញ្ហា Asterisk

អត្ថបទក្នុងវេទិកាស្តីពីការដោះស្រាយបញ្ហា WebRTC គឺជាមគ្គុទ្ទេសក៍ដ៏ល្អសម្រាប់បញ្ហាដែលជួបប្រទះពេលធ្វើការជាមួយ Asterisk។

មគ្គុទ្ទេសក៍ Asterisk Secure Calling អាចជួយអ្នករៀបចំវិញ្ញាបនបត្រ DTLS។

ប្រភព: sipjs.com

ទាក់ទងយើងថ្ងៃនេះ ហើយឱ្យយើងជួយអាជីវកម្មរបស់អ្នក បញ្ជាក់ថ្នាក់របស់ខ្លួន នៅពេលជ្រើសរើសដំណោះស្រាយ virtual PBX ដែលត្រឹមត្រូវ។

សម្រាប់សំណួរអំពីសេវា Virtual PBX របស់យើង សូមទាក់ទងមកយើង:

VIHAT TECHNOLOGY Co., Ltd

Headquarters: ViHAT Building – 06 Street No. 16 (Him Lam Residential Area) – Hiep Binh Chanh Ward – Thu Duc District – Ho Chi Minh City

Hanoi Branch: Floor 15, LADECO Building, 266 Doi Can, Ba Dinh, Hanoi

Cambodia Branch: Thida Rath #154 St. 33MC, Sangkat Steung Meanchey, Khan Mean Chey, Phnom Penh

អ្នកនិពន្ធ admin