ボタンを押すと、このbash機能が実行され、電話がかかりますが、通話が終了したり電話を拒否したりすると、/ dev / ttyに停止してメインプログラムに戻りません。
call.sh
#!/bin/bash
printf %s\\n 'call sip:[email protected]' | cat - /dev/tty |twinkle -c
主なプログラムは次のとおりです。
while(1):
if lcd.buttonPressed(lcd.SELECT):
os.system("./call.sh")
電話がオフラインであるか、電話が拒否された場合、電話は停止し、Pythonプログラムに戻りません。
その後、終了するにはCTRL + CとCTRL + Zを押す必要があり、Pythonプログラムも閉じます。
408 要求タイムアウトエラーまたは 468 Busy Here メッセージの後にデフォルトプログラムに戻ることはできますか?
編集:@mikeservのおかげで答えます。mkfifo /tmp/pipe; exec 3<>/tmp/pipe; (trap '' TTIN TTOU; twinkle -c) <&3 & printf '\ncall sip:'[email protected] >&3
答え1
ボタンを押したときにTwinkleから電話をかけたい場合は、Twinkleのコマンドラインを使用してキーストロークモニタプログラムに直接これを実行することをお勧めします。
Twinkle-c --即時 --sip 呼び出し:[Eメール保護]
ttysなどを操作する方がはるかに簡単です。
それとも、私はあなたの意図を誤解したのでしょうか?