Étape 4 : envoyer et recevoir votre premier message
Utilisez votre jeton chat pour vous connecter à une salle de chat et envoyer votre premier message. Un exemple de code JavaScript est fourni ci-dessous. Des kits SDK clients sont également disponibles : consultez les sections Chat SDK: Android Guide, Chat SDK: iOS Guide et Chat SDK: JavaScript Guide.
Service régional : l'exemple de code ci-dessous fait référence à votre « région de choix prise en charge ». Chat Amazon IVS propose des points de terminaison régionaux que vous pouvez utiliser pour effectuer vos demandes. Pour l'API de messagerie Chat Amazon IVS, la syntaxe générale d'un point de terminaison régional est la suivante :
-
wss://edge.ivschat.<region-code>.amazonaws.com
Par exemple, le point de terminaison de la région USA Ouest (Oregon) est wss://edge.ivschat.us-west-2.amazonaws.com Pour obtenir une liste des régions prises en charge, consultez la page Amazon IVS dans la Référence générale AWS.
/* 1. To connect to a chat room, you need to create a Secure-WebSocket connection using the client token you created in the previous steps. Use one of the provided endpoints in the Chat Messaging API, depending on your AWS region. */ const chatClientToken = "GENERATED_CHAT_CLIENT_TOKEN_HERE"; const socket = "wss://edge.ivschat.us-west-2.amazonaws.com"; // Replace “us-west-2” with supported region of choice. const connection = new WebSocket(socket, chatClientToken); /* 2. You can send your first message by listening to user input in the UI and sending messages to the WebSocket connection. */ const payload = { "Action": "SEND_MESSAGE", "RequestId": "OPTIONAL_ID_YOU_CAN_SPECIFY_TO_TRACK_THE_REQUEST", "Content": "text message", "Attributes": { "CustomMetadata": "test metadata" } } connection.send(JSON.stringify(payload)); /* 3. To listen to incoming chat messages from this WebSocket connection and display them in your UI, you must add some event listeners. */ connection.onmessage = (event) => { const data = JSON.parse(event.data); displayMessages({ display_name: data.Sender.Attributes.DisplayName, message: data.Content, timestamp: data.SendTime }); } function displayMessages(message) { // Modify this function to display messages in your chat UI however you like. console.log(message); } /* 4. Delete a chat message by sending the DELETE_MESSAGE action to the WebSocket connection. The connected user must have the "DELETE_MESSAGE" permission to perform this action. */ function deleteMessage(messageId) { const deletePayload = { "Action": "DELETE_MESSAGE", "Reason": "Deleted by moderator", "Id": "${messageId}" } connection.send(deletePayload); }
Félicitations, vous êtes prêt ! Vous disposez désormais d'une application de chat simple qui peut envoyer ou recevoir des messages.