**送信状態のアナウンス( WiRES-X ) [#ia76d1e2] SkypeによりWiRES-Xとの音声通信ができ(ここまでは過去事例多々あり)た後に、実際に送信しているかどうか、また後何分話せるか(WiRES-Xは3分で受信に戻る仕様)をClient側に音声で知らせるScriptを作成した。 +動作環境 1)WiRES-X + WiRES-X Chat(Firefly機能を利用して送信受信のフラグをCOM Portにout) 2)[[日記/2012-03-23]]の232RLを使用してRaspberry Pi(v2)のGPIOに接続 3)[[日記/2014-06-14]]のAquestalkがInstall済みであること。 +スクリプト --- /home/pi/bin/ana.sh ---- #!/bin/sh GPIO=18 #使用するGPIOポート ENDTIME=180 #最後のアナウンス時間(秒) ENDMAE=`expr $ENDTIME - 40` REND=`expr $ENDTIME - 25` #初期設定 gpio -g mode 18 in #2分まで待つ cnt=0 while : do data=`gpio -g read 18` if [ "$data" -eq "1" ] ; then while : do echo "$cnt秒経過" if [ "$cnt" -eq "2" ] ; then if [ "$cnt" -eq "1" ] ; then /home/pi/bin/atk "送信開始します" elif [ "$cnt" -eq "30" ] ; then /home/pi/bin/atk "送信中です" elif [ "$cnt" -eq "60" ] ; then /home/pi/bin/atk "一分経過" elif [ "$cnt" -eq "120" ] ; then /home/pi/bin/atk "2分経過" elif [ "$cnt" -eq "$ENDMAE" ] ; then /home/pi/bin/atk "あと30秒です" elif [ "$cnt" -eq "$REND" ] ; then /home/pi/bin/atk "急いで終了して下さい。" else data=`gpio -g read 18` if [ "$data" -eq "0" ] ; then cnt=0 sleep 5 break /home/pi/bin/atk "受信します" cnt=0 sleep 5 break fi fi sleep 1 cnt=`expr $cnt + 1` done fi done #clear #comment #navi(日記) |