2020namespace Modules \ModuleAmoCrm \bin ;
2121require_once 'Globals.php ' ;
2222
23+ use MikoPBX \Common \Models \PbxSettings ;
2324use MikoPBX \Core \System \BeanstalkClient ;
2425use MikoPBX \Core \System \Util ;
2526use MikoPBX \Core \Workers \WorkerBase ;
2829
2930class WorkerAmoCrmAMI extends WorkerBase
3031{
31- public const CHANNEL_CALL_NAME = 'http://127.0.0.1/pbxcore/api/nchan/pub/pbx-events ' ;
32+ /**
33+ * @return string
34+ */
35+ public static function getChannelUrl (): string
36+ {
37+ $ port = PbxSettings::getValueByKey ('WEBPort ' );
38+ return "http://127.0.0.1: {$ port }/pbxcore/api/nchan/pub/pbx-events " ;
39+ }
3240
3341 private int $ extensionLength = 3 ;
3442 private array $ users = [];
@@ -251,7 +259,7 @@ private function actionCreateCdr($data, $generalNumber):void
251259 $ this ->calls [$ call ['id ' ]][] = $ call ;
252260 }
253261 $ this ->activeChannels [$ data ['src_chan ' ]] = $ data ['src_num ' ];
254- ClientHTTP::sendHttpPostRequest (self ::CHANNEL_CALL_NAME , $ call );
262+ ClientHTTP::sendHttpPostRequest (self ::getChannelUrl () , $ call );
255263 }
256264 }
257265
@@ -419,7 +427,7 @@ private function actionHangupChan($data):void
419427 'user ' => $ userId ,
420428 'action ' => 'hangup '
421429 ];
422- ClientHTTP::sendHttpPostRequest (self ::CHANNEL_CALL_NAME , $ params );
430+ ClientHTTP::sendHttpPostRequest (self ::getChannelUrl () , $ params );
423431 }
424432 }
425433
@@ -466,15 +474,15 @@ private function cloneCdr($data, &$transferCall, $call):void
466474 'dst ' => $ transferCall ['dst ' ],
467475 'action ' => 'call '
468476 ];
469- ClientHTTP::sendHttpPostRequest (self ::CHANNEL_CALL_NAME , $ params );
477+ ClientHTTP::sendHttpPostRequest (self ::getChannelUrl () , $ params );
470478
471479 $ data = [
472480 'action ' => 'answer ' ,
473481 'date ' => $ endTime ,
474482 'id ' => $ data ['linkedid ' ],
475483 'uid ' => $ transferCall ['uid ' ],
476484 ];
477- ClientHTTP::sendHttpPostRequest (self ::CHANNEL_CALL_NAME , $ data );
485+ ClientHTTP::sendHttpPostRequest (self ::getChannelUrl () , $ data );
478486 }
479487
480488 /**
@@ -514,7 +522,7 @@ private function actionDialCreateChan($data):void{
514522 'user ' => $ this ->users [$ number ],
515523 'action ' => 'create-chan '
516524 ];
517- ClientHTTP::sendHttpPostRequest (self ::CHANNEL_CALL_NAME , $ params );
525+ ClientHTTP::sendHttpPostRequest (self ::getChannelUrl () , $ params );
518526 }
519527
520528 /**
@@ -538,7 +546,7 @@ private function actionDialAnswer($params):void
538546 'id ' => $ params ['linkedid ' ],
539547 'uid ' => $ call ['uid ' ],
540548 ];
541- ClientHTTP::sendHttpPostRequest (self ::CHANNEL_CALL_NAME , $ data );
549+ ClientHTTP::sendHttpPostRequest (self ::getChannelUrl () , $ data );
542550 break ;
543551 }
544552 unset($ call );
@@ -567,7 +575,7 @@ private function actionDialEnd($data):void
567575 'dst ' => '' , // Канал назначения не был создан.
568576 'action ' => 'end-dial ' ,
569577 ];
570- ClientHTTP::sendHttpPostRequest (self ::CHANNEL_CALL_NAME , $ call );
578+ ClientHTTP::sendHttpPostRequest (self ::getChannelUrl () , $ call );
571579 }
572580
573581 /**
@@ -611,7 +619,7 @@ private function actionCompleteCdr($data):void
611619 'filename ' => $ data ['recordingfile ' ],
612620 'action ' => 'end-call ' ,
613621 ];
614- ClientHTTP::sendHttpPostRequest (self ::CHANNEL_CALL_NAME , $ call );
622+ ClientHTTP::sendHttpPostRequest (self ::getChannelUrl () , $ call );
615623
616624 // Чистим мусор.
617625 unset(
0 commit comments