GoESL(https://www.php.cn/link/d9b64cee05c46d31b10b9869a3198a6d)을 Temporal과 통합하여 FreeSWITCH를 통해 자동 전화를 걸고 있습니다. 이 설정에서는 1,000개의 동시 채널과 50개의 CPS(초당 호출)가 허용됩니다. 전화를 걸 때마다 활동을 통해 통화를 시작하는 임시 워크플로가 시작됩니다.
96번의 성공적인 호출(변수 번호) 후에 FreeSWITCH는 더 이상 호출을 처리하지 않습니다. CLI에는 로그가 없으며 이벤트 소켓 계층에는 추가 시도를 나타내는 이벤트가 없습니다. 그러나 임시 작업자를 중지하면 이전에 "멈춘" 호출이 FreeSWITCH CLI에 나타나 GoESL 클라이언트에 의해 대기열에 추가되었음을 나타냅니다. 작업자가 기본 워크플로를 계속 실행하면서 중단되지 않았음을 확인할 수 있습니다.
다음은 관련 코드 조각입니다:
리드 처리 루프:
으아아아전화 접속 안내 논리:
으아아아통화 워크플로 기능:
으아아아통화 시작 활동을 순서대로 실행합니다.
으아아아GoESL 또는 Temporal을 사용하면서 통화가 대기열에 있고 특정 지점 이후에는 실행되지 않는 유사한 문제를 겪은 사람이 있습니까? 이 상황을 디버깅하는 방법이나 임시 작업자 스레드를 종료하면 대기 중인 호출 처리가 트리거될 수 있는 이유에 대한 제안이 있습니까?
내가 시도한 것:
workflow.Sleep
기간은 몇 밀리초에서 5 - 10초로 수정되어 문제를 일으키는 네트워크 대기 시간이 아닌지 확인했습니다. GoESL 패키지(https://www.php.cn/link/d9b64cee05c46d31b10b9869a3198a6d)를 다른 GoESL 패키지(https://www.php.cn/)로 변경하기로 결정했습니다. link/ 8c8566b78ac2b99c542bef8c37cac179) 문제가 해결되었습니다. 초기 GoESL 패키지의 근본적인 문제인 것 같습니다.
앞으로 누군가가 같은 문제를 겪게 될 경우를 대비해 여기 Github 저장소(https://github.com/0x19/goesl/issues/40)에 문제를 제기했습니다.
위 내용은 GoESL 대 임시: 통화가 FreeSWITCH의 특정 지점에서 시작되지 않습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!