Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DMを除く全チャンネルのメッセージを購読するBOTイベントの追加 #2191

Open
ras0q opened this issue Jan 13, 2024 · 3 comments
Labels
kind/enhancement 機能改善に関するもの

Comments

@ras0q
Copy link
Member

ras0q commented Jan 13, 2024

一般ユーザーに対しては/wsのtimeline_streamingコマンドでアクティビティの流量を管理することができる
https://apis.trap.jp/#/notification/ws

現状BOTで全メッセージを購読するためには以下の方法がある

  • 全チャンネルを購読する
  • 一定期間ごとにGET /messagesを取得する

どちらもworkaroundっぽいのでBOTに対しても/bot/wsにtimeline_streamingコマンドを追加するかANY_MESSAGE_CREATEDのようなイベントを追加したい

@ras0q ras0q added the kind/enhancement 機能改善に関するもの label Jan 13, 2024
@ras0q
Copy link
Member Author

ras0q commented Jan 13, 2024

timeline_streamingコマンドの場合HTTPモードは対応しないことになる?

@ras0q
Copy link
Member Author

ras0q commented Jan 13, 2024

対象BOTのfilter→一斉送信処理→この段階で初めてHTTP/WSモードを確認してそれぞれの送信方法で送信

の流れになってるからここに「任意のBOT(filter段階で弾かれる可能性がある)のうちtimeline_streamingonにした特定のWebsocketセッションに送信」の処理を含めるのが厳しそう

なのでセッション単位ではなくてBOT単位で実装する(ANY_MESSAGE_CREATED方式)がいいかも

関係ないけどBOTに対してtimelineという言葉を使うのも違和感がある

@motoki317
Copy link
Member

現在の「参加チャンネルを設定して、そこからのみイベントを受け取る」という概念を壊してしまうので、慎重になったほうが良い
→「ユーザーがどのbotが反応可能かを見ることができる」
→「最小限の負荷を自然に設定することができる」
という利点を壊してしまう懸念がある

作るとしても、ユースケースが少ないなら、特権botのみへの実装が良いと思う

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/enhancement 機能改善に関するもの
Projects
None yet
Development

No branches or pull requests

2 participants