こんにちは、カブロビテス!
先日、SMS通信用の簡単なボットを作成しました。 彼は、着信メッセージを受信し、それらを処理し、(メッセージの単語が彼の「記憶」にある場合)論理的な答えを送り返すことができます。
必要なもの:
-ホームコンピューター上のUbuntu 12.04
-gnokiiをインストールしました(インストール方法はこちらをご覧ください )
-シェルスクリプト
-このスクリプトを定期的に実行するcron
-アカウントにお金がある携帯電話(ほぼすべてのBluetoothを搭載した古いNokia、およびSonyEricsson kシリーズでも可能)
-Bluetoothアダプター
-数時間の自由時間。
+プラスは、インターネット接続の必要性の欠如でした。
興味があれば-猫の下でお願いします。
そのため、アプリケーションの一般的なロジックを説明することから始めます。これにより、何が何でなぜなのかがすぐにわかります。
サードパーティのサブスクライバーAがいます。
電話があります-加入者B
私たちの行動。
1)電話の標準的な手段を使用して、Bluetooth経由でサブスクライバーBをコンピューターに接続します。これにより、サブスクライバーBが自動的に承認できるようになります。
2)gnokiiをインストールします。
3)sms_bot.shスクリプトを作成して実行する権限を作成します。
#!/bin/bash inp=$(gnokii --getsms IN 1 end) # echo $inp>/home/light204/Desktop/inp.txt # counter_love=$(grep -c /home/light204/Desktop/inp.txt) # counter_luba=$(grep -c /home/light204/Desktop/inp.txt) # counter_hello=$(grep -c /home/light204/Desktop/inp.txt) # counter_good=$(grep -c /home/light204/Desktop/inp.txt) # counter_name=$(grep -c /home/light204/Desktop/inp.txt) # killall gnokii # gnokii, # , , . if [ "$counter_love" == "1" ]; then echo " , !!! ( )" | gnokii --sendsms '+7904xxxxxx' elif [ "$counter_luba" == "1" ]; then echo ", , :)" | gnokii --sendsms '+7904xxxxxx' elif [ "$counter_hello" == "1" ]; then echo " ! ?" | gnokii --sendsms '+7904xxxxxx' elif [ "$counter_good" == "1" ]; then echo " , ! , , :(" | gnokii --sendsms '+7904xxxxxx' elif [ "$counter_name" == "1" ]; then echo " Light204_comp . , ;)" | gnokii --sendsms '+7904xxxxxx' fi sleep 3 killall gnokii # gnokii, gnokii --deletesms IN 1 end # #.
4)たとえば、cronを設定してsms_bot.shスクリプトを毎分実行します。
5)システムは動作するはずです。 サブスクライバAはサブスクライバBにSMSを送信します。サブスクライバBの電話は着信SMSを受信し、スクリプトを読み取り、分析し、サブスクライバAに応答を送信し、サブスクライバAからSMSを削除します。
PS私のスクリプトは完璧とはほど遠いですが、動作するテストオプションです。 さらに、ここで説明する複合体は「現状のまま」誰かが必要とすることはほとんどないと思いますが、あなたはそれを作り直し、そして/またはあなたのニーズに適応させることができるかもしれません。