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

[Feature Request] External Chat Filter #3720

Open
jprjr opened this issue Apr 23, 2024 · 1 comment
Open

[Feature Request] External Chat Filter #3720

jprjr opened this issue Apr 23, 2024 · 1 comment
Labels
3rd party integration Related to APIs for inbound/outbound interfacing with others. backlog Ideas that might be cool and can be looked into later. chat Issues dealing with the web chat client and server

Comments

@jprjr
Copy link
Member

jprjr commented Apr 23, 2024

Share your bug report, feature request, or comment.

Hi there! I wanted to throw out the idea of an external chat filter.

The general idea is a chat message could be sent to a remote server for processing, and the processing service dictates how to handle the message. It could be something like - user submits a message on the chat websocket, Owncast makes an HTTP POST with similar details to a CHAT event, the service could return:

  • HTTP 204 - Owncast uses the message as-is, everything proceeds normally.
  • HTTP 200 - Owncast reads the response body for JSON, and uses that as the event.
  • HTTP 4xx - Owncast rejects message (maybe with text returned by service?)

The Owncast chat UI could show a rejection as an error message.

The use-cases are for things like, maybe there's some new movie/game out and you don't want people spoiling things so you reject certain phrases, or silly April-Fool's day type things like converting messages to all-caps.

As far as what to do when the external service is down, probably just display an error message? I'd imagine if somebody's taken the time to set up a service they'd rather it block everything when it's broken, as opposed to blocking nothing.

@gabek
Copy link
Member

gabek commented Apr 23, 2024

It's an interesting idea, but I can't see very many people taking advantage of it. Additionally, it seems like something that would fit better with the "plugin" approach as opposed to a webhook, something that has been on the table but isn't possible with the current architecture.

@gabek gabek added chat Issues dealing with the web chat client and server backlog Ideas that might be cool and can be looked into later. 3rd party integration Related to APIs for inbound/outbound interfacing with others. labels Apr 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3rd party integration Related to APIs for inbound/outbound interfacing with others. backlog Ideas that might be cool and can be looked into later. chat Issues dealing with the web chat client and server
Projects
None yet
Development

No branches or pull requests

2 participants