boxee ボックスに接続されたテレビに通知を送信するように callerid スクリプトを取得しようとしています。いくつかのコンピューターで mgetty と notify-send を使用してスクリプトが動作しています。
これは、mgetty によってトリガーされる私の cidscript.sh です。
#!/bin/sh
# send message to computer
ssh -o ConnectTimeout=10 mrplow@192.168.1.10 "DISPLAY=:0 notify-send 'Phone call from... $CALLER_NAME $CALLER_ID'" &
sleep 0.2
ssh -o ConnectTimeout=10 christine@192.168.1.3 "DISPLAY=:0 notify-send 'Phone call from... $CALLER_NAME $CALLER_ID'" &
sleep 0.2
ssh -o ConnectTimeout=10 mrplow@192.168.1.120 "DISPLAY=:0 notify-send 'Phone call from... $CALLER_NAME $CALLER_ID'" &
sleep 0.2
su mrplow -c "DISPLAY=:0.0 notify-send 'Phone call from... $CALLER_NAME $CALLER_ID'" &
sleep 5
# update logs
echo `date +"%F %a %r"`"|$CALLER_ID|$CALLER_NAME" >> /home/mrplow/answering_machine/logs/incoming-calls.log
scp -o ConnectTimeout=10 /home/mrplow/answering_machine/logs/incoming-calls.log christine@192.168.1.3:/home/christine/Desktop/incoming-calls.log
sleep 0.2
exit 1
json rpc がこれを機能させる唯一の方法になると思います。未加工のポート 9090 でボクシー ボックスに telnet で接続し、デバイスをペアリングしました。
そのため、スクリプトは接続コマンドを送信する必要があります
{"jsonrpc": "2.0", "method": "Device.Connect", "params":{"deviceid": "############"}, "id": 1}
次に、実際の通知
{"jsonrpc": "2.0", "method": "GUI.NotificationShow", "params":{"msg" : "Phone call from... $CALLER_NAME $CALLER_ID"}, "id": 1}
私は無駄にこれを試しました
curl -d '{"jsonrpc": "2.0", "method": "Device.Connect", "params":{"deviceid": "00112fa696c9"}, "id": 1}\
{"jsonrpc": "2.0", "method": "GUI.NotificationShow", "params":{"msg" : "test"}, "id": 1}' -i 192.168.1.6 9090