Telegram プライベートチャットボット
概要
これはCloudflare Workers上で動作する「Telegram Private Chatbot」(v4.0)で、極めて軽量かつ高速に動作する双方向チャットボット実装です。主にプライベートチャット向けに設計されており、広告や詐欺リンクの自動検出・ブロック機能を持ち、Telegramのプライベート会話をクリーンに保ちます。Wranglerのデプロイボタンを押すだけでCloudflareへ展開でき、JavaScript(Worker)単一ファイルで完結する簡潔な構成が特徴です。MITライセンスで公開されているため、カスタマイズや二次配布も自由に行えます。
リポジトリの統計情報
- スター数: 19
- フォーク数: 9
- ウォッチャー数: 19
- コミット数: 14
- ファイル数: 5
- メインの言語: JavaScript
主な特徴
- Cloudflare Workersベースでサーバーレスに動作、低遅延・低コストで運用可能
- Telegram Bot APIを用いた双方向チャット処理(ユーザーからの受信と応答)
- 広告/詐欺リンクの自動検出とブロックでプライベートチャットを保護
- Wranglerによる簡単デプロイ、環境変数で設定管理
技術的なポイント
このプロジェクトは、Cloudflare Workers(エッジ環境)上にTelegramボットのロジックを置くことで「常時稼働のサーバー不要」「グローバルな低遅延」を実現しています。worker.jsにほぼすべての処理が集約され、TelegramのWebhook受信→メッセージ解析→フィルタ判定→応答/削除の流れがシンプルに表現されています。Cloudflare Workersの特性上、ステートレスな設計が前提で、永続化が必要な場合はKVや外部ストレージを別途組み合わせる想定です。
メッセージ処理面では、受信したテキストやリンクに対する正規表現ベースのマッチング、既知の広告ドメインリストや疑わしい短縮URLの判定、そして該当時の削除や警告送信を行う実装になっています。BotはTelegram Bot APIのsendMessageやdeleteMessageなどのエンドポイントを呼び出すため、トークン管理(環境変数でWRANGLERに設定)とレート制御への配慮が必要です。Cloudflare上では同時実行リクエスト数や外部API呼び出しの遅延が運用上のボトルネックになるため、タイムアウトやリトライ、非同期処理の設計が重要です。
デプロイはwrangler.tomlを用いた標準的なワークフローを採用しており、READMEのDeployボタンからワークフローを始められます。開発者はwranglerへTelegramのBOT_TOKENやその他制御用の環境変数(管理者ID、ホワイトリストなど)を設定するだけで動作します。コードベースは単純で拡張性が高く、例えば会話ログをCloudflare KVやDurable Objectsに保存して簡易な会話履歴機能を追加したり、外部のURL解析APIや機械学習ベースのスパム判定を組み込むことも容易です。
また、Cloudflare Workersのコールドスタートがほとんど無く、エッジでのリクエスト処理は非常に速いため、ユーザー側の応答体験は良好です。ただし、無料枠やエッジ上のCPU制限、外部APIのレート制限等の制約を踏まえた運用設計が必要です。セキュリティ面では、Botトークンや管理者情報をコードに直書きせず、wranglerシークレットや環境変数で管理すること、外部リンクの検査を厳格化して誤検知・過検出を抑える工夫(ホワイトリスト、しきい値の調整)を推奨します。最後にMITライセンスなので、商用利用や改変・再配布が制限なく可能であり、自分のニーズに合わせた機能追加がしやすいリポジトリです。(技術的なポイント:約1600字)
プロジェクトの構成
主要なファイルとディレクトリ:
- LICENSE: file
- README.md: file
- README_EN.md: file
- worker.js: file
- wrangler.toml: file
まとめ
Cloudflare Workersで手軽に運用できる、軽量で実用的なTelegramプライベートチャット保護ボットです(約50字)。
リポジトリ情報:
- 名前: telegram_private_chatbot
- 説明: 这是一个基于CloudFlare部署,高效极简的Telegram 双向聊天机器人,防广告,防诈骗链接,给你一个清净的TG。
- スター数: 19
- 言語: JavaScript
- URL: https://github.com/jikssha/telegram_private_chatbot
- オーナー: jikssha
- アバター: https://avatars.githubusercontent.com/u/161007666?v=4
READMEの抜粋: