2016-10-18 4 views
0

나는 항상 gammu sms 데몬에서 사용되는 SIM 카드로 전화를 전환 (리디렉션)해야합니다. 전환 작업은 하루에 몇 번 수행 할 수 있습니다. Gammu sms 데몬은 GSM 모뎀과 24 시간 통신이 가능합니다. 데몬이 실행되는 동안 포트로 AT 명령을 보낼 수 없습니다. Gammu 도구 (데몬이 아닌)는 명령을 사용하여 호출을 전환 할 준비가되어 있으며 데몬이 중지되어있는 동안 완벽하게 작동합니다. 물론, 데몬이 명령을 올바르게 실행하면 해당 포트가 사용 중입니다.gammu SMS 데몬에 AT 명령을 입력하십시오.

gammu-smsd에 AT 명령을 부드럽게 주입하고 응답을 읽을 수있는 방법이 있습니까?

내 생각은 다음과 같습니다. 1. 정지 데몬. 2. 전화 전환을 수행하고 결과를 으로 읽습니다. 3. 데몬 을 시작합니다. 그러나이 아이디어는 현명하고 우아한 해결책처럼 보이지 않습니다.

sms 데몬에 명령을 주입 할 수없는 경우 프로세스를 죽이지 않고 데몬을 중지 할 수있는 부드러운 방법이 있습니까? 데몬 작업을 방해하고 싶지는 않지만 SMS를 보냈습니다.

답변

0

SIGUSR1 및 SIGUSR2를 사용하여 SMSD가 일시 중단 된 동안 데몬을 일시 중지했다가 다시 시작하고 Gammu 명령 줄을 사용할 수 있습니다.

자세한 내용은 Gammu SMSD Signals Documentation을 참조하십시오. 이 경우에도 example이 있습니다.

SMSD_PID=`pidof gammu-smsd` 
if [ -z "$SMSD_PID" ] ; then 
    echo "Failed to figure out SMSD PID!" 
else 
    kill -SIGUSR1 $SMSD_PID 
    gammu identify 
    kill -SIGUSR2 $SMSD_PID 
fi 
관련 문제