I am trying to build a real-time chat app using AWS Lambda + Websocket API in API Gateway.
What I want to do is save the connectionId of each user in my DB to be able to send messages to specific clients when 2 users are in the same conversation for example.
How can I specify the connectionIds target from the lambda function in python?
This should actually be a list of connectionId to send to every people i am speaking with inside the app's current conversation.
The pseudo-code would look like (inside the lambda) :
def create_message(message, conversation):
save_message_in_db(message)
ids_that_should_receive_message = conversation["participantsID"]
return {"body": json.dumps({"message": message}), "connectionId": ids_that_should_receive_message}
Thanks in advance
The solution is to use the APIGatewayManagementAPI and use the post_to_connection method that takes a specific ConnectionId parameter to send the message to a specific client :

And here is the link to the boto3 documentation where i have found it.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With