Telegramを介したプッシュ通知





6月25日に、 Telegramはボットのプラットフォームをオープンしました 。 私の最初の考えは-あなたはそれを通して通知を送ることができます! 電報通知を使用すると、いくつかの問題を少なくとも部分的に一度に解決できます。



したがって、PushAllは、ボット経由でAndroid、Chrome、およびTelegramデバイスに通知を送信できるようになりました。







カッターの下で、少しセットアップ手順と開発の詳細。 (同じボットを作成する人のための小さな指示)



バインド



必要なのは、リンク-telegram.me/PushAllBotを開いて、ボットに何かを書き込むだけです。

それに応じて、彼はあなたがコミュニケーションを確立するために行く必要があるリンクを提供します。







移行後、まだログインしていない場合はログインするように求められます。または、デバイスが接続されていることを示すメッセージが表示されます。



この入場方法の短所は次のとおりです。





技術的な詳細



すべてが非常に簡単に機能します。

ここにAPIドキュメントがあります。

/ newbotコマンドでボットを作成し、指示に従った後、/ setuserpicコマンドでpiccuを設定しました

受信したトークンを使用して、Webhookをバインドしてメッセージを受信しました。

ここで、1つの小さなことを理解する必要があります。PHPを使用する場合、$ _POST変数にデータを取得しません。

次のコマンドを使用してJSONデータを取得できます。



file_get_contents('php://input')
      
      







そして、JSON応答を解析できます。

送信はチャットIDで行われます。 ユーザーIDと同じです。

APIの使用または送信されるメッセージの数に制限はありませんでした。 したがって、この機能は長期間テストされます。 少なくとも、メッセージごとに個別のリクエストを行う必要があるのは好きではありません。 これは、1秒あたり数百の複数のストリームでそれらを実行するか、順番に実行する必要があることを意味します。 そして、それぞれの処理には約50〜100ミリ秒かかります。これは十分な長さです。 制限がある場合、わずか数分で1000件の通知を送信できるようになると、問題が発生する可能性があります。



これは私にとってWebhookの仕組みです:



 $gram=json_decode(file_get_contents('php://input'),true); $message=', ' .$gram['message']['chat']['last_name'].' ' .$gram['message']['chat']['first_name'].'.  ID  Telegram: ' .$gram['message']['chat']['id']; file_get_contents('https://api.telegram.org/botTOKEN/sendMessage?chat_id=' .$gram['message']['chat']['id'].'&text=' .urlencode($message));
      
      







ブラインドチャットに適したボットを作成できるように思えます。 対談者がお互いについて何も知らないとき。 Redisを介して相互作用を行います。 Webhookからメッセージを受信したら、メッセージを待っている別の人にメッセージを送信します。 接続を作成したら、異なるchat_idユーザーを使用してメッセージを転送します。



TelegramのAPIは非常にシンプルであることが判明しました。 開発者アカウントなどは必要ありません。 ボットを作成してすぐにトークンを取得し、すぐにAPIを操作します。



All Articles