FreePBX
FreePBX — كومپانىييادا قوڭىراۋلاردى باسقارۋعا مۇمكىندىك بەرەتىن تەگىن باعدارلامالىق قامتاماسىز ەتۋ telephone system.
ەرەكشەلىكتەر
- ىينتەرنەت ارقىلى تەلەفون قوڭىراۋلارى: VoIP تەحنولوگىيياسىن قولدانادى، ٴداستۇرلى تەلەفون جەلىسى ورنىنا ىينتەرنەت ارقىلى قوڭىراۋ شالۋ مۇمكىندىگى.
- اۆتوماتتى قوڭىراۋلاردى تاراتۋ: كىرىس قوڭىراۋلاردى دۇرىس نومىرلەرگە نەمەسە بولىمشەلەرگە اۆتوماتتى تۇردە باعىتتاۋعا كومەكتەسەدى.
- ىينتەراكتىيۆتى داۋىستىق مازىرلەر (IVR): قوڭىراۋ شالۋشى ٴتىيىستى بولىمشەنى تاڭداۋ ٴۇشىن پەرنەلەردى باسۋ ارقىلى مازىردەن وتۋىنە مۇمكىندىك بەرەدى.
- داۋىستىق پوشتا: قوڭىراۋعا جاۋاپ بەرىلمەسە، FreePBX حاباردى جازىپ الىپ كەيىن تىڭداۋعا بولادى.
- كونفەرەنتسىييا قوڭىراۋلارى: بىرنەشە ادامنىڭ ٴبىر ۋاقىتتا قاتىسۋىنا مۇمكىندىك بەرەتىن كونفەرەنتسىييالاردى ۇيىمداستىرۋ.
- قوڭىراۋلاردى جازۋ: تەلەفون اڭگىمەلەرىن كەيىنگى تىڭداۋ نەمەسە تالداۋ ٴۇشىن جازىپ الۋعا بولادى.
- باسقا جۇيەلەرمەن ىينتەگراتسىييا: FreePBX ٴارتۇرلى CRM جۇيەلەرىمەن، ونىڭ ىشىندە Planfix-پەن ىينتەگراتسىييالانۋى مۇمكىن.
بايلانىس
FreePBX-تى Planfix-پەن ەكى تاسىلمەن قوسۋعا بولادى:
ەسكەرتۋ: Planfix كومانداسى كلىييەنتتىڭ جاعىندا Asterisk-ٴتى كونفىيگۋراتسىييالامايدى جانە وسىعان قاتىستى كونسۋلتاتسىييا بەرمەيدى.
Planfix تەلەفونىييا ٴۇشىن API
- وسى ٴادىستى قولدانا وتىرىپ، ٴسىز تەك Planfix-تە قوڭىراۋ وقىيعالارىن الا الاسىز، ياعنىي قوڭىراۋ بولعاندا بەلسەندى Planfix قويىندىسىندا قوڭىراۋ كارتاسى پايدا بولادى.
- Planfix-تەن قوڭىراۋ جاساۋ مۇمكىندىگى جوق.
- قوڭىراۋ جازبالارىن الۋ ٴۇشىن قوسىمشا apache/nginx باپتاۋلارىن جاساۋىڭىز قاجەت (۵-قادام).
۱-قادام
سەرۆەردە /etc/asterisk/extensions_override_freepbx.conf فايلىن وڭدەپ، ونىڭ ىشىندە كەلەسى ۳ كونتەكستتىڭ بولۋىن قامتاماسىز ەتىڭىز (مىسال فايل):
- [macro-dialout-one-predial-hook]
- [macro-dialout-trunk-predial-hook]
- [macro-hangupcall]
[macro-hangupcall] ٴۇشىن ٴدال دالمە-ٴدال ۇلگى بىردەي بولۋى مىندەتتى ەمەس.
extensions_additional.conf فايلىن اشىپ، ونىڭ ىشىنەن [macro-hangupcall] كونتەكستىن تاۋىپ — كوشىرىپ — وتە باسىنا كەلەسى جولدى قوسىڭىز:
exten => s,1,Macro(hangupcall-send-post)
۲-قادام
بارلىق كونتەكستتەردى مىسالىنان extension_custom.conf-كە كوشىرىڭىز. بۇل ارەكەتتى FreePBX ىينتەرفەيسى ارقىلى دا ورىنداۋعا بولادى.
۳-قادام
globals_custom.conf فايلىنا ۳ جول قوسىپ، {…} ورنىنا سايكەس ماندەردى قويىڭىز:
- PBX_URL = {…} — ٴسىزدىڭ PBX-ٴتىڭ URL-ى
- PF_URL = {…} — سۇراۋلاردى قابىلدايتىن ادرەس
- PF_KEY = {…} — Planfix اۆتورىيزاتسىييا توكەنى
۴-قادام
- Planfix-تا Account management — Integrations — Virtual PBXs — Planfix API for telephony بولىمىنە ٴوتىڭىز.
- PBX مەكەنجايىن تولتىرىڭىز، سول ارقىلى Planfix سول سايتتان/ادرەستەن كەلەتىن وقىيعالاردى قابىلداي الاتىنىن بىلەدى.
۵-قادام
جازبالاردى الۋ ٴۇشىن ولاردى ۆەب-سەرۆەر ارقىلى سىرتتان قولجەتىمدى ەتۋ كەرەك. FreePBX-تە قوسىلعان Apache ارقىلى مۇنى ورىنداۋ ٴۇشىن جازبالار قالتاسىنا سىلتەمە جاساڭىز. قالتانىڭ دۇرىس مەنشىك ىييەسى، توبى جانە قۇقىقتارى — ۷۷۵ بولۋى ٴتىيىس.
- سىلتەمە قۇرىڭىز:
ln -s /var/spool/asterisk/monitor /var/www/html/monitor
- قۇقىقتار مەن مەنشىك ىييەسىن وزگەرتىڭىز:
chmod -R 775 /var/www/html/monitor/chown -R asterisk:asterisk /var/www/html/monitor/
ەگەر Apache جوق جىيناق قولدانساڭىز — ٴوز ۆەب-سەرۆەرىڭىزگە ۇقساس باپتاۋدى جاساڭىز.
FreePBX ىينتەگراتسىيياسى
(FreePBX ۱۶+ / Asterisk ۱۸+)
باستاماس بۇرىن extensions_override_freepbx.conf فايلىندا كەلەسى ەنگىزبەنى جاساڭىز:
[macro-dialout-trunk-predial-hook]
exten => s,1,Gosub(planfix-mark-outbound,s,1)
same => n,MacroExit()
[planfix-mark-outbound]
exten => s,1,NoOp(Outgoing call from ${CALLERID(all)} to ${EXTEN})
same => n,Set(__CRM_DIRECTION=OUTBOUND)
same => n,NoOp(Setting CRM_DIRECTION=${CRM_DIRECTION})
same => n,Return()
[macro-dialout-one-predial-hook]
exten => s,1,Gosub(planfix-mark-inbound,s,1)
same => n,MacroExit()
[macro-dial-ringall-predial-hook]
exten => s,1,Gosub(planfix-mark-inbound,s,1)
same => n,MacroExit()
[planfix-mark-inbound]
exten => s,1,NoOp(Incoming call to ${EXTEN} from ${CALLERID(all)})
same => n,Set(__CRM_DIRECTION=INBOUND)
same => n,NoOp(Setting CRM_DIRECTION=${CRM_DIRECTION})
same => n,Return()
۱-قادام
FreePBX-تە پايدالانۋشى قوسىڭىز: Settings — Asterisk REST Interface Users — Add User.
كەلەسى ورىستەردى تولتىرىڭىز:
- REST Interface User Name: پايدالانۋشى اتى
- REST Interface User Password: پارول
- Password Type: Plain Text
- Read Only: No
كوشىرىپ الىڭىز (۴-قادامدا قاجەت) جانە ساقتاڭىز.
۲-قادام
Manager قوسىڭىز: Settings — Asterisk Manager Users — Add Manager:
- Name: اتاۋى
- Secret: ادەپكى قالدىرىڭىز نەمەسە ٴوزىڭىز ورناتىڭىز
- قالعان باپتاۋلاردى وزگەرتكەن ۇتىمدى ەمەس.
كوشىرىپ الىڭىز (۴ جانە ۶-قادامداردا قاجەت) جانە ساقتاڭىز.
۳-قادام
وڭ جاق جوعارعى بۇرىشتاعى Apply Config باتىرماسىن باسىپ باپتاۋلاردى ساقتاڭىز.
۴-قادام
Planfix-تا Primary Account Admin — Integrations — Virtual PBXs — FreePBX بولىمىنە ٴوتىڭىز.
تومەندەگىلەردى تولتىرىڭىز:
- PBX address: ٴسىزدىڭ PBX-ٴتىڭ URL-ى (ARI قولجەتىمدى پروتوكول مەن پورتتى قوسا)
- ARI User Name: ۱-قادامداعى Name
- ARI User Password: ۱-قادامداعى Password
قابىلداۋشى سكرىيپت URL-ىن كوشىرىپ، ىينتەگراتسىييانى ساقتاڭىز.
۵-قادام
سەرۆەردە:
- /var/spool/asterisk/ ىشىندە monitor قالتاسىنا recording اتتى سىيمۆولدىق سىلتەمە جاساڭىز (سول كاتالوگتا). كوماندا:
ln –s /var/spool/asterisk/monitor /var/spool/asterisk/recording
۶-قادام
- /etc/asterisk/ قالتاسىنا ٴوتىڭىز
- ەگەر scripts قالتاسى بولماسا، ونى جاساڭىز
- scripts قالتاسىنىڭ ىشىندە ami_listener.py فايلىن جاساڭىز
۷-قادام
ami_listener.py فايلىن مىسالىنا سايكەس تولتىرىڭىز، مىنالاردى اۋىستىرىڭىز:
- Your_user_name: ۲-قادامداعى Name-پەن
- Your_user_password: ۲-قادامداعى Secret-پەن
- Your_planfix_endpoint_url: ۴-قادامنان الىنعان قابىلداۋشى سكرىيپت URL-پەن
۸-قادام
فايلعا ورىندالاتىن قۇقىق بەرىڭىز:
chmod +x /etc/asterisk/scripts/ami_listener.py
۹-قادام
- /lib/systemd/system/ قالتاسىنا ٴوتىڭىز
- crm-asterisk-listener.service اتتى فايل جاساڭىز
- crm-asterisk-listener.service فايلىن مىسالىنا سايكەس تولتىرىڭىز
۱۰-قادام
فايلدى اۆتوجۇكتەلۋگە قوسىپ، سەرۆىيستى ىسكە قوسىڭىز:
sudo systemctl enable crm-asterisk-listener
sudo systemctl start crm-asterisk-listener
Asterisk-ٴتىڭ ەسكى نۇسقالارىمەن جۇمىس
Asterisk ۱۳+ ٴۇشىن كونفىيگۋراتسىييا فايلدارىنا قوسىمشا قاسىييەتتەر قوسۋ قاجەت.
/etc/asterisk/cdr.conf ٴۇشىن
[general] enable = yes batch = no unanswered = yes
/etc/asterisk/cdr_manager.conf ٴۇشىن
[general] enable = yes unanswered = yes
ەسكەرتۋ: قوڭىراۋلار جازبالارىن الۋ تەك Asterisk ۱۴+ ٴۇشىن جۇمىس ىستەيتىنىن ەسكەرىڭىز.
قوسىمشا ادىستەر
ٴسىز وسى ادىستەردى ٴوزىڭىز dialplan-نان شاقىرا الاسىز.
باقىلاۋشىلار تۋرالى اقپارات الۋ
ىينتەگراتسىييادا كورسەتىلگەن URL-عا POST سۇراۋىن جىبەرىپ، كەلەسى مالىمەتتەردى ۇسىنا الاسىز:
Content-type: application/json
ٴسىز جاۋاپ رەتىندە الاسىز:
نەمەسە
ەگەر كونتاكتىگە قاتىستى:
- باقىلاۋشىلار جوق بولسا
- قىسقا نومىرلەر تاعايىندالماعان بولسا
- باقىلاۋشى رەتىندە شاقىرىلعان نومىرگە قوڭىراۋ شالعان قىزمەتكەر ("short_PBX_extension")
بولسا، جاۋاپتا كەلەسى بولادى:
جوعالتىلعان قوڭىراۋ تۋرالى حابارلاما
- وسى ٴادىستى پايدالانۋ ٴۇشىن ىينتەگراتسىييا باپتاۋلارىندا — “Record missed calls only by a separate special request” وپتسىيياسىن تاڭداڭىز:
ىينتەگراتسىييادا كورسەتىلگەن URL-عا POST سۇراۋىن جىبەرىپ، كەلەسى مالىمەتتەردى ۇسىنا الاسىز:
Content-type: application/json
{"event": "callMissedNotify"، "uniqueId": "unique_call_id"، "intNum": "short_PBX_extension_to_receive_missed_call_notification"، "extNum": "external_subscriber_number"}
ەگەر سول قىسقا نومىرگە ىييە قىزمەتكەر بار بولسا، ول جوعالتىلعان قوڭىراۋ تۋرالى حابارلاما الادى.
POST سۇراۋىنا قايتارىلاتىن جاۋاپ بوس بولادى.
جۇمىس ىستەۋ تۋرالى ەسكەرتۋلەر
- سكرىيپت جۇمىس ىستەۋى ٴۇشىن "panoramisk" كىتاپحاناسى ورناتىلعانىنا كوز جەتكىزىڭىز. ونى 'pip install panoramisk' كومەگىمەن ورناتۋعا بولادى.
- ەگەر سكرىيپت دەرەۋ باستالماسا نەمەسە ami_listener-گە وزگەرىستەر ەنگىزگەننەن كەيىن كوماندالاردى ورىنداساڭىز، كەلەسى كوماندالار كومەكتەسۋى مۇمكىن:
sudo systemctl daemon-reloadsudo systemctl restart crm-asterisk-listener
- ىينتەگراتسىييانى ٴوشىرۋ ٴۇشىن ورىنداڭىز:
sudo systemctl stop crm-asterisk-listenersudo systemctl disable crm-asterisk-listener
- بارلىق قوسىلۋ ادىستەرىندە ٴسىز باپتاعان بولۋىڭىز كەرەك:
- ىشكى قالتالار (Extensions)
- كىرىس جانە شىعىس باعىتتاۋ (Inbound/Outbound Routes)