Telegram-cli を使用して単純な bash スクリプトを作成しています。このスクリプトでは、2 つのパラメーター (宛先とメッセージ) を送信し、Telegram メッセージを宛先 (Name_FamilyName) に送信する必要があります。
スクリプトは次のようになります。
#!/bin/bash
destination=$1;
message=$2;
(echo "msg $destination $message"; echo "safe_quit") | bin/telegram-cli -k tg-server.pub -W
それで、理論的には、メッセージが送信されるはずです。スクリプトのアクセス許可を変更し、次の方法で呼び出します。
./script_send_message.sh Max_Musterman "Hola qute tal estas"
そして、それは私が得る出力です:
Telegram-cli version 1.2.0, Copyright (C) 2013-2015 Vitaly Valtman
Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details type `show_license'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show_license' for details.
Telegram-cli uses libtgl version 1.2.0
I: config dir=[/home/machine/.telegram-cli]
> msg Max_Musterman Hola qute tal estas
> safe_quit
User Max_Musterman updated username
User Max_Musterman online (was online [2015/04/09 06:56:04])
User Test Phone offline (was online [2015/04/09 06:51:42])
> > All done. Exit
halt
メッセージはまったく送信されていません。コンソールからまったく同じメッセージを送信すると、問題なく動作します。これが私がすることです:
bin/telegram-cli -k server.pub -W
Telegram-cli version 1.2.0, Copyright (C) 2013-2015 Vitaly Valtman
Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details type `show_license'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show_license' for details.
Telegram-cli uses libtgl version 1.2.0
I: config dir=[/home/machine/.telegram-cli]
User Max_Musterman updated username
User Max_Musterman online (was online [2015/04/09 06:59:46])
User Max_Musterman offline (was online [2015/04/09 06:51:42])
> msg Max_Musterman Hola qute tal estas
[06:57] Max_Musterman <<< Hola qute tal estas
User Max_Musterman marked read 1 outbox and 0 inbox messages
User Max_Musterman offline (was online [2015/04/09 06:57:29])
>
アイデアが不足しています。どういうわけか、コマンド msg がスクリプトで送信されたときに連絡先リストがロードされていないため、何も送信しないと思い始めます(コンソールで、作成されたユーザーにメッセージを送信しても、何もしません)スクリプトのように)。
誰かが似たようなことを経験しましたか? 解決策はありますか?ご協力ありがとうございました。