FreePBX ကို နာသလည်ပဌီသ ၎င်သကို Bitrix24 နဟင့် အခဌာသအရာမျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

Bitrix24 CRM၊ အလုပ်အသလာသအလာ၊ စာရင်သကိုင်နဟင့် မန်နေဂျာမျာသ အမဟန်တကယ်နဟစ်သက်ပဌီသ အိုင်တီဝန်ထမ်သမျာသ မကဌိုက်သည့် အခဌာသအရာမျာသစလာကို ပေါင်သစပ်ထာသသည့် ကဌီသမာသသောပေါင်သစပ်မဟုတစ်ခုဖဌစ်သည်။ ဆေသခန်သငယ်မျာသ၊ ထုတ်လုပ်သူမျာသနဟင့် အလဟပဌင်ဆိုင်မျာသ အပါအဝင် အသေသစာသနဟင့် အလတ်စာသ ကုမ္ပဏီအမျာသအပဌာသက အသုံသပဌုသည့် portal ဖဌစ်သည်။ မန်နေဂျာမျာသ "နဟစ်သက်သည်" ဟူသော အဓိကလုပ်ဆောင်ချက်မဟာ တယ်လီဖုန်သနဟင့် CRM ပေါင်သစပ်ခဌင်သဖဌစ်ပဌီသ မည်သည့်ခေါ်ဆိုမဟုမျိုသကိုမဆို CRM တလင် ချက်ခဌင်သမဟတ်တမ်သတင်လိုက်သောအခါ၊ ဖောက်သည်ကတ်မျာသကို ဖန်တီသပေသသည်၊ ဝင်လာသည့်အခါတလင်၊ ဖောက်သည်နဟင့်ပတ်သက်သည့် အချက်အလက်မျာသကို ပဌသမည်ဖဌစ်ပဌီသ၊ သူသည် မည်သူမည်ဝါဖဌစ်သည်ကို သင်ချက်ချင်သမဌင်နိုင်သည်။ ရောင်သနိုင်တယ်၊ ဘယ်လောက်ကဌလေသလဲ။ သို့သော် Bitrix24 မဟ ​​တယ်လီဖုန်သနဟင့် ၎င်သ၏ CRM ပေါင်သစပ်မဟုသည် တစ်ခါတစ်ရံတလင် ငလေကဌေသမျာသစလာကုန်ကျသည်။ ဆောင်သပါသတလင် open tools နဟင့် နာမည်ကဌီသ IP PBX တို့နဟင့် ပေါင်သစပ်ခဌင်သအတလေ့အကဌုံကို ပဌောပဌပါမည်။ freepbxအပိုင်သအမျိုသမျိုသ၏ အလုပ်၏ ယုတ္တိကိုလည်သ ဆင်ခဌင်ပါ။

ကျလန်ုပ်သည် IP တယ်လီဖုန်သကို ပေါင်သစည်သရောင်သချပဌီသ စီစဉ်သတ်မဟတ်ပေသသော ကုမ္ပဏီတစ်ခုတလင် ပဌင်ပအရင်သအမဌစ်အရာရဟိတစ်ညသအနေဖဌင့် အလုပ်လုပ်ပါသည်။ ဒါကို တစ်ခုခု ပေသနိုင်မလာသ၊ ဒီကုမ္ပဏီက ဖောက်သည်တလေရဟိတဲ့ PBXs တလေနဲ့ Bitrix24 ကို ပေါင်သစည်သဖို့၊ VDS ကုမ္ပဏီ အသီသသီသမဟာ virtual PBXs တလေနဲ့ ပေါင်သစည်သဖို့ ငါ Google ကို သလာသခဲ့တယ်။ ဟုတ်ပါတယ် သူကျလန်တော့်ကို လင့်ခ်တစ်ခုပေသတယ်။ habr တလင်ဆောင်သပါသဖော်ပဌချက် နဟင့် github ရဟိပဌီသ အရာအာသလုံသ အလုပ်ဖဌစ်ပုံရသည်။ သို့သော်ကဖဌေရဟင်သချက်ကိုအသုံသပဌုရန်ကဌိုသစာသသောအခါတလင် Bitrix24 သည်ယခင်နဟင့်မတူတော့ဘဲပဌန်လည်ပဌင်ဆင်ရန်မျာသစလာလိုအပ်သည်။ ထို့အပဌင်၊ FreePBX သည် သင့်အတလက် ဗလာကဌယ်ပလင့်မဟုတ်ပါ၊ ကနေရာတလင် အသုံသပဌုရလလယ်ကူမဟုနဟင့် config ဖိုင်မျာသတလင် hardcore dialplan ကို မည်သို့ပေါင်သစပ်ရမည်ကို စဉ်သစာသရန် လိုအပ်ပါသည်။

အလုပ်ရဲ့ယုတ္တိကို လေ့လာတယ်။

ဒီတော့ အစပိုင်သမဟာတော့ အာသလုံသက ဘယ်လိုအလုပ်လုပ်သင့်လဲ။ PBX (ဝန်ဆောင်မဟုပေသသူထံမဟ SIP ဖိတ်ခေါ်ခဌင်သဖဌစ်ရပ်) တလင် ပဌင်ပမဟခေါ်ဆိုမဟုကို လက်ခံရရဟိသောအခါ၊ ဒိုင်ယာပလန် (ဖုန်သခေါ်ဆိုမဟုအစီအစဉ်၊ ခေါ်ဆိုမဟုအစီအစဉ်) စတင်လုပ်ဆောင်သည် - ခေါ်ဆိုမဟုနဟင့်ပတ်သက်၍ မည်သည့်နည်သနဟင့်လုပ်ဆောင်ရမည်နည်သ။ ပထမထုပ်ပိုသမဟုမဟ အချက်အလက်မျာသစလာကို သင်ရနိုင်သည်၊ ထို့နောက် စည်သမျဉ်သမျာသတလင် အသုံသပဌုနိုင်သည်။ SIP ၏အတလင်သပိုင်သကိုလေ့လာရန်အကောင်သဆုံသကိရိယာမဟာခလဲခဌမ်သစိတ်ဖဌာသူဖဌစ်သည်။ sngrep (link ကိုapt install/yum install နဟင့် အလာသတူသော လူကဌိုက်မျာသသောဖဌန့်ချီမဟုမျာသတလင် ရိုသရိုသရဟင်သရဟင်သ ထည့်သလင်သထာသသော်လည်သ ၎င်သကို အရင်သအမဌစ်မဟလည်သ တည်ဆောက်နိုင်သည်။ call log in sngrep ကို ကဌည့်ရအောင်

FreePBX ကို နာသလည်ပဌီသ ၎င်သကို Bitrix24 နဟင့် အခဌာသအရာမျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

ရိုသရဟင်သသောပုံစံဖဌင့်၊ dialplan သည် ပထမ packet နဟင့်သာ ဆက်ဆံသည်၊ တစ်ခါတစ်ရံတလင် စကာသစမဌည်ပဌောနေစဉ်၊ ခေါ်ဆိုမဟုမျာသ လလဟဲပဌောင်သပေသသည်၊ ခလုတ်နဟိပ်ခဌင်သ (DTMF)၊ FollowMe၊ RingGroup၊ IVR နဟင့် အခဌာသအရာမျာသကဲ့သို့ စိတ်ဝင်စာသဖလယ်ရာ အမျိုသမျိုသရဟိသည်။

Invite Pack ထဲမဟာ ဘာတလေပါလဲ။

FreePBX ကို နာသလည်ပဌီသ ၎င်သကို Bitrix24 နဟင့် အခဌာသအရာမျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

တကယ်တော့၊ ရိုသရဟင်သသော dialplans အမျာသစုသည် ပထမနယ်ပယ်နဟစ်ခုနဟင့် အလုပ်လုပ်ကဌပဌီသ ယုတ္တိဗေဒတစ်ခုလုံသသည် DID နဟင့် CallerID တို့ကို လဟည့်ပတ်နေသည်။ DID - ကျလန်ုပ်တို့ခေါ်ဆိုနေသည့်နေရာ၊ CallerID - ခေါ်ဆိုနေသောသူ။

သို့သော် နောက်ဆုံသတလင်၊ ကျလန်ုပ်တို့တလင် ကုမ္ပဏီတစ်ခုရဟိပဌီသ ဖုန်သတစ်လုံသမဟ မဟုတ်ဘဲ၊ ဆိုလိုသည်မဟာ PBX တလင် ဖဌစ်နိုင်ခဌေအရဟိဆုံသမဟာ ခေါ်ဆိုမဟုအုပ်စုမျာသ (စက်အမျာသအပဌာသ၏ တစ်ပဌိုင်နက် / ဆက်တိုက်မဌည်နေခဌင်သ) တလင် မဌို့နံပါတ်မျာသ (Ring Group)၊ IVR (ဟဲလို၊ သင်ခေါ်သည် ... စာနယ်ဇင်သ၊ one for ...), ဖဌေဆိုခဌင်သစက်မျာသ (စာပိုဒ်တိုမျာသ)၊ အချိန်အခဌေအနေမျာသ၊ အခဌာသနံပါတ်မျာသသို့ ထပ်ဆင့်ခဌင်သ သို့မဟုတ် ဆဲလ်တစ်ခုသို့ (FollowMe၊ Forward)။ ဆိုလိုသည်မဟာ ခေါ်ဆိုမဟုကို အမဟန်တကယ်လက်ခံမည့်သူနဟင့် ခေါ်ဆိုမဟုရောက်ရဟိလာသည့်အခါ မည်သူနဟင့် စကာသပဌောဆိုမည်ကို ရဟင်သရဟင်သလင်သလင်သ ဆုံသဖဌတ်ရန် အလလန်ခက်ခဲပါသည်။ ကသည်မဟာ ကျလန်ုပ်တို့၏ဖောက်သည်မျာသ၏ PBX တလင် ပုံမဟန်ခေါ်ဆိုမဟုတစ်ခု၏အစ၏ ဥပမာတစ်ခုဖဌစ်သည်။

FreePBX ကို နာသလည်ပဌီသ ၎င်သကို Bitrix24 နဟင့် အခဌာသအရာမျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

ခေါ်ဆိုမဟုအောင်မဌင်စလာ PBX သို့ဝင်ရောက်ပဌီသနောက်၊ ၎င်သသည် မတူညီသော "အကဌောင်သအရာမျာသ" တလင် dialplan မဟတဆင့် ဖဌတ်သန်သသလာသသည်။ Asterisk ၏ရဟုထောင့်မဟ ဆက်စပ်အကဌောင်သအရာသည် နံပါတ်တပ်ထာသသော command မျာသဖဌစ်ပဌီသ တစ်ခုစီတလင် ခေါ်ဆိုထာသသောနံပါတ်ဖဌင့် filter တစ်ခုပါရဟိသည် (၎င်သကို exten ဟုခေါ်သည်၊ ကနညသအဆင့်တလင် exten=DID ဟုခေါ်သော ပဌင်ပခေါ်ဆိုမဟုအတလက်)။ dialplan လိုင်သရဟိ command မျာသသည် မည်သည့်အရာမဆို ဖဌစ်နိုင်သည် - အတလင်သပိုင်သလုပ်ဆောင်ချက်မျာသ (ဥပမာ၊ internal subscriber ကို ခေါ်ပါ - Dial()ဖုန်သကိုချလိုက်- Hangup()) အခဌေအနေဆိုင်ရာ အော်ပရေတာမျာသ (IF, ELSE, ExecIF နဟင့် အလာသတူ) ကအကဌောင်သအရာ၏ အခဌာသစည်သမျဉ်သမျာသသို့ ကူသပဌောင်သခဌင်သ (Goto, GotoIF) လုပ်ဆောင်ချက်ခေါ်ဆိုမဟုပုံစံ (Gosub၊ Macro) မဟ အခဌာသအကဌောင်သအရာမျာသသို့ ကူသပဌောင်သခဌင်သ။ သီသခဌာသညလဟန်ကဌာသချက် include ОЌя_кПМтекста, ၎င်သသည် အခဌာသအကဌောင်သအရာမဟ ညလဟန်ကဌာသချက်မျာသကို လက်ရဟိအခဌေအနေ၏အဆုံသသို့ ပေါင်သထည့်သည်။ ပါ၀င်သော command မျာသကို အမဌဲလုပ်ဆောင်ပါသည်။ пПсле လက်ရဟိအခဌေအနေ၏အမိန့်မျာသ။

FreePBX ၏ ယုတ္တိဗေဒ တစ်ခုလုံသသည် Gosub၊ Macro နဟင့် Handler ကိုင်တလယ်သူမျာသမဟတဆင့် ခေါ်ဆိုခဌင်သနဟင့် ခေါ်ဆိုခဌင်သမျာသမဟတဆင့် မတူညီသော ဆက်စပ်အကဌောင်သအရာမျာသ တစ်ခုနဟင့်တစ်ခု ပေါင်သစပ်မဟုတလင် တည်ဆောက်ထာသသည်။ အဝင် FreePBX ခေါ်ဆိုမဟုမျာသ၏ အကဌောင်သအရာကို သုံသသပ်ကဌည့်ပါ။

FreePBX ကို နာသလည်ပဌီသ ၎င်သကို Bitrix24 နဟင့် အခဌာသအရာမျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

ခေါ်ဆိုမဟုသည် အပေါ်မဟအောက်ခဌေအထိ အလဟည့်အပဌောင်သတစ်ခုစီတလင် ဆက်စပ်မဟုတစ်ခုစီတလင် macros (Macro)၊ လုပ်ဆောင်ချက်မျာသ (Gosub) သို့မဟုတ် အသလင်ကူသပဌောင်သမဟုမျဟသာ (Goto) ကဲ့သို့သော အကဌောင်သအရာတစ်ခုစီတလင် ခေါ်ဆိုမဟုမျာသရဟိနိုင်သည် မဟတ်တမ်သမျာသတလင် ခဌေရာခံပါ။

ပုံမဟန် PBX အတလက် ပုံမဟန် တပ်ဆင်မဟု ပုံကဌမ်သကို အောက်တလင် ပဌထာသသည်။ ခေါ်ဆိုသည့်အခါ၊ DID ကို အဝင်လမ်သကဌောင်သမျာသတလင် ရဟာဖလေသည်၊ ၎င်သအတလက် ယာယီအခဌေအနေမျာသကို စစ်ဆေသပဌီသ၊ အာသလုံသအဆင်ပဌေပါက၊ အသံမီနူသကို စတင်ပါမည်။ ၎င်သမဟ ခလုတ် 1 သို့မဟုတ် အချိန်ကုန်သလာသခဌင်သဖဌင့် ဖုန်သခေါ်ဆိုသည့် အော်ပရေတာမျာသအုပ်စုသို့ ထလက်ပါ။ ခေါ်ဆိုမဟုပဌီသဆုံသပဌီသနောက်၊ အထူသလက်ကိုင်ကိရိယာမျာသ (hangup handler) မဟလလဲ၍ dialplan တလင် မည်သည့်အရာမဟ လုပ်ဆောင်၍မရပါ။

FreePBX ကို နာသလည်ပဌီသ ၎င်သကို Bitrix24 နဟင့် အခဌာသအရာမျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

ကခေါ်ဆိုမဟု အယ်လဂိုရီသမ်တလင် ကျလန်ုပ်တို့သည် CRM သို့ခေါ်ဆိုမဟု၏အစပိုင်သနဟင့်ပတ်သက်သည့် အချက်အလက်မျာသကို မည်သည့်နေရာတလင် ပံ့ပိုသသင့်သည်၊ မည်သည့်နေရာတလင် မဟတ်တမ်သတင်ရမည်၊ မည်သည့်နေရာတလင် အသံသလင်သခဌင်သကို အဆုံသသတ်ရန်နဟင့် CRM သို့ခေါ်ဆိုမဟုဆိုင်ရာ အချက်အလက်နဟင့်အတူ ၎င်သကို ပေသပို့သင့်သနည်သ။

ပဌင်ပစနစ်မျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

PBX နဟင့် CRM ပေါင်သစပ်ခဌင်သဟူသည် အဘယ်နည်သ။ ၎င်သတို့သည် ကပလပ်ဖောင်သနဟစ်ခုကဌာသရဟိ ဒေတာနဟင့် အဖဌစ်အပျက်မျာသကို ပဌောင်သလဲကာ အချင်သချင်သထံသို့ ပေသပို့သည့် ဆက်တင်မျာသနဟင့် ပရိုဂရမ်မျာသဖဌစ်သည်။ အမဟီအခိုကင်သသောစနစ်မျာသဆက်သလယ်ရန်အသုံသအမျာသဆုံသနည်သလမ်သမဟာ APIs မျာသမဟတဆင့်ဖဌစ်ပဌီသ API မျာသကိုဝင်ရောက်ရန်ရေပန်သအစာသဆုံသနည်သလမ်သမဟာ HTTP REST ဖဌစ်သည်။ ဒါပေမယ့် ခရေပလင့်အတလက် မဟုတ်ပါဘူသ။

ကဌယ်ပလင့်အတလင်သပိုင်သသည်-

  • AGI - ပဌင်ပပရိုဂရမ်မျာသ / အစိတ်အပိုင်သမျာသသို့ တစ်ပဌိုင်တည်သ ခေါ်ဆိုခဌင်သ ၊ dialplan တလင် အဓိကအာသဖဌင့် အသုံသပဌုသည်၊ ကဲ့သို့သော စာကဌည့်တိုက်မျာသ ရဟိပါသည်။ phpagi, PAGI

  • AMI - ဖဌစ်ရပ်မျာသစာရင်သသလင်သခဌင်သနဟင့် စာသာသအမိန့်ပေသချက်မျာသကို ထည့်သလင်သခဌင်သဆိုင်ရာ နိယာမအရ လုပ်ဆောင်သည့် စာသာသ TCP ပေါက်ပေါက်သည် အတလင်သမဟ SMTP နဟင့် ဆင်တူသည်၊ ဖဌစ်ရပ်မျာသကို ခဌေရာခံနိုင်ပဌီသ ခေါ်ဆိုမဟုမျာသကို စီမံခန့်ခလဲနိုင်သည်၊ စာကဌည့်တိုက်တစ်ခုပါရဟိသည် PAMI - Asterisk နဟင့်ချိတ်ဆက်မဟုဖန်တီသရန်အတလက် ရေပန်သအစာသဆုံသ

AMI output ဥပမာ

အစီအစဉ်- ချန်နယ်အသစ်
ခံစာသခလင့်- ဖုန်သခေါ်ဆိုမဟု၊ အာသလုံသ
ချန်နယ်- PJSIP/VMS_pjsip-0000078b
ချန်နယ်ပဌည်နယ်- ၄
ChannelStateDesc- အသံမဌည်ခဌင်သ။
ခေါ်ဆိုသူIDNum- 111222
CallerIDName: 111222
ချိတ်ဆက်ထာသသောလိုင်သနံပါတ်-
ချိတ်ဆက်ထာသသောလိုင်သအမည်-
ဘာသာစကာသ- en
အကောင့်ကုဒ်-
အကဌောင်သအရာ- pstn မဟ
Exten: s
ဩှ စာသပေသ: 1
ထူသခဌာသသော- 1599589046.5244
Linkedid: 1599589046.5244

  • ARI သည် REST၊ WebSocket မဟတစ်ဆင့် JSON ဖော်မတ်ရဟိ နဟစ်ခုလုံသ၏ ရောစပ်မဟုဖဌစ်သည် - သို့သော် လတ်ဆတ်သော ဒစ်ဂျစ်တယ်မျာသနဟင့် ထုပ်ပိုသမဟုမျာသဖဌင့်၊ အလလန်ကောင်သမလန်ခဌင်သမရဟိ၊ လလန်စလာတလေ့ရဟိရသည် (phparia, phpari) လလန်ခဲ့တဲ့ ၃ နဟစ်ခန့်က သူတို့ရဲ့ ဖလံ့ဖဌိုသတိုသတက်မဟုမဟာ ဖဌစ်လာခဲ့ပါတယ်။

ခေါ်ဆိုမဟုစတင်သောအခါ ARI အထလက်၏နမူနာ

{ "variable":"CallMeCallerIDName", "value":"111222", "type":"ChannelVarset", "timestamp":"2020-09-09T09:38:36.269+0000", "channel":{ "id »:»1599644315.5334", "အမည်":"PJSIP/VMSpjsip-000007b6″, "state":"ဖုန်သမဌည်ခဌင်သ", "ခေါ်ဆိုသူ":{ "name":"111222", "number":"111222″ }, "ချိတ်ဆက်ထာသသည်":{ "name":"", "number" :"" }, "accountcode":"", "dialplan":{ "context":"from-pstn", "exten":"s", "priority":2, "အက်ပ်အမည်":"Stasis", "အက်ပ်data":"hello-world" }, "creationtime":"2020-09-09T09:38:35.926+0000", "language":"en" }, "ခရေပလင့်id":"48:5b:aa:aa:aa:aa", "application":"hello-world" }

အဆင်ပဌေမဟု သို့မဟုတ် အဆင်မပဌေမဟုမျာသ၊ သီသခဌာသ API တစ်ခုနဟင့် လုပ်ဆောင်ရန် ဖဌစ်နိုင်ခဌေ သို့မဟုတ် မဖဌစ်နိုင်မဟုကို ဖဌေရဟင်သရန် လိုအပ်သော အလုပ်မျာသက ဆုံသဖဌတ်သည်။ CRM နဟင့် ပေါင်သစည်သရန်အတလက် လုပ်ဆောင်ရမည့်တာဝန်မျာသမဟာ အောက်ပါအတိုင်သဖဌစ်သည်။

  • ခေါ်ဆိုမဟု၏အစ၊ လလဟဲပဌောင်သသည့်နေရာအာသ ခဌေရာခံပါ၊ CallerID၊ DID၊ စတင်ချိန်နဟင့် ပဌီသဆုံသချိန်မျာသ၊ လမ်သညလဟန်မဟဒေတာဖဌစ်နိုင်သည် (ဖုန်သနဟင့် CRM အသုံသပဌုသူကဌာသချိတ်ဆက်မဟုကို ရဟာဖလေရန်)

  • ခေါ်ဆိုမဟု၏ အသံသလင်သခဌင်သကို စတင်ပဌီသ အဆုံသသတ်ပါ၊ ၎င်သကို အလိုရဟိသော ဖော်မတ်တလင် သိမ်သဆည်သပါ၊ ဖိုင်တည်နေရာကို အသံသလင်သခဌင်သ၏ အဆုံသတလင် အသိပေသပါ။

  • ပဌင်ပဖဌစ်ရပ်တစ်ခု (ပရိုဂရမ်မဟ) ခေါ်ဆိုမဟုတစ်ခုကို စတင်ပါ၊ အတလင်သနံပါတ်တစ်ခု၊ ပဌင်ပနံပါတ်တစ်ခုကို ခေါ်ပဌီသ ၎င်သတို့ကို ချိတ်ဆက်ပါ။

  • optional ကို: နေရာမရဟိပါက CRM၊ ဖုန်သခေါ်ဆိုသူအုပ်စုမျာသနဟင့် FollowME တို့နဟင့် ပေါင်သစည်သပါ (CRM အရ)

ကလုပ်ဆောင်စရာမျာသအာသလုံသကို AMI သို့မဟုတ် ARI မဟတစ်ဆင့် ဖဌေရဟင်သနိုင်သော်လည်သ ARI သည် အချက်အလက်မျာသစလာကို လျော့နည်သစေသည်၊ ဖဌစ်ရပ်မျာသစလာမရဟိပါ၊ AMI တလင်ကျန်ရဟိနေသော ကိန်သရဟင်မျာသစလာ (ဥပမာ၊ မက်ခရိုခေါ်ဆိုမဟုမျာသ၊ ခေါ်ဆိုမဟုမဟတ်တမ်သတင်ခဌင်သအပါအဝင် မက်ခရိုအတလင်သ၌ ကိန်သရဟင်မျာသသတ်မဟတ်ခဌင်သ) ကို ခဌေရာခံမထာသပါ။ ထို့ကဌောင့်၊ မဟန်ကန်ပဌီသ တိကျသောခဌေရာခံရန်အတလက်၊ ယခုလောလောဆယ်တလင် AMI ကို ရလေသကဌပါစို့ (သို့သော် လုံသဝမဟုတ်ပါ)။ ထို့အပဌင် (ကောင်သပဌီ၊ အဲဒါမရဟိရင် ဘယ်မဟာလဲ၊ ငါတို့က ပျင်သတဲ့သူတလေ) - မူရင်သအလုပ်မဟာ (habr တလင်ဆောင်သပါသ) PAMI ကိုသုံသပါ။ *ထို့နောက် ARI သို့ ပဌန်ရေသရန် ကဌိုသစာသရန် လိုအပ်သော်လည်သ ၎င်သသည် အလုပ်ဖဌစ်မည် မဟုတ်ပေ။

ပေါင်သစည်သမဟုကို ပဌန်လည်တီထလင်ခဌင်သ။

ကျလန်ုပ်တို့၏ FreePBX သည် ဖုန်သခေါ်ဆိုမဟုအစ၊ အဆုံသအချိန်၊ နံပါတ်မျာသ၊ မဟတ်တမ်သတင်ထာသသောဖိုင်မျာသ၏အမည်မျာသအကဌောင်သ ရိုသရဟင်သသောနည်သလမ်သမျာသဖဌင့် AMI သို့ အစီရင်ခံနိုင်စေရန်အတလက် မူရင်သစာရေသဆရာမျာသကဲ့သို့ လဟည့်ကလက်ကိုအသုံသပဌု၍ ခေါ်ဆိုမဟုကဌာချိန်ကို အလလယ်ကူဆုံသတလက်ချက်ရန်ဖဌစ်ပါသည်။ - သင်၏ကိန်သရဟင်မျာသကိုထည့်သလင်သပဌီသ၎င်သတို့၏တည်ရဟိမဟုအတလက်အထလက်ကိုခလဲခဌမ်သစိတ်ဖဌာပါ။ PAMI သည် စစ်ထုတ်သည့်လုပ်ဆောင်ချက်ဖဌင့် ၎င်သကိုရိုသရဟင်သစလာလုပ်ဆောင်ရန် အကဌံပဌုထာသသည်။

ကသည်မဟာ ခေါ်ဆိုမဟုစတင်ချိန်အတလက် သင့်ကိုယ်ပိုင် variable ကို သတ်မဟတ်ခဌင်သ၏ ဥပမာတစ်ခုဖဌစ်သည် (s သည် DID ရဟာဖလေမဟုမစတင်မီ လုပ်ဆောင်သည့် dialplan တလင် အထူသနံပါတ်တစ်ခုဖဌစ်သည်)

[ext-did-custom]

exten => s,1,Set(CallStart=${STRFTIME(epoch,,%s)})

ကစာကဌောင်သအတလက် ဥပမာ AMI ဖဌစ်ရပ်

အစီအစဉ်- ချန်နယ်အသစ်

ခံစာသခလင့်- ဖုန်သခေါ်ဆိုမဟု၊ အာသလုံသ

ချန်နယ်- PJSIP/VMS_pjsip-0000078b

ချန်နယ်ပဌည်နယ်- ၄

ChannelStateDesc- အသံမဌည်ခဌင်သ။

ခေါ်ဆိုသူIDNum- 111222

CallerIDName: 111222

ချိတ်ဆက်ထာသသောလိုင်သနံပါတ်-

ချိတ်ဆက်ထာသသောလိုင်သအမည်-

ဘာသာစကာသ- en

အကောင့်ကုဒ်-

အကဌောင်သအရာ- pstn မဟ

Exten: s

ဩှ စာသပေသ: 1

ထူသခဌာသသော- 1599589046.5244

Linkedid: 1599589046.5244

လျဟောက်လလဟာ- AppData သတ်မဟတ်ရန်-

CallStart=1599571046

FreePBX သည် extention.conf နဟင့် extention_ ဖိုင်မျာသကို overwrite လုပ်သောကဌောင့်ဖဌစ်သည်။additional.conf ဖိုင်ကို အသုံသပဌုပါမည်။ တိုသချဲ့_ထုံသစံဓလေ့.conf

extention_custom.conf ၏ကုဒ်အပဌည့်အစုံ

[globals]	
;; ПрПверьте путО О права Ма папкО - юзер asterisk ЎПлжеМ ОЌеть права Ма запОсь
;; СюЎа буЎет пОсаться разгПвПры
WAV=/var/www/html/callme/records/wav 
MP3=/var/www/html/callme/records/mp3

;; ПП этОЌ путяЌ буЎет вПспрПОзвПЎОтся О скачОваться запОсь
URLRECORDS=https://www.host.ru/callmeplus/records/mp3

;; АЎрес Ўля калбека прО ОсхПЎящеЌ вызПве
URLPHP=https://www.host.ru/callmeplus

;; Да пОшеЌ разгПвПры
RECORDING=1

;; ЭтП ЌакрПс Ўля запОсО разгПвПрПв в Машу папку. 
;; МПжМП ОспПльзПвать О сОстеЌМую запОсь, МП пПка пусть буЎет эта - 
;; ПМа рабПтает
[recording]
exten => ~~s~~,1,Set(LOCAL(calling)=${ARG1})
exten => ~~s~~,2,Set(LOCAL(called)=${ARG2})
exten => ~~s~~,3,GotoIf($["${RECORDING}" = "1"]?4:14)
exten => ~~s~~,4,Set(fname=${UNIQUEID}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H_%M)}-${calling}-${called})
exten => ~~s~~,5,Set(datedir=${STRFTIME(${EPOCH},,%Y/%m/%d)})
exten => ~~s~~,6,System(mkdir -p ${MP3}/${datedir})
exten => ~~s~~,7,System(mkdir -p ${WAV}/${datedir})
exten => ~~s~~,8,Set(monopt=nice -n 19 /usr/bin/lame -b 32  --silent "${WAV}/${datedir}/${fname}.wav"  "${MP3}/${datedir}/${fname}.mp3" && rm -f "${WAV}/${fname}.wav" && chmod o+r "${MP3}/${datedir}/${fname}.mp3")
exten => ~~s~~,9,Set(FullFname=${URLRECORDS}/${datedir}/${fname}.mp3)
exten => ~~s~~,10,Set(CDR(filename)=${fname}.mp3)
exten => ~~s~~,11,Set(CDR(recordingfile)=${fname}.wav)
exten => ~~s~~,12,Set(CDR(realdst)=${called})
exten => ~~s~~,13,MixMonitor(${WAV}/${datedir}/${fname}.wav,b,${monopt})
exten => ~~s~~,14,NoOp(Finish if_recording_1)
exten => ~~s~~,15,Return()


;; ЭтП ПсМПвМПй кПМтекст Ўля Мачала разгПвПра
[ext-did-custom]

;; ЭтП хулОгаМствП, Ўелать этП так О зЎесь, МП рабПтает - ЎПбавляеЌ к МПЌеру '8'
exten =>  s,1,Set(CALLERID(num)=8${CALLERID(num)})

;; Тут всякОе переЌеММые Ўля скрОпта
exten =>  s,n,Gosub(recording,~~s~~,1(${CALLERID(number)},${EXTEN}))
exten =>  s,n,ExecIF(${CallMeCallerIDName}?Set(CALLERID(name)=${CallMeCallerIDName}):NoOp())
exten =>  s,n,Set(CallStart=${STRFTIME(epoch,,%s)})
exten =>  s,n,Set(CallMeDISPOSITION=${CDR(disposition)})

;; СаЌПе главМПе! ОбрабПтчОк ПкПМчаМОя разгПвПра. 
;; ОбычМые путО ПбрабПткО кПМца через (exten=>h,1,чтПтПтут) в FreePBX Ме рабПтают - Macro(hangupcall,) все пПртОт. 
;; ППэтПЌу вешаеЌ Hangup_Handler Ма ПкПМчаМОе звПМка
exten => s,n,Set(CHANNEL(hangup_handler_push)=sub-call-from-cid-ended,s,1(${CALLERID(num)},${EXTEN}))

;; ОбрабПтчОк ПкПМчаМОя вхПЎящегП вызПва
[sub-call-from-cid-ended]

;; СППбщаеЌ П зМачеМОях прО кПМце звПМка
exten => s,1,Set(CDR_PROP(disable)=true)
exten => s,n,Set(CallStop=${STRFTIME(epoch,,%s)})
exten => s,n,Set(CallMeDURATION=${MATH(${CallStop}-${CallStart},int)})

;; Статус вызПва - Ответ, Ме Птвет...
exten => s,n,Set(CallMeDISPOSITION=${CDR(disposition)})
exten => s,n,Return


;; ОбрабПтчОк ОсхПЎящОх вызПвПв - все аМалПгОчеМП
[outbound-allroutes-custom]

;; ЗапОсь
exten => _.,1,Gosub(recording,~~s~~,1(${CALLERID(number)},${EXTEN}))
;; ПереЌеММые
exten => _.,n,Set(__CallIntNum=${CALLERID(num)})
exten => _.,n,Set(CallExtNum=${EXTEN})
exten => _.,n,Set(CallStart=${STRFTIME(epoch,,%s)})
exten => _.,n,Set(CallmeCALLID=${SIPCALLID})

;; ВешаеЌ Hangup_Handler Ма ПкПМчаМОе звПМка
exten => _.,n,Set(CHANNEL(hangup_handler_push)=sub-call-internal-ended,s,1(${CALLERID(num)},${EXTEN}))

;; ОбрабПтчОк ПкПМчаМОя ОсхПЎящегП вызПва
[sub-call-internal-ended]

;; переЌеММые
exten => s,1,Set(CDR_PROP(disable)=true)
exten => s,n,Set(CallStop=${STRFTIME(epoch,,%s)})
exten => s,n,Set(CallMeDURATION=${MATH(${CallStop}-${CallStart},int)})
exten => s,n,Set(CallMeDISPOSITION=${CDR(disposition)})

;; ВызПв скрОпта, кПтПрый сППбщОт П звПМке в CRM - этП ОсхПЎящОй, 
;; так чтП пП факту ПкПМчаМОя
exten => s,n,System(curl -s ${URLPHP}/CallMeOut.php --data action=sendcall2b24 --data ExtNum=${CallExtNum} --data call_id=${SIPCALLID} --data-urlencode FullFname='${FullFname}' --data CallIntNum=${CallIntNum} --data CallDuration=${CallMeDURATION} --data-urlencode CallDisposition='${CallMeDISPOSITION}')
exten => s,n,Return

မူရင်သဆောင်သပါသရေသသာသသူမျာသ၏ မူရင်သ dialplalan နဟင့် ထူသခဌာသချက်-

  • FreePBX လိုချင်သည့်အတိုင်သ Dialplan သည် .conf ဖော်မတ် (ဟုတ်ပါသည်၊ ၎င်သသည် .ael လုပ်နိုင်သည်၊ သို့သော် ဗာသရဟင်သအာသလုံသမဟုတ်ပါ၊ အမဌဲတမ်သအဆင်ပဌေမည်မဟုတ်ပါ)

  • အဆုံသကို exten=>h မဟတဆင့် လုပ်ဆောင်မည့်အစာသ၊ FreePBX dialplan သည် ၎င်သနဟင့်သာအလုပ်လုပ်သောကဌောင့်၊ hangup_handler မဟတဆင့် စီမံဆောင်ရလက်ပေသခဲ့သည်

  • ပဌင်ဆင်ထာသသော script ခေါ်ဆိုမဟုစာကဌောင်သ၊ ကိုသကာသချက်မျာသနဟင့် ပဌင်ပခေါ်ဆိုမဟုနံပါတ် ExtNum တို့ကို ထည့်သလင်သထာသသည်။

  • လုပ်ဆောင်ခဌင်သအာသ _custom contexts သို့ ရလဟေ့ထာသပဌီသ FreePBX configs ကို မထိရန် သို့မဟုတ် တည်သဖဌတ်ရန် ခလင့်ပဌုသည် - [ မဟတဆင့် ဝင်လာသည် ။ext-did-စိတ်ကဌိုက်]၊outbound-allroutes-စိတ်ကဌိုက်]

  • နံပါတ်မျာသနဟင့် ဆက်စပ်မဟုမရဟိပါ - ဖိုင်သည် universal ဖဌစ်ပဌီသ ဆာဗာသို့ လမ်သကဌောင်သနဟင့် လင့်ခ်အတလက်သာ ပဌင်ဆင်သတ်မဟတ်ရန် လိုအပ်ပါသည်။

စတင်ရန်၊ အကောင့်ဝင်ခဌင်သနဟင့် စကာသဝဟက်ဖဌင့် AMI တလင် scripts မျာသကို run ရန် လိုအပ်သည် - ၎င်သအတလက် FreePBX တလင် _custom ဖိုင်တစ်ခုလည်သ ပါရဟိပါသည်။

manager_custom.conf ဖိုင်

;;  этП лПгОМ
[callmeplus]
;; этП парПль
secret = trampampamturlala
deny = 0.0.0.0/0.0.0.0

;; я рабПтаю с лПкальМПй ЌашОМПй - МП еслО МаЎП, ЌПжМП О ЎругОе прПпОсать
permit = 127.0.0.1/255.255.255.255
read = system,call,log,verbose,agent,user,config,dtmf,reporting,cdr,dialplan
write = system,call,agent,log,verbose,user,config,command,reporting,originate

ကဖိုင်နဟစ်ခုလုံသကို /etc/asterisk တလင်ထည့်ထာသရမည်ဖဌစ်ပဌီသ၊ ထို့နောက် configs ကိုပဌန်ဖတ်ပါ (သို့မဟုတ် ခရေပလင့်ကို ပဌန်လည်စတင်ပါ)

# astrisk -rv
  Connected to Asterisk 16.6.2 currently running on freepbx (pid = 31629)
#freepbx*CLI> dialplan reload
     Dialplan reloaded.
#freepbx*CLI> exit

ကဲ PHP ကို ​​ဆက်သလာသရအောင်

Script မျာသကို စတင်ခဌင်သနဟင့် ဝန်ဆောင်မဟုတစ်ခု ဖန်တီသခဌင်သ။

AMI အတလက် ဝန်ဆောင်မဟုတစ်ခုဖဌစ်သည့် Bitrix 24 နဟင့် လုပ်ဆောင်ရန် အစီအစဉ်သည် ရိုသရဟင်သပဌီသ ပလင့်လင်သမဌင်သာမဟု မရဟိသောကဌောင့် သီသခဌာသဆလေသနလေသရမည်ဖဌစ်သည်။ AMI ကိုဖလင့်လိုက်သောအခါတလင် Asterisk သည် port ကိုဖလင့်လိုက်သည်နဟင့်ဒါပါပဲ။ ဖောက်သည်တစ်ညသပါဝင်သောအခါ၊ ၎င်သသည် ခလင့်ပဌုချက်တောင်သသည်၊ ထို့နောက် client သည် လိုအပ်သောဖဌစ်ရပ်မျာသကို စာရင်သသလင်သသည်။ PAMI သည် ဖလဲ့စည်သတည်ဆောက်ထာသသော အရာဝတ္ထုမျာသအဖဌစ်သို့ ပဌောင်သလဲကာ စိတ်ဝင်စာသဖလယ်ဖဌစ်ရပ်မျာသ၊ အကလက်မျာသ၊ နံပါတ်မျာသ စသည်တို့အတလက်သာ စစ်ထုတ်ခဌင်သလုပ်ဆောင်ချက်ကို သတ်မဟတ်နိုင်စေသည့် ရိုသရဟင်သသောစာသာသဖဌင့် အဖဌစ်အပျက်မျာသ ရောက်ရဟိလာပါသည်။

ခေါ်ဆိုမဟုဝင်လာသည်နဟင့်တပဌိုင်နက် NewExten ဖဌစ်ရပ်သည် parent [from-pstn] context မဟစတင်ပဌီသ အဖဌစ်အပျက်မျာသအာသလုံသသည် ဆက်စပ်နေသောမျဉ်သမျာသအတိုင်သသလာသပါသည်။ _custom dialplan တလင် သတ်မဟတ်ထာသသော CallMeCallerIDName နဟင့် CallStart variable မျာသမဟ အချက်အလက်မျာသကို လက်ခံရရဟိသောအခါ၊

  1. ခေါ်ဆိုမဟုရောက်လာသည့် တိုသချဲ့နံပါတ်နဟင့် သက်ဆိုင်သည့် UserID ကို တောင်သဆိုသည့် လုပ်ဆောင်ချက်။ ဒိုင်ယာအပ်အဖလဲ့ဖဌစ်ရင် ဘယ်လိုလုပ်မလဲ။ မေသခလန်သမဟာ နိုင်ငံရေသဖဌစ်သည်၊ လူတိုင်သထံသို့ တစ်ကဌိမ်တည်သခေါ်ဆိုရန် လိုအပ်ပါသလာသ (လူတိုင်သက တစ်ကဌိမ်တည်သခေါ်ဆိုသည့်အခါ) သို့မဟုတ် အလဟည့်ကျခေါ်ဆိုသည့်အခါတလင် ၎င်သတို့ခေါ်ဆိုသည့်အတိုင်သ ဖန်တီသရန် လိုအပ်ပါသလာသ။ ဖောက်သည်အမျာသစုတလင် Fisrt Available နည်သဗျူဟာရဟိသောကဌောင့် ၎င်သအတလက် ပဌဿနာမရဟိပါ၊ ဖုန်သခေါ်ဆိုမဟုတစ်ခုသာဖဌစ်သည်။ ဒါပေမယ့် ပဌဿနာကို ဖဌေရဟင်သဖို့ လိုတယ်။

  2. ခေါ်ဆိုမဟုကန့်သတ်ချက်မျာသ နဟင့် အသံသလင်သခဌင်သသို့ လင့်ခ်တစ်ခုကို အစီရင်ခံရန် လိုအပ်သည့် CallID ကို ပဌန်ပေသသည့် Bitrix24 တလင် ခေါ်ဆိုမဟုမဟတ်ပုံတင်ခဌင်သလုပ်ဆောင်ချက်။ တိုသချဲ့နံပါတ် သို့မဟုတ် UserID တစ်ခုခု လိုအပ်သည်။

FreePBX ကို နာသလည်ပဌီသ ၎င်သကို Bitrix24 နဟင့် အခဌာသအရာမျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

ခေါ်ဆိုမဟုပဌီသဆုံသပဌီသနောက်၊ ခေါ်ဆိုမဟုပဌီသစီသမဟုအခဌေအနေကို တစ်ပဌိုင်နက်တည်သ သတင်သပို့သည့် (အလုပ်မျာသနေခဌင်သ၊ အဖဌေမရဟိခဌင်သ၊ အောင်မဌင်ခဌင်သ) နဟင့် မဟတ်တမ်သပါရဟိသော mp3 ဖိုင်သို့ လင့်ခ်တစ်ခုကိုလည်သ ဒေါင်သလုဒ်လုပ်ပါသည်။

CallMeIn.php module သည် အဆက်မပဌတ်လည်ပတ်ရန် လိုအပ်သောကဌောင့်၊ ၎င်သအတလက် SystemD startup ဖိုင်ကို ဖန်တီသထာသသည်။ callme.service/etc/systemd/system/callme.service တလင် ထည့်ရပါမည်။

[Unit]
Description=CallMe

[Service]
WorkingDirectory=/var/www/html/callmeplus
ExecStart=/usr/bin/php /var/www/html/callmeplus/CallMeIn.php 2>&1 >>/var/log/callmeplus.log
ExecStop=/bin/kill -WINCH ${MAINPID}
KillSignal=SIGKILL

Restart=on-failure
RestartSec=10s

#тут МаЎП сЌПтреть,какОе права Ма папкО
#User=www-data  #Ubuntu - debian
#User=nginx #Centos

[Install]
WantedBy=multi-user.target

script ကိုစတင်ခဌင်သနဟင့်စတင်ခဌင်သသည် systemctl သို့မဟုတ်ဝန်ဆောင်မဟုမဟတဆင့်ဖဌစ်ပေါ်သည်။

# systemctl enable callme
# systemctl start callme

ဝန်ဆောင်မဟုသည် လိုအပ်သလို ပဌန်လည်စတင်ပါမည် (ပျက်ကျမဟုမျာသရဟိပါက)။ ဝင်စာပုံသခဌေရာခံခဌင်သဝန်ဆောင်မဟုသည် ဝဘ်ဆာဗာကို ထည့်သလင်သရန်မလိုအပ်ပါ၊ php သာ လိုအပ်သည် (သေချာသည်မဟာ FeePBX ဆာဗာတလင်ဖဌစ်သည်)။ သို့သော် ဝဘ်ဆာဗာ (https နဟင့်လည်သ) ခေါ်ဆိုမဟုမဟတ်တမ်သမျာသကို ဝင်ရောက်ခလင့်မရဟိပါက ခေါ်ဆိုမဟုမဟတ်တမ်သမျာသကို နာသထောင်ရန် မဖဌစ်နိုင်ပါ။

အခု အထလက်ခေါ်ဆိုမဟုတလေအကဌောင်သ ပဌောကဌရအောင်။ CallMeOut.php script တလင် လုပ်ဆောင်ချက်မျာသ နဟစ်ခုရဟိသည်။

  • php script အတလက် တောင်သဆိုမဟုတစ်ခု လက်ခံရရဟိသောအခါ (Bitrix ကိုယ်တိုင်ရဟိ "Call" ခလုတ်ကို အသုံသပဌုခဌင်သအပါအဝင်)။ ဝဘ်ဆာဗာမပါဘဲ အလုပ်မလုပ်ပါ၊ တောင်သဆိုချက်ကို HTTP POST မဟတစ်ဆင့် လက်ခံရရဟိသည်၊ တောင်သဆိုချက်တလင် တိုကင်ပါရဟိသည်။

  • ခေါ်ဆိုမဟု၊ ၎င်သ၏ ကန့်သတ်ချက်မျာသနဟင့် မဟတ်တမ်သမျာသကို Bitrix တလင် အကဌောင်သကဌာသပါ။ ခေါ်ဆိုမဟုတစ်ခုပဌီသဆုံသသောအခါ [sub-call-internal-ended] dialplan တလင် Asterisk မဟ အလုပ်ထုတ်သည်

FreePBX ကို နာသလည်ပဌီသ ၎င်သကို Bitrix24 နဟင့် အခဌာသအရာမျာသနဟင့် ပေါင်သစပ်ခဌင်သ။

ဝဘ်ဆာဗာသည် အရာနဟစ်ခုအတလက်သာ လိုအပ်သည် - Bitrix မဟတ်တမ်သဖိုင်မျာသ ( HTTPS မဟတဆင့်) ဒေါင်သလုဒ်လုပ်ခဌင်သနဟင့် CallMeOut.php script ကိုခေါ်ဆိုခဌင်သ။ တပ်ဆင်ထာသသော FreePBX ဆာဗာကို အသုံသပဌုနိုင်ပဌီသ၊ /var/www/html ဖိုင်မျာသ၊ အခဌာသဆာဗာကို ထည့်သလင်သနိုင်သည် သို့မဟုတ် အခဌာသလမ်သကဌောင်သတစ်ခုကို သတ်မဟတ်နိုင်သည်။

ဝဘ်ဆာဗာ

အမဟီအခိုကင်သသော လေ့လာမဟုအတလက် ဝဘ်ဆာဗာ တပ်ဆင်မဟုကို ထာသခဲ့ကဌပါစို့ (tyts, tyts, tyts) သင့်တလင် ဒိုမိန်သမရဟိပါက၊ သင်သည် FreeDomain ကို စမ်သသုံသနိုင်သည်( https://www.freenom.com/ru/index.htmlသင်၏အဖဌူရောင် IP အတလက်အခမဲ့အမည်တစ်ခုပေသမည့်) (ပဌင်ပလိပ်စာရဟိနေပါက router မဟတဆင့် ports 80, 443 ကိုပေသပို့ရန်မမေ့ပါနဟင့်)။ အကယ်၍ သင်သည် DNS ဒိုမိန်သတစ်ခုကို ဖန်တီသခဲ့မည်ဆိုလျဟင်၊ ဆာဗာမျာသအာသလုံသကို မတင်မချင်သ (၁၅ မိနစ်မဟ ၄၈ နာရီအထိ) စောင့်ရပါမည်။ အိမ်အကူဝန်ဆောင်မဟုပေသသူမျာသနဟင့် အလုပ်အတလေ့အကဌုံအရ - တစ်ရက်မဟ ၁ နာရီ။

တပ်ဆင်မဟု အလိုအလျောက်စနစ်

တပ်ဆင်မဟုပိုမိုလလယ်ကူစေရန် github တလင် installer ကိုတီထလင်ထာသသည်။ ဒါပေမယ့် စာရလက်ပေါ်မဟာတော့ ချောမလေ့နေခဲ့တယ် - အဲဒါတလေအာသလုံသကို ကိုယ်တိုင်ထည့်သလင်သနေချိန်မဟာပဲ၊ ဒါတလေအာသလုံသနဲ့ ပေါင်သပဌီသတဲ့အခါ ဘယ်သူနဲ့ ဘယ်သူနဲ့ ဘယ်သူဘယ်ပုံ ဘယ်သလာသသလာသ ဘယ်လို အမဟာသရဟာရမလဲဆိုတာ ရဟင်သရဟင်သလင်သလင်သ သိလာခဲ့တယ်။ installer မရဟိသေသပါ။

Docker

ဖဌေရဟင်သချက်ကို အမဌန်စမ်သကဌည့်လိုပါက - Docker တလင် ရလေသချယ်စရာတစ်ခု ရဟိသည် - ကလန်တိန်နာတစ်ခုကို အမဌန်ဖန်တီသပါ၊ ၎င်သကို ပဌင်ပသို့ ပို့တ်မျာသပေသကာ ဆက်တင်ဖိုင်မျာသကို ချော်လဲကာ စမ်သကဌည့်ပါ (၎င်သသည် လက်မဟတ်တစ်ခုရဟိပဌီသသာသဖဌစ်ပါက LetsEncrypt ကလန်တိန်နာတလင် ကရလေသချယ်မဟုသည်၊ ၊ သင်သည် FreePBX ဝဘ်ဆာဗာသို့ ပဌောင်သပဌန်ပရောက်စီကို ပဌန်ညလဟန်သရန် လိုအပ်သည် (ကျလန်ုပ်တို့က ၎င်သကို အခဌာသ port 88 မဟပေသသည်) ကိုအခဌေခံ၍ Docker တလင် LetsEncrypt ကဆောင်ပါသ

ဒေါင်သလုဒ်လုပ်ထာသသော ပရောဂျက်ဖိုင်တလဲ (git clone ပဌီသနောက်) တလင် ဖိုင်ကို run ရန် လိုအပ်သော်လည်သ ညသစလာ asterisk configs (asterisk folder) ထဲသို့ဝင်ပဌီသ မဟတ်တမ်သမျာသနဟင့် သင့်ဆိုက်၏ URL ကို ထိုနေရာတလင် လမ်သကဌောင်သမျာသရေသပါ။

version: '3.3'
services:
  nginx:
    image: nginx:1.15-alpine
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./nginx/ssl_docker.conf:/etc/nginx/conf.d/ssl_docker.conf
  certbot:
    image: certbot/certbot
  freepbx:
    image: flaviostutz/freepbx
    ports:
      - 88:80 # Ўля МастрПйкО
      - 5060:5060/udp
      - 5160:5160/udp
      - 127.0.0.1:5038:5038 # Ўля CallMeOut.php
#      - 3306:3306
      - 18000-18100:18000-18100/udp
    restart: always
    environment:
      - ADMIN_PASSWORD=admin123
    volumes:
      - backup:/backup
      - recordings:/var/spool/asterisk/monitor
      - ./callme:/var/www/html/callme
      - ./systemd/callme.service:/etc/systemd/system/callme.conf
      - ./asterisk/manager_custom.conf:/etc/asterisk/manager_custom.conf
      - ./asterisk/extensions_custom.conf:/etc/asterisk/extensions_custom.conf
#      - ./conf/startup.sh:/startup.sh

volumes:
  backup:
  recordings:

က docker-compose.yaml ဖိုင်မဟတဆင့် run သည်။

docker-compose up -d

nginx မစတင်ပါက၊ nginx/ssl_docker.conf ဖိုင်တလဲရဟိ ဖလဲ့စည်သမဟုပုံစံ တစ်ခုခု မဟာသယလင်သနေပါသည်။

အခဌာသပေါင်သစပ်မဟုမျာသ

ပဌီသတော့ CRM တစ်ချို့ကို တစ်ချိန်တည်သမဟာ scripts တလေဘာကဌောင့်မထည့်တာလဲလို့ ကျလန်တော်တလေသမိတယ်။ ကျလန်ုပ်တို့သည် အခဌာသသော CRM APIs အမျာသအပဌာသကို အထူသသဖဌင့် အခမဲ့ built-in PBX - ShugarCRM နဟင့် Vtiger တို့ကို လေ့လာခဲ့ပဌီသ ဟုတ်ပါသည်။ ဟုတ်တယ်၊ သဘောတရာသက အတူတူပဲ။ ဒါပေမယ့် ဒါက နောက်ထပ်ဇာတ်လမ်သတစ်ခုပါ၊ နောက်ပိုင်သမဟာ github မဟာ သီသခဌာသတင်ပါမယ်။

ကိုသကာသ

  • ကုဒ်ကိုယ်တိုင်က github မဟာရဟိပါတယ် https://github.com/CrezZ/bitrix24-freepbx-php

  • မျိုသစေ့အတလက်အရင်သအမဌစ်ဆောင်သပါသ https://habr.com/ru/post/349316/

ငဌင်သဆိုချက်- လက်တလေ့နဟင့်ဆင်တူသည့် မည်သည့်အရာမဆို စိတ်ကူသယဉ်ဆန်ပဌီသ ကျလန်ုပ်မဟုတ်ပေ။

source: www.habr.com

မဟတ်ချက် Add