ʻOiaʻiʻo, nui ka poʻe o ʻoukou, e like me aʻu, i manaʻo e hana i kahi mea kūʻokoʻa. Ma kēia ʻatikala e wehewehe au i nā pilikia ʻenehana a me nā hoʻonā i loaʻa iaʻu i ka wā e hoʻomohala ai i ka PBX. Malia paha e kōkua kēia i kekahi e hoʻoholo i ko lākou manaʻo ponoʻī, a me kekahi e hahai i ke ala hele maikaʻi, no ka mea, ua pōmaikaʻi wau i ka ʻike o nā paionia.
Manaʻo a me nā koi koʻikoʻi
A ua hoʻomaka wale me ke aloha Ke kiʻi (framework for building communication applications), automation of telephony and installations freepbx (ke kikowaena pūnaewele no Ke kiʻi). Inā ʻaʻohe kikoʻī o ka ʻoihana a hāʻule i loko o nā mea hiki freepbx - maikaʻi nā mea a pau. Ua hana ʻia ka hoʻonohonoho holoʻokoʻa i loko o XNUMX mau hola, ua loaʻa i ka hui kahi PBX i hoʻonohonoho ʻia, kahi mea hoʻohana-aloha a me ka hoʻomaʻamaʻa pōkole me ke kākoʻo inā makemake ʻia.
Akā ʻaʻole maʻamau nā hana hoihoi loa a laila ʻaʻole ia he mea kupanaha. Ke kiʻi hiki ke hana i nā mea he nui, akā no ka mālama ʻana i ka ʻaoʻao pūnaewele i ka hana, pono e hoʻolilo i nā manawa he nui. No laila hiki i kahi kikoʻī liʻiliʻi ke lōʻihi ma mua o ke kau ʻana i ke koena o ka PBX. A ʻo ka manaʻo, ʻaʻole ia he lōʻihi ka manawa e kākau ai i kahi kikowaena pūnaewele, akā aia ke kiko i nā hiʻohiʻona hale. freepbx. Nā ʻano hoʻolālā a me nā ʻano hana freepbx ua waiho ʻia i ka manawa o php4, a i kēlā manawa aia he php5.6 i hiki ke maʻalahi a maʻalahi nā mea a pau.
ʻO ka mauʻu hope loa he dialplans kiʻi ma ke ʻano o ke kiʻi. I koʻu hoʻāʻo ʻana e kūkulu i kekahi mea e like me kēia no freepbx, Ua maopopo iaʻu he mea pono iaʻu e kākau hou a maʻalahi ke kūkulu ʻana i kahi mea hou.
ʻO nā koi nui:
- hoʻonohonoho maʻalahi, hiki ke loaʻa i kahi luna hoʻomalu novice. No laila, ʻaʻole pono nā hui i ka mālama ʻana i ka PBX ma kā mākou ʻaoʻao,
- hoʻololi maʻalahi i hiki ke hoʻopau ʻia nā hana i ka manawa kūpono,
- maʻalahi o ka hoʻohui ʻana me PBX. U freepbx ʻaʻohe API no ka hoʻololi ʻana i nā hoʻonohonoho, ʻo ia hoʻi. ʻAʻole hiki iā ʻoe, no ka laʻana, hana i nā hui a i ʻole nā menu leo mai kahi noi ʻaoʻao ʻekolu, ʻo ka API wale nō Ke kiʻi,
- opensource - no nā polokalamu polokalamu he mea nui kēia no ka hoʻololi ʻana i ka mea kūʻai.
ʻO ka manaʻo o ka hoʻomohala wikiwiki ʻana e loaʻa nā hana āpau i nā modules i ke ʻano o nā mea. Pono nā mea āpau i ka papa makua maʻamau, ʻo ia hoʻi, ua ʻike mua ʻia nā inoa o nā hana nui a no laila aia nā hoʻokō paʻamau. E ʻae nā mea iā ʻoe e hōʻemi nui i ka helu o nā hoʻopaʻapaʻa ma ke ʻano o nā hui hui me nā kī kaula, hiki iā ʻoe ke ʻike ma freepbx Hiki ke nānā i ka hana holoʻokoʻa a me nā hana pūnana. I ka hihia o nā mea, hōʻike ʻo banal autocompletion i nā waiwai āpau, a ma ke ʻano maʻamau e maʻalahi ke ola i nā manawa he nui. Eia kekahi, ua hoʻoponopono ka hoʻoilina a me ka wehewehe hou ʻana i nā pilikia he nui me nā hoʻololi.
ʻO ka mea aʻe i hoʻolōʻihi i ka manawa hana hou a pono ke pale ʻia ʻo ka hana hou ʻana. Inā he module ke kuleana no ke kelepona ʻana i kahi limahana, pono e hoʻohana nā modula ʻē aʻe a pau e pono e hoʻouna i kahi kelepona i kahi limahana, a ʻaʻole e hana i kā lākou kope ponoʻī. No laila, inā pono ʻoe e hoʻololi i kekahi mea, a laila pono ʻoe e hoʻololi i kahi hoʻokahi wale nō a ʻo ka ʻimi ʻana no "pehea e hana ai" pono e hana ʻia ma kahi hoʻokahi, ʻaʻole ʻimi ʻia i loko o ka papahana holoʻokoʻa.
ʻO ka mana mua a me nā hewa mua
Ua mākaukau ka prototype mua i loko o hoʻokahi makahiki. ʻO ka PBX holoʻokoʻa, e like me ka mea i hoʻolālā ʻia, he modular, a ʻaʻole hiki i nā modula ke hoʻohui i nā hana hou no ka hoʻoponopono kelepona ʻana, akā hoʻololi pū i ke kikowaena pūnaewele ponoʻī.
ʻAe, ʻo ka manaʻo o ke kūkulu ʻana i kahi dialplan ma ke ʻano o ia ʻano hoʻolālā ʻaʻole iaʻu, akā maʻalahi loa ia a ua hana like wau no Ke kiʻi.
Ma ke kākau ʻana i kahi module, hiki i nā mea polokalamu ke:
- hana i kāu hana ponoʻī no ka hana kelepona, hiki ke kau ʻia ma ke kiʻikuhi, a me ka papa kuhikuhi o nā mea ma ka hema,
- hana i kāu mau ʻaoʻao ponoʻī no ka pūnaewele pūnaewele a hoʻohui i kāu mau mamana i nā ʻaoʻao i loaʻa (inā ua hoʻolako ka mea hoʻomohala ʻaoʻao no kēia),
- e hoʻohui i kāu mau hoʻonohonoho i ka papa hoʻonohonoho nui a i ʻole e hana i kāu pā hoʻonohonoho ponoʻī,
- hiki i ka mea polokalamu ke hoʻoili mai kahi module i loaʻa, hoʻololi i kahi ʻāpana o ka hana a hoʻopaʻa inoa iā ia ma lalo o kahi inoa hou a i ʻole e pani i ka module kumu.
No ka laʻana, penei ka hana ʻana i kāu papa kuhikuhi leo ponoʻī:
......
class CPBX_MYIVR extends CPBX_IVR
{
function __construct()
{
parent::__construct();
$this->_module = "myivr";
}
}
.....
$myIvrModule = new CPBX_MYIVR();
CPBXEngine::getInstance()->registerModule($myIvrModule,__DIR__); //Зарегистрировать новый модуль
CPBXEngine::getInstance()->registerModuleExtension($myIvrModule,'ivr',__DIR__); //Подменить существующий модуль
ʻO nā hoʻokō paʻakikī mua i lawe mai i ka haʻaheo mua a me nā hemahema mua. Ua hauʻoli wau i ka hana ʻana, ua hiki iaʻu ke hana hou i nā hiʻohiʻona nui freepbx. Ua hauʻoli wau i ka makemake o ka poʻe i ka manaʻo o ka papahana. Nui nā koho e hoʻomaʻamaʻa i ka hoʻomohala ʻana, akā i kēlā manawa ua maʻalahi kekahi o nā hana.
ʻO ka API no ka hoʻololi ʻana i ka hoʻonohonoho PBX he mea pōʻino - ʻaʻole i like ka hopena i kā mākou makemake. Ua lawe au i ka loina like ma freepbx, ma ke kaomi ʻana i ke pihi Apply, hana hou ʻia ka hoʻonohonoho holoʻokoʻa a hoʻomaka hou nā modules.
Ua like me keia:
*ʻO ka Dialplan kahi lula (algorithm) kahi e hana ʻia ai kahi kelepona.
Akā me kēia koho, hiki ʻole ke kākau i kahi API maʻamau no ka hoʻololi ʻana i nā hoʻonohonoho PBX. ʻO ka mea mua, hoʻololi ka hana o ka noi ʻana i Ke kiʻi lōʻihi loa a me ke kumu waiwai.
ʻO ka lua, ʻaʻole hiki iā ʻoe ke kāhea i ʻelua mau hana i ka manawa like, no ka mea e hana ʻelua i ka hoʻonohonoho.
ʻO ke kolu, pili ia i nā hoʻonohonoho āpau, me nā mea i hana ʻia e ka luna hoʻoponopono.
Ma kēia mana, e like me Askozia, ua hiki ke hana i ka hoʻonohonoho ʻana o nā modules i hoʻololi wale ʻia a hoʻomaka hou i nā modules pono wale nō, akā ʻo kēia nā hapa hapalua. Ua pono e hoʻololi i ke ala.
Manaʻo lua. Huki ka ihu i ka huelo paʻa
ʻO ka manaʻo e hoʻoponopono i ka pilikia ʻaʻole ia e hana hou i ka hoʻonohonoho a me ka dialplan no Ke kiʻi, akā mālama i ka ʻike i ka waihona a heluhelu pololei mai ka waihona i ka wā e hoʻoponopono ai i ke kelepona. Ke kiʻi Ua ʻike mua wau pehea e heluhelu ai i nā hoʻonohonoho mai ka waihona, e hoʻololi wale i ka waiwai ma ka waihona a e hoʻokō ʻia ke kelepona aʻe me ka noʻonoʻo ʻana i nā loli, a ua kūpono ka hana no ka heluhelu ʻana i nā ʻāpana dialplan. REALTIME_HASH.
I ka hopena, ʻaʻohe pono e hoʻomaka hou Ke kiʻi i ka hoʻololi ʻana i nā hoʻonohonoho a hoʻomaka nā hoʻonohonoho āpau e hoʻopili koke ʻia i Ke kiʻi.
ʻO nā hoʻololi wale i ka dialplan ka hoʻohui ʻana i nā helu hoʻonui a me kėia manawa. Akā, he mau wahi hoʻololi liʻiliʻi kēia
exten=>101,1,GoSub(‘sub-callusers’,s,1(1)); - точечное изменение, добавляется/изменяется через ami
; sub-callusers – универсальная функция генерится при установке модуля.
[sub-callusers]
exten =>s,1,Noop()
exten =>s,n,Set(LOCAL(TOUSERID)=${ARG1})
exten =>s,n,ClearHash(TOUSERPARAM)
exten =>s,n,Set(HASH(TOUSERPARAM)=${REALTIME_HASH(rl_users,id,${LOCAL(TOUSERID)})})
exten =>s,n,GotoIf($["${HASH(TOUSERPARAM,id)}"=""]?return)
...
Hiki iā ʻoe ke hoʻohui a hoʻololi paha i kahi laina ma ka dialplan me ka hoʻohana ʻana Ami (ka mea hoʻomalu Ke kiʻi) a ʻaʻole pono e hoʻomaka hou i ka dialplan holoʻokoʻa.
Ua hoʻoponopono kēia i ka pilikia me ka API hoʻonohonoho. Hiki iā ʻoe ke hele pololei i loko o ka waihona a hoʻohui i kahi hui hou a hoʻololi paha, no ka laʻana, ka manawa dial-up ma ke kahua "dialtime" no ka hui a ʻo ke kelepona aʻe e mau ana i ka manawa i ʻōlelo ʻia (ʻAʻole kēia he ʻōlelo aʻoaʻo no hana, no ka mea, pono kekahi mau hana API Ami kelepona).
ʻO nā hoʻokō paʻakikī mua i lawe hou mai i ka haʻaheo a me ka hōʻeha. Ua hauʻoli wau i ka hana ʻana. Ua lilo ka waihona i loulou koʻikoʻi, ua hoʻonui ʻia ka hilinaʻi ma ka disk, ʻoi aku ka nui o nā pilikia, akā ua hana nā mea a pau me ka pilikia ʻole. A ʻo ka mea nui loa, i kēia manawa hiki ke hana ʻia nā mea a pau e hiki ke hana ʻia ma o ka pilina pūnaewele ma o ka API, a ua hoʻohana ʻia nā ʻano like. Eia kekahi, ua hoʻopau ka pūnaewele pūnaewele i ka pihi "hoʻopili i nā hoʻonohonoho i ka PBX", i poina pinepine ʻia e nā luna.
ʻO ka hōʻino ʻia ʻo ka hoʻomohala ʻana i ʻoi aku ka paʻakikī. Mai ka mana mua, ua hoʻokumu ka ʻōlelo PHP i kahi dialplan ma ka ʻōlelo Ke kiʻi a ʻaʻole hiki ke heluhelu ʻia, me ka ʻōlelo ponoʻī Ke kiʻi no ke kākau ʻana i ka dialplan he mea kahiko loa ia.
He aha kona ʻano:
$usersInitSection = $dialplan->createExtSection('usersinit-sub','s');
$usersInitSection
->add('',new Dialplanext_gotoif('$["${G_USERINIT}"="1"]','exit'))
->add('',new Dialplanext_set('G_USERINIT','1'))
->add('',new Dialplanext_gosub('1','s','sub-AddOnAnswerSub','usersconnected-sub'))
->add('',new Dialplanext_gosub('1','s','sub-AddOnPredoDialSub','usersinitondial-sub'))
->add('',new Dialplanext_set('LOCAL(TECH)','${CUT(CHANNEL(name),/,1)}'))
->add('',new Dialplanext_gotoif('$["${LOCAL(TECH)}"="SIP"]','sipdev'))
->add('',new Dialplanext_gotoif('$["${LOCAL(TECH)}"="PJSIP"]','pjsipdev'))
I ka lua o ka mana, ua lilo ka dialplan i ke ao holoʻokoʻa, ua hoʻokomo ʻia nā koho hoʻoponopono āpau e pili ana i nā ʻāpana a ua hoʻonui nui ʻia kona nui. ʻO kēia mau mea a pau i hoʻolōʻihi i ka manawa hoʻomohala, a ʻo ka manaʻo e pono hou ke hoʻopilikia i ka dialplan ua kaumaha iaʻu.
Manaʻo ʻekolu
ʻAʻole ka manaʻo e hoʻoponopono i ka pilikia Ke kiʻi dialplan mai php a hoʻohana FastAGI a kākau i nā lula hana āpau ma PHP ponoʻī. FastAGI Ua apono Ke kiʻi, e hana i ke kelepona, hoʻohui i ke kumu. Loaʻa i nā kauoha mai laila mai a hoʻouna i nā hopena. No laila, aia ka loina o ka dialplan ma waho o nā palena Ke kiʻi a hiki ke kākau ʻia ma kekahi ʻōlelo, ma kaʻu hihia ma PHP.
Ua nui ka ho'āʻo a me ka hewa. ʻO ka pilikia nui ua loaʻa iaʻu nā papa he nui / faila. He 1,5 kekona paha ka hana ʻana i nā mea, hoʻomaka, a hoʻopaʻa inoa kekahi i kekahi, a ʻo kēia lohi i kēlā me kēia kelepona ʻaʻole ia he mea hiki ke mālama ʻole ʻia.
Pono ka hoʻomaka ʻana i hoʻokahi wale nō a no laila ua hoʻomaka ka ʻimi ʻana i kahi hopena me ke kākau ʻana i kahi lawelawe ma php me ka hoʻohana ʻana Pthreads. Ma hope o hoʻokahi pule o ka hoʻokolohua, ua hoʻopaʻa ʻia kēia koho ma muli o ka paʻakikī o ka hana ʻana o kēia hoʻonui. Ma hope o hoʻokahi mahina o ka hoʻāʻo ʻana, pono wau e haʻalele i ka polokalamu asynchronous ma PHP; Pono wau i kahi mea maʻalahi, kamaʻāina i kēlā me kēia PHP hoʻomaka, a he nui nā hoʻonui ʻia no PHP.
ʻO ka hopena ʻo kā mākou lawelawe ponoʻī multi-threaded ma C, i hui pū ʻia me PHPLIB. Hoʻouka ia i nā faila ATS php a pau, kali no ka hoʻomaka ʻana o nā modules a pau, hoʻohui i kahi kelepona i kekahi i kekahi, a ke mākaukau nā mea a pau, hūnā ia. I ka ninau ana e FastAGI Ua hana ʻia kahi kahawai, kahi kope mai ka cache o nā papa āpau a hoʻopuka hou ʻia ka ʻikepili i loko, a hāʻawi ʻia ka noi i ka hana php.
Me kēia hoʻonā, ka manawa mai ka hoʻouna ʻana i kahi kelepona i kā mākou lawelawe i ke kauoha mua Ke kiʻi ua emi mai ka 1,5s a hiki i ka 0,05s a pili iki keia manawa i ka nui o ka papahana.
ʻO ka hopena, ua hoʻemi nui ʻia ka manawa no ka hoʻomohala ʻana i ka dialplan, a hiki iaʻu ke mahalo i kēia no ka mea pono wau e kākau hou i ka dialplan holoʻokoʻa o nā modules āpau ma PHP. ʻO ka mea mua, pono e kākau ʻia nā ala ma php e kiʻi i kahi mea mai ka waihona; pono lākou e hōʻike ʻia ma ka ʻaoʻao pūnaewele, a ʻo ka lua, a ʻo ia ka mea nui, hiki i ka hopena ke hana maʻalahi me nā kaula me nā helu a me nā arrays. me ka waihona waihona a me nā hoʻonui PHP he nui.
No ka hana ʻana i ka dialplan ma ka papa module pono ʻoe e hoʻokō i ka hana dialplanDynamicCall a me ka hoopaapaa pbxCallRequest e loaʻa i kahi mea e launa pū me Ke kiʻi.
Eia kekahi, ua hiki ke hoʻopau i ka dialplan (ua loaʻa iā php ka xdebug a hana ia no kā mākou lawelawe), hiki iā ʻoe ke neʻe i kēlā me kēia pae ma ka nānā ʻana i nā waiwai o nā ʻano.
ʻIkepili kelepona
Pono nā ʻikepili a me nā hōʻike e hōʻiliʻili pono i ka ʻikepili, a ua hele pū kēia poloka PBX i ka nui o ka hoʻāʻo a me ka hewa mai ka mua a hiki i ke kolu. ʻO ka manawa pinepine, he hōʻailona ka ʻikepili kelepona. Hoʻokahi kelepona = hoʻokahi leo: ʻo wai i kāhea, ʻo wai i pane, pehea ka lōʻihi o kā lāua kamaʻilio ʻana. Ma nā koho hoihoi hou aʻe, aia kahi hōʻailona hou e hōʻike ana i ka mea hana PBX i kāhea ʻia i ka wā kelepona. Akā, uhi wale kēia mau mea i kahi hapa o nā pono.
ʻO nā koi mua:
- e ho'okoe wale i ka mea i hea aku ka PBX, akā, ka mea i pane mai, no ka mea aia nā interceptions a pono e noʻonoʻo ʻia kēia i ka wā e nānā ana i nā kelepona,
- manawa ma mua o ka hui ʻana me kahi limahana. In freepbx a me kekahi mau PBX'ē aʻe, ua manaʻo ʻia ua pane ʻia ke kelepona i ka wā e lawe ai ka PBX i ke kelepona. Akā no ka papa kuhikuhi leo pono ʻoe e kiʻi i ke kelepona, no laila e pane ʻia nā kelepona āpau a lilo ka manawa kali no kahi pane i 0-1 kekona. No laila, ua hoʻoholo ʻia e mālama ʻaʻole wale i ka manawa ma mua o ka pane ʻana, akā ʻo ka manawa ma mua o ka hoʻopili ʻana me nā modules kī (ʻo ka module ponoʻī e hoʻonohonoho i kēia hae.
- no kahi dialplan paʻakikī, i ka wā e hele ai kahi kelepona ma waena o nā hui like ʻole, pono e hiki ke nānā kaʻawale i kēlā me kēia mea.
ʻO ka koho maikaʻi loa i lilo i ka wā e hoʻouna ai nā modula PBX i ka ʻike e pili ana iā lākou iho ma nā kelepona a i ka hopena e mālama i ka ʻike ma ke ʻano o kahi lāʻau.
Penei e like ai:
ʻO ka mua, ʻike nui e pili ana i ke kelepona (e like me nā mea ʻē aʻe - ʻaʻohe mea kūikawā).
- Loaʻa i kahi kelepona ma kahi laina waho "No ka ho'āʻo"ma 05:55:52 mai ka helu 89295671458 i ka helu 89999999999, i ka hopena ua pane ʻia e kahi limahana"Kakauolelo2» me ka helu 104. Ua kali ka mea kūʻai aku i 60 kekona a kamaʻilio no 36 kekona.
- limahana "Kakauolelo2"Kahea i 112 a pane mai kekahi limahana"Lunahooponopono1» ma hope o 8 kekona. Kamaʻilio lāua no 14 kekona.
- Hoʻololi ʻia ka mea kūʻai aku i ka limahana "luna1" kahi e hoʻomau ai lākou e kamaʻilio no 13 kekona
Akā ʻo kēia ka piko o ka hau hau; no kēlā me kēia moʻolelo hiki iā ʻoe ke loaʻa kahi moʻolelo kelepona kikoʻī ma o ka PBX.
Hōʻike ʻia nā ʻike āpau ma ke ʻano he nesting o nā kelepona:
- Loaʻa i kahi kelepona ma kahi laina waho "No ka ho'āʻo» ma 05:55:52 mai ka helu 89295671458 a i ka helu 89999999999.
- Ma ka hola 05:55:53 hoʻouna ka laina waho i kahi kelepona i ka Incoming circuit "hōʻike»
- Ke hana nei i kahi kelepona e like me ke kumumanaʻo, ʻo ka module "kahea luna", i loko o ke kelepona he 16 kekona. He module kēia i kūkulu ʻia no ka mea kūʻai aku.
- Module "kahea luna" hoʻouna i kahi kelepona i ka limahana kuleana no ka helu (mea kūʻai aku) "Lunahooponopono1” a kali i 5 kekona no ka pane. ʻAʻole i pane mai ka luna.
- Module "kahea luna"hoʻouna i kahi kelepona i ka hui"Nā luna CORP" He mau luna ʻē aʻe kēia o ka ʻaoʻao like (e noho ana ma ka lumi hoʻokahi) a kali i 11 kekona no ka pane.
- Hui "Nā luna CORP"kāhea i nā limahana"Lunahooponopono1, Lunahooponopono2, Lunahooponopono3"i ka manawa like no 11 kekona. ʻAʻohe pane.
- Pau ke kelepona a ka luna. A hoʻouna ke kaapuni i kahi kelepona i ka module "Ke koho ʻana i kahi ala mai 1c" He module i kākau ʻia no ka mea kūʻai aku. Maanei ua hana ʻia ke kelepona no 0 kekona.
- Hoʻouna ke kaapuni i kahi kelepona i ka papa kuhikuhi leo "Kumu me ke kelepona hou aku" Ua kali ka mea kūʻai ma laila no 31 kekona, ʻaʻohe kelepona hou.
- Hoʻouna ka papahana i kahi kelepona i ka Pūʻulu "Kakauolelo", kahi i kali ai ka mea kūʻai aku i 12 kekona.
- I loko o kahi hui, kāhea ʻia nā limahana 2 i ka manawa like "Kakauolelo1"A"Kakauolelo2" a ma hope o 12 kekona pane ka limahana "Kakauolelo2" Hoʻopili ʻia ka pane i ke kelepona i nā kelepona makua. ʻIke ʻia i loko o ka hui ua pane ʻo ia "Kakauolelo2", i ke kelepona ʻana i pane ʻia ai ke kaapuni "Kakauolelo2" a pane aku i ke kelepona ma ka laina waho me "Kakauolelo2".
ʻO ka mālama ʻana i ka ʻike e pili ana i kēlā me kēia hana a me kā lākou pūnana e hiki ai ke hana i nā hōʻike. ʻO kahi hōʻike ma ka papa kuhikuhi leo e kōkua iā ʻoe e ʻike i ka nui o ke kōkua a i ʻole ke keakea. E kūkulu i kahi hōʻike e pili ana i nā kelepona i hala ʻia e nā limahana, e noʻonoʻo ana ua kāpae ʻia ke kelepona a no laila ʻaʻole i manaʻo ʻia he nalo, a me ka noʻonoʻo ʻana he kelepona hui ia, a ua pane ʻia kekahi ma mua, ʻo ia hoʻi ʻaʻole i hala.
ʻO ia ka mālama ʻana i ka ʻike e ʻae iā ʻoe e lawe kaʻawale i kēlā me kēia hui a hoʻoholo i ka maikaʻi o ka hana ʻana, a kūkulu i ka pakuhi o nā hui i pane ʻia a hala ʻole i ka hola. Hiki iā ʻoe ke nānā i ka pololei o ka pili ʻana i ka luna kuleana ma ka nānā ʻana i nā hoʻoili ma hope o ka hoʻopili ʻana i ka luna.
Hiki iā ʻoe ke hana i nā haʻawina atypical, no ka laʻana, pehea ka nui o nā helu ʻaʻole i loko o ka waihona waihona e kelepona i ka hoʻonui pololei a i ʻole ka pākēneka o nā kelepona puka i hoʻouna ʻia i ke kelepona paʻa.
He aha ka hopena?
ʻAʻole koi ʻia kahi loea e mālama i ka PBX; hiki i ka luna hoʻomalu maʻamau ke hana - hoʻāʻo ʻia ma ka hana.
No ka hoʻololi ʻana, ʻaʻole pono nā loea me nā koʻikoʻi koʻikoʻi; lawa ka ʻike o PHP, no ka mea Ua kākau mua ʻia nā modules no ka protocol SIP, a no ka queue, a no ke kāhea ʻana i kahi limahana, a me nā mea ʻē aʻe. Aia kahi papa ʻōwili no Ke kiʻi. No ka hoʻomohala ʻana i kahi module, hiki i ka mea polokalamu ke (a ma ke ʻano maikaʻi) ke kāhea aku i nā modula i mākaukau. A me ka ʻike Ke kiʻi ʻAʻole pono inā noi ka mea kūʻai aku e hoʻohui i kahi ʻaoʻao me kekahi hōʻike hou. Akā, hōʻike ka hoʻomaʻamaʻa ʻoiai hiki i nā mea polokalamu ʻaoʻao ʻekolu ke hoʻokō, manaʻo lākou i ka palekana me ka ʻole o ka palapala a me ka uhi maʻamau o nā manaʻo, no laila aia nō kahi wahi no ka hoʻomaikaʻi ʻana.
Hiki i nā modula ke:
- hana i nā mana hana kelepona hou,
- hoʻohui i nā poloka hou i ka pilina pūnaewele,
- e hoʻoili mai i kekahi o nā modules i loaʻa, hoʻololi hou i nā hana a hoʻololi iā ia, a i ʻole he kope i hoʻololi iki ʻia,
- e hoʻohui i kāu mau hoʻonohonoho i ke kumu hoʻonohonoho o nā modula ʻē aʻe a ʻoi aku ka nui.
Nā hoʻonohonoho PBX ma o API. E like me ka mea i hōʻike ʻia ma luna, mālama ʻia nā hoʻonohonoho āpau i ka waihona a heluhelu ʻia i ka manawa o ke kelepona ʻana, no laila hiki iā ʻoe ke hoʻololi i nā hoʻonohonoho PBX āpau ma o ka API. I ke kāhea ʻana i ka API, ʻaʻole i hana hou ʻia ka hoʻonohonoho ʻana a ʻaʻole hoʻomaka hou nā modules, no laila, ʻaʻole ia e pili i ka nui o nā hoʻonohonoho a me nā limahana āu i loaʻa ai. Hoʻokō koke ʻia nā noi API a ʻaʻole e pāpā kekahi i kekahi.
Mālama ka PBX i nā hana koʻikoʻi a pau me nā kelepona me nā lōʻihi (kali / kamaʻilio), nesting a ma nā huaʻōlelo PBX (limahana, hui, laina waho, ʻaʻole channel, helu). ʻAe kēia iā ʻoe e kūkulu i nā hōʻike like ʻole no nā mea kūʻai aku a ʻo ka hapa nui o ka hana ʻo ka hana ʻana i kahi mea hoʻohana.
Na ka manawa e hōʻike i nā mea e hiki mai ana. Nui nā nuances e pono e hana hou ʻia, aia nō ka nui o nā hoʻolālā, akā ua hala ka makahiki mai ka hana ʻana o ka mana 3 a hiki iā mākou ke ʻōlelo e hana ana ka manaʻo. ʻO ka hemahema nui o ka mana 3 ʻo ia nā kumuwaiwai lako, akā ʻo kēia ka mea āu e uku ai no ka maʻalahi o ka hoʻomohala ʻana.
Source: www.habr.com