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

Message API Integration with BSP #18

Open
Tracked by #22
dennyabrain opened this issue Jan 29, 2024 · 1 comment
Open
Tracked by #22

Message API Integration with BSP #18

dennyabrain opened this issue Jan 29, 2024 · 1 comment
Assignees
Labels
level:ticket An issue that describes a ticket (initiative>feature>ticket)

Comments

@dennyabrain
Copy link
Contributor

dennyabrain commented Jan 29, 2024

Overview

We'll create a web server to process messages coming in from the BSP and sending messages to the BSP.
The API documentation is here

Incoming Messages

We'll provide an webhook /gupshup(tentative name) to handle all incoming messages from Gupshup. Our API needs to process incoming messages right away and respond with 200 OK. If our response time times out their request, they will throttle their outgoing requests (think exponential backoff) which will affect responsiveness of the tipline for the users. We'll have to scale up our web server and postgres server accordingly (needs strategy)

Outgoing Messages

There are two ways to send messages to users - Session Messages and Template Messages. Read Documentation.
All messages sent to a query after 24 hours will use a whatsapp feature called "Template Messages". User's need to have opted in before they can be sent Template Messages. From following this guide on how to opt-in users, I learnt that if users text your number, they are already opted in. So this might not be a problem for our use case. Regardless, we might have to look into the template message related APIs to handle opt-in opt-out scenarios.

@dennyabrain dennyabrain added level: ticket: code tickets tied to new feature development/change requests level:ticket An issue that describes a ticket (initiative>feature>ticket) and removed level: ticket: code tickets tied to new feature development/change requests labels Jan 29, 2024
@dennyabrain dennyabrain self-assigned this Jan 29, 2024
@dennyabrain
Copy link
Contributor Author

I was confused by what this means

The webhook should accept user events: sandbox-start.

But I think it is just a field name in the post request as seen here

So I think our webhook for gupshup (/gupshup/message) should be usable as is.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
level:ticket An issue that describes a ticket (initiative>feature>ticket)
Projects
None yet
Development

No branches or pull requests

1 participant