問題タブ [python-telegram-bot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
805 参照

python - ポーリングの前にインターネット接続を確認していますか? (電報ボット)

電報ボットに問題があります。使っているだけ

インターネット接続がダウンすると、ポーリングが失敗するため、スクリプトがクラッシュします。

ボットのポーリングの前にインターネット接続が利用可能かどうかを確認するコードを追加したいのですが、

何かのようなもの:

"if" ステータスが "connected" ---> ボット ポーリング。

そうでなければ---->待ってから「秒」後に再試行してください

0 投票する
1 に答える
6133 参照

api - テレグラム インライン ボットでグループ ID とチャット ID を取得するにはどうすればよいですか?

@like電報ボットの仕組みを知っている人はいますか?

インラインを使用してグループで呼び出し、新しい投稿を選択すると、ボット チャットに転送され、終了すると元のグループに転送されます。したがって、何らかの形でグループ ID が必要です。

しかし、API ドキュメントによると、それは不可能です。

いくつかのテストを試しましたが、得られるのはユーザー ID (チャット ID として) だけです

グループからインライン ボットを呼び出し、ユーザー ID とグループ ID を使用してボット チャットに転送できるようにしたいと考えています。@like ボットがそれを行っているようですが、方法がわかりません。

誰かが私を助けることができますか?

0 投票する
1 に答える
1167 参照

javascript - チャット フィールドの電報ボット キーボード

ボタンをクリックすると、チャット画面に直接表示されるのではなく、チャット フィールドにテキストが表示されますか?

例えば:

  • いくつかのボタン キーボード [1] [2] [3] があります。
  • [1]ボタンを押す1と、チャット画面ではなくチャットフィールドに表示されます
  • [3][2][1] をクリックすると、チャット フィールドに表示されます321
  • 押す<enter> 321と画面に表示されます。

質問

これは電報ボットで可能ですか?

0 投票する
1 に答える
4456 参照

python - テレポット モジュールで発信メッセージ ID を取得するには?

私はテレポット モジュールを使用して、python を使用してテレグラム ボットを作成しています。ユーザーがそのメッセージに返信するかどうかを確認するには、送信メッセージのメッセージ ID を取得する必要があります。以下のコードは、私がやりたいことを明確にしています。

上記のコードでわかるように、メッセージ 3 がメッセージ 2 への返信であったかどうかを確認する必要があります。ただし、メッセージ 2 の ID を取得できません。 IDを取得できます。)では、どうすればそれを達成できますか?

ありがとう。

0 投票する
2 に答える
369 参照

python - ボットと会話する方法は?

Python Telegram ボットに特定のコマンドを送信して、ボットが詳細情報の要求に応答し、その追加情報を含む別のメッセージをリッスンしたいと考えています。

例えば:

  • /addボットに応答を送信します: ok, tell me your torrent link.
  • トレント リンクを含む別のメッセージをボットに送信すると、ボットはそれを Python 変数に保存して、後で使用できるようにします。
0 投票する
1 に答える
660 参照

python - Python スレッドをカウントダウンさせてからアクションを実行するにはどうすればよいですか?

Telegram ボットの API にアクセスするスクリプトがありますが、残念ながら一度に 1 つのメッセージしか処理できません。

私の最終目標は、誰かがゲームを開始したときにタイマー スレッドを開始し、一定時間後 (まだゲームに勝っていない場合) にゲームをリセットして、グループ内の別のユーザーがゲームをプレイできないようにすることです。 (混乱を避けるために、一度に 1 つのゲームのみを使用するように設定しました)。

たとえば、次のようになります。

私が試した単語解読ゲームで:

ただし、このコードでは、最初のメッセージを受信して​​処理し、30 秒待ってから失敗したコードを送信し、2 番目のメッセージを処理します。

私はスレッド化のプロセスにあまり慣れていないので、カウントダウンタイマーを処理する新しいスレッドを開始してメッセージを処理し続けることができるように設定する方法はありますか、それともすべて失われた原因ですか?

電報 API にアクセスする現在の方法を使用してタイマーを設定する方法がない場合、よりスマートな方法は何でしょうか?

0 投票する
1 に答える
1500 参照

python - テレグラム ボット API を使用して Python で縦型のカスタム キーボード レイアウトをプログラムで作成するにはどうすればよいですか?

テレグラム用のテレポット API ラッパーを使用してカードベースのゲーム ボットを作成しようとしていますが、水平レイアウトではなく垂直レイアウトを使用する方法がわかりません。

サンプルコード:

次に、sendMessage() メソッドを ReplyKeyboardMarkup() メソッドと一緒に使用しますが、縦長で横長のボタンの列が作成され、テキストの表示に影響します。

私が行方不明のステップはありますか?次を使用してキーの正方形を作成できました。

プログラムではなく手動でキーボードを作成できたので、2 番目の方法を使用してのみキーボードを作成しましたが、ターンごとに変化する動的リストであるため、各カードに順番にアクセスせずにカード リストを処理する方法はありません。 .

API ノートを調べましたが、使用できるものは見つかりませんでした

2 番目のキーボードの結果に基づいて、各カードを配列にして、元の配列内にネストすることで垂直方向の行を作成できると想定しましたが、私の経験ではそうではないことが判明しました

手順がありませんか?