నెట్వర్క్లో IP-PBX ఆస్టరిస్క్ మరియు CRM Bitrix24ని ఏకీకృతం చేయడానికి వివిధ ఎంపికలు ఉన్నాయి, కానీ మేము ఇప్పటికీ మా స్వంతంగా వ్రాయాలని నిర్ణయించుకున్నాము.
కార్యాచరణ పరంగా, ప్రతిదీ ప్రామాణికం:
Bitrix24లో క్లయింట్ ఫోన్ నంబర్తో ఉన్న లింక్పై క్లిక్ చేయడం ద్వారా, ఆస్టరిస్క్ క్లయింట్ ఫోన్ నంబర్తో క్లిక్ చేసిన వినియోగదారు యొక్క అంతర్గత నంబర్ను కనెక్ట్ చేస్తుంది. Bitrix24లో, కాల్ యొక్క రికార్డ్ రికార్డ్ చేయబడుతుంది మరియు కాల్ ముగింపులో, సంభాషణ యొక్క రికార్డింగ్ పైకి లాగబడుతుంది.
ఆస్టరిస్క్ బయటి నుండి కాల్ అందుకుంటుంది - Bitrix24 ఇంటర్ఫేస్లో మేము ఈ కాల్ ఎవరి నంబర్కు వచ్చిందో ఆ ఉద్యోగికి క్లయింట్ కార్డ్ని చూపుతాము.
అటువంటి క్లయింట్ లేకపోతే, మేము కొత్త లీడ్ను సృష్టించడం కోసం కార్డ్ని తెరుస్తాము.
కాల్ పూర్తయిన వెంటనే, మేము దీన్ని కార్డ్లో ప్రతిబింబిస్తాము మరియు సంభాషణ యొక్క రికార్డింగ్ను పైకి లాగుతాము.
కట్ క్రింద నేను మీ కోసం ప్రతిదాన్ని ఎలా సెటప్ చేయాలో మీకు చెప్తాను మరియు మీకు గితుబ్కి లింక్ను ఇస్తాను - అవును, అవును, దాన్ని తీసుకొని దాన్ని ఉపయోగించండి!
సాధారణ వివరణ
మేము మా ఇంటిగ్రేషన్ని CallMe అని పిలిచాము. CallMe అనేది PHPలో వ్రాయబడిన చిన్న వెబ్ అప్లికేషన్.
నేను కాన్ఫిగరేషన్, భద్రతా సమస్యలు, సర్టిఫికేట్ పొందడం మరియు వ్యాసం యొక్క పరిధికి వెలుపల వెబ్ సర్వర్ను ఎంచుకోవడం వంటివి వదిలివేస్తాను - దీని గురించి చాలా వ్రాయబడింది. అనువర్తనానికి ఎటువంటి పరిమితులు లేవు, ఇది http మరియు https రెండింటిలోనూ పని చేస్తుంది.
మేము https ఉపయోగిస్తాము, సర్టిఫికేట్ను గుప్తీకరిద్దాం.
మీరు ప్రతిదీ సరిగ్గా చేస్తే, లింక్పై క్లిక్ చేయడం ద్వారా మీరు ఇలాంటివి చూడాలి
Bitrix24ని కాన్ఫిగర్ చేస్తోంది
రెండు వెబ్హుక్లను క్రియేట్ చేద్దాం.
ఇన్కమింగ్ వెబ్హుక్.
అడ్మినిస్ట్రేటర్ ఖాతా కింద (ID 1తో), మార్గాన్ని అనుసరించండి: అప్లికేషన్లు -> Webhooks -> webhook జోడించండి -> ఇన్కమింగ్ webhook
స్క్రీన్షాట్లలో వలె ఇన్కమింగ్ వెబ్హుక్ యొక్క పారామితులను పూరించండి:
మరియు సేవ్ క్లిక్ చేయండి.
సేవ్ చేసిన తర్వాత, Bitrix24 ఇన్కమింగ్ వెబ్హుక్ యొక్క URLని అందిస్తుంది, ఉదాహరణకు:
తుది /ప్రొఫైల్/ లేకుండా మీ URL సంస్కరణను సేవ్ చేయండి - ఇది ఇన్కమింగ్ కాల్లతో పని చేయడానికి అప్లికేషన్లో ఉపయోగించబడుతుంది.
నా దగ్గర ఇది ఉంది https://b24-xsynia.bitrix24.ru/rest/1/7eh61lh8pahw0fwt/
నా దగ్గర ఇది ఉంది xcrp2ylhzzd2v43cmfjqmkvrgrcbkni6. మీరు దీన్ని మీ కోసం కూడా కాపీ చేసుకోవాలి; అవుట్గోయింగ్ కాల్లు చేయడానికి మీకు ఇది అవసరం.
ముఖ్యం!
ఒక SSL ప్రమాణపత్రం తప్పనిసరిగా Bitrix24 సర్వర్లో కాన్ఫిగర్ చేయబడాలి (మీరు letsencrypt ఉపయోగించవచ్చు), లేకుంటే Bitrix api పని చేయదు. మీకు క్లౌడ్ వెర్షన్ ఉంటే, చింతించకండి - ఇది ఇప్పటికే sslని కలిగి ఉంది.
ముఖ్యం!
"ప్రాసెసర్ చిరునామా" ఫీల్డ్ తప్పనిసరిగా ఇంటర్నెట్ నుండి యాక్సెస్ చేయగల చిరునామాను కలిగి ఉండాలి!
మరియు చివరి టచ్గా, కాల్లు చేయడానికి అప్లికేషన్గా మా CallMeOutని ఇన్స్టాల్ చేద్దాం (తద్వారా మీరు PBXలోని నంబర్పై క్లిక్ చేసినప్పుడు, కాల్ను ప్రారంభించే ఆదేశం దూరంగా వెళ్లిపోతుంది).
మెనులో, ఎంచుకోండి: మరిన్ని -> టెలిఫోనీ -> మరిన్ని -> సెట్టింగ్లు, “డిఫాల్ట్ అవుట్గోయింగ్ కాల్ నంబర్”లో సెట్ చేయండి అప్లికేషన్: CallMeOut మరియు “సేవ్” క్లిక్ చేయండి
నక్షత్రం గుర్తును సెటప్ చేస్తోంది
ఆస్టరిస్క్ మరియు Bitrix24 మధ్య విజయవంతమైన పరస్పర చర్య కోసం, మేము AMI వినియోగదారు కాల్మేని manager.confకి జోడించాలి:
ఈ పొడిగింపు కోసం CDR టేబుల్కి ఎంట్రీని నిలిపివేయండి (అక్కడ అవసరం లేదు), కాల్ ముగింపు సమయాన్ని సెట్ చేయండి, కాల్ ఫలితం తెలియకపోతే వ్యవధిని లెక్కించండి - సెట్ (వేరియబుల్ కాల్ మెడిస్పోసిషన్) మరియు, చివరి దశ, సిస్టమ్ కర్ల్ ద్వారా బిట్రిక్స్కు ప్రతిదీ పంపండి.
మరికొంత మేజిక్ - ఇన్కమింగ్ కాల్:
888999 => {
&recording(${CALLERID(number)},${EXTEN});
Answer();
ExecIF(${CallMeCallerIDName}?Set(CALLERID(name)=${CallMeCallerIDName}):NoOp()); // выставляем CallerID если узнали его у Битрикс24
Set(CallStart=${STRFTIME(epoch,,%s)}); // начинаем отсчет времени звонка
Queue(Q1,tT);
Set(CallMeDISPOSITION=${CDR(disposition)});
Hangup();
}
ఇక్కడ మేము ఒక లైన్పై మాత్రమే ఆసక్తి కలిగి ఉన్నాము.
ఆమె PBXని ఇన్స్టాల్ చేయమని చెప్పింది కాలర్ ID(పేరు) వేరియబుల్కు సమానం CallMeCallerIDName.
CallMeCallerIDName వేరియబుల్ కూడా CallMe అప్లికేషన్ ద్వారా సెట్ చేయబడింది (Bitrix24 కాలర్ నంబర్కు పూర్తి పేరుని కలిగి ఉంటే, దానిని ఇలా సెట్ చేయండి కాలర్ ID(పేరు), లేదు - మేము ఏమీ చేయము).
అప్లికేషన్ను సెటప్ చేస్తోంది
అప్లికేషన్ సెట్టింగ్ల ఫైల్ - /var/www/pbx.vistep.ru/config.php
అప్లికేషన్ పారామితుల వివరణ:
కాల్మీడెబగ్ — 1 అయితే, అప్లికేషన్ ద్వారా ప్రాసెస్ చేయబడిన అన్ని ఈవెంట్లు లాగ్ ఫైల్కు వ్రాయబడతాయి, 0 — మేము ఏమీ వ్రాయము
టెక్ - SIP/PJSIP/IAX/మొదలైనవి
authToken — Bitrix24 అధికార టోకెన్, అవుట్గోయింగ్ webhook అధికార కోడ్
bitrixApiUrl - ప్రొఫైల్ లేకుండా ఇన్కమింగ్ వెబ్హుక్ యొక్క URL/
విస్తరణలు - బాహ్య సంఖ్యల జాబితా
సందర్భం - కాల్ను ప్రారంభించే సందర్భం
వినేవారు_సమయం ముగిసింది - నక్షత్రం నుండి ఈవెంట్ ప్రాసెసింగ్ వేగం
నక్షత్రం — నక్షత్రం గుర్తుకు కనెక్ట్ చేయడానికి సెట్టింగ్లతో కూడిన శ్రేణి:
హోస్ట్ — ip లేదా నక్షత్రం సర్వర్ యొక్క హోస్ట్ పేరు
పథకం — కనెక్షన్ రేఖాచిత్రం (tcp://, tls://)
పోర్ట్ - పోర్ట్
<span style="font-family: Mandali; "> యూజర్ పేరు </span> - వినియోగదారు పేరు
రహస్య - పాస్వర్డ్
కనెక్ట్_సమయం ముగిసింది - అనుసంధాన సమయం సమాప్తం
చదవడానికి_సమయం ముగిసింది - చదవడానికి సమయం ముగిసింది
ఉదాహరణ సెట్టింగుల ఫైల్:
<?php
return array(
'CallMeDEBUG' => 1, // дебаг сообщения в логе: 1 - пишем, 0 - не пишем
'tech' => 'SIP',
'authToken' => 'xcrp2ylhzzd2v43cmfjqmkvrgrcbkni6', //токен авторизации битрикса
'bitrixApiUrl' => 'https://b24-xsynia.bitrix24.ru/rest/1/7eh61lh8pahw0fwt/', //url к api битрикса (входящий вебхук)
'extentions' => array('888999'), // список внешних номеров, через запятую
'context' => 'dial_out', //исходящий контекст для оригинации звонка
'asterisk' => array( // настройки для подключения к астериску
'host' => '10.100.111.249',
'scheme' => 'tcp://',
'port' => 5038,
'username' => 'callme',
'secret' => 'JD3clEB8_f23r-3ry84gJ',
'connect_timeout' => 10000,
'read_timeout' => 10000
),
'listener_timeout' => 300, //скорость обработки событий от asterisk
);
సూపర్వైజర్ సెటప్
సూపర్వైజర్ ఆస్టరిస్క్ CallMeIn.php నుండి ఈవెంట్ హ్యాండ్లర్ ప్రాసెస్ను ప్రారంభించడానికి ఉపయోగించబడుతుంది, ఇది ఇన్కమింగ్ కాల్లను పర్యవేక్షిస్తుంది మరియు Bitrix24తో పరస్పర చర్య చేస్తుంది (కార్డ్ చూపించు, కార్డ్ దాచు మొదలైనవి).
ఇది చాలా క్లిష్టంగా మారింది, కానీ అనుభవజ్ఞుడైన నిర్వాహకుడు దీన్ని అమలు చేయగలరని మరియు అతని వినియోగదారులను సంతోషపెట్టగలరని నేను ఖచ్చితంగా అనుకుంటున్నాను.
ప్రశ్నలు, సూచనలు - దయచేసి వాటిని వ్యాఖ్యలలో రాయండి. అలాగే, ఈ ఏకీకరణ యొక్క అభివృద్ధి ఎలా జరిగిందనే దానిపై మీకు ఆసక్తి ఉంటే, వ్రాయండి మరియు తదుపరి వ్యాసంలో నేను ప్రతిదీ మరింత వివరంగా వెల్లడించడానికి ప్రయత్నిస్తాను.