2016-10-18 65 views
0

我需要在SIM卡上進行呼叫轉移(重定向),gammu sms守護進程一直使用SIM卡。 轉向操作可以每天進行幾次。 Gammu sms守護進程每天24小時與GSM調制解調器通信。 守護進程運行時,我無法發送任何AT命令到端口。 Gammu工具(不是守護進程)已經準備好使用命令轉移呼叫,並且它們完美地工作,而守護進程停止。 當然,當守護進程運行命令正確聲明時,該端口很忙。向gammu短信守護進程注入AT命令

有沒有辦法輕輕地將AT命令注入gammu-smsd並讀取響應?

我的想法是: 1.停止守護進程。 2.執行呼叫轉移,閱讀結果 3.啓動守護進程 但這個想法看起來不像智能或優雅的解決方案。

如果向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