Linux 상자(Debian)에서 실패한 SIP 호출(sipcmd) 로깅

Linux 상자(Debian)에서 실패한 SIP 호출(sipcmd) 로깅

라우터(Fritz!Box) 뒤에 작은 Raspberry Pi(Debian 8 포함)가 설치되어 있으며 모든 SIP 통화에 대해 특정 전화선의 연결 또는 서비스 품질을 확인/분석합니다. 전화 반대편에 자동 응답기가 있습니다. 기본적으로 전화선이 끊어졌을 때를 알아야 합니다.

특히 Raspberry는 Sipcmd 프로그램(https://github.com/tmakkonen/sipcmd) - 아래 코드를 참조하세요.

예약 된 일들:

0 8,14,20 * * * /usr/bin/sipcmd -P sip -u abc -c cba -w 192.168.8.10 -x "c010101010101;ws45000;h"

이제 호출은 잘 작동하지만 텍스트 파일에 기록하는 것과 같은 것이 필요합니다.전화가 연결되지 않거나상당히,전화번호가 연결되지 않을 때, 경보 시스템처럼 작동하고 실패한 상황만 표시합니다.

누구든지 이 문제에 대한 해결책을 갖고 있습니까?

답변1

글쎄, 내 문제에 대한 해결책을 찾았습니다. Sipcmd 프로그램에는 다음과 같은 기능이 있습니다.

-o  --opallog       enable extra opal library logging to file

그래서 cronjob을 다음과 같이 변경했습니다.

0 8,14,20 * * * /usr/bin/sipcmd -o ~/call.log -P sip -u abc -c cba -w 192.168.8.10 -x "c010101010101;ws45000;h"

이제 기존 로그 파일을 사용하여 통화가 연결되었는지 여부를 알려주는 SIP 상태 코드를 grep하는 기능을 사용할 수 있습니다.

누구든지 관심이 있다면 SIP 상태 코드는 다음과 같습니다.

https://de.wikipedia.org/wiki/SIP-Status-Codes

다들 많은 성공을 거두었습니다.

관련 정보