1

Telegram と Google Dialogflow でチャットボットを構築しています。Dialogflow の [統合] タブを使用して Dialogflow を Telegram に統合すると、Dialogflow は Webbhook サービスとして登録され、受信したすべての Telegram メッセージをインターセプトします。残念ながら、ステッカー、画像、Telegram 支払いチェックアウト メッセージなどの非テキスト メッセージには対応できません。

Dialogflow が受信したすべてのメッセージをフォールバック インテントのカスタム フルフィルメント Webhook に転送することを望みます。私の Webhook では、受信した本文を解析し、サポートされていないテレグラム メッセージに応じて対応することができます。

Dialogflow に FACEBOOK_MEDIA イベントがあることは知っています。このイベントは、画像が Facebook メッセンジャー経由で Dialogflow に送信されると発生します。TELEGRAM_MEDIA や TELEGRAM_UNSUPPORTED イベントのようなものはありますか?

Dialogflow でテキスト メッセージ以外の操作ができるようになりたいと思っています。

すべての Telegram メッセージを処理できるようにするには、Telegram と Dialogflow の間に別のレイヤーを追加する必要がありますか?

これまでに分析したこと:

すべての Google Dialogflow インタラクション ログを Google Cloud Stackdriver に転送します。テキスト以外のメッセージは、Dialogflow によって完全に無視されているようです。テキスト以外のメッセージをテレグラム ボットに送信しても、ログ エントリがまったく表示されません。一方、テキストを送信すると、ログとその JSON ペイロードがスタックドライバーにすぐに表示されます。

Dialogflow でフォールバック インテントを作成し、フルフィルメント セクションで「このインテントの Webhook 呼び出しを有効にする」を有効にしました。残念ながら、私のフルフィルメント関数は、テキスト以外のイベントでは起動しません。Dialogflow は最初にそれをブロックします。

4

2 に答える 2

0

将来の参考のために、私は自分の質問に対してすぐに使える解決策ではなく、可能な解決策を提供しようとします。誰かがより良い解決策を持っているなら、これは素晴らしいことです。

これを書いている時点では、Telegram と Dialogflow の間に中間層を実装することによってのみ、完全な対話エクスペリエンスが可能になるように思えます。Telegram は、受信したメッセージを処理し、Google NLP の良さのために Dialogflow SDK/API を使用するこの中間層に接続する場合があります。(まだ) サポートされていない Telegram メッセージの場合、この中間層は独自のロジックを実装する必要があります。

于 2019-10-20T16:36:46.670 に答える
-1

現在、ダイアログフローを介して電報以外のテキストメッセージを処理する方法はないようですが、興味がある場合は、ここにオープンレポートがあります https://issuetracker.google.com/issues/157202508

于 2020-05-22T14:23:49.740 に答える