Démarrez avec le SDK de messagerie client Chat Amazon IVS pour Android - Amazon IVS

Démarrez avec le SDK de messagerie client Chat Amazon IVS pour Android

Avant de commencer, vous devez être familiarisé avec la Mise en route avec Chat Amazon IVS.

Ajouter le package

Ajoutez com.amazonaws:ivs-chat-messaging à vos dépendances build.gradle :

dependencies { implementation 'com.amazonaws:ivs-chat-messaging' }

Ajouter des règles ProGuard

Ajoutez les entrées suivantes à votre fichier de règles R8/ProGuard (proguard-rules.pro) :

-keep public class com.amazonaws.ivs.chat.messaging.** { *; } -keep public interface com.amazonaws.ivs.chat.messaging.** { *; }

Configuration de votre backend

Cette intégration nécessite des points de terminaison sur votre serveur qui communiquent avec l'API Amazon IVS. Utilisez les bibliothèques AWS officielles pour accéder à l'API Amazon IVS depuis votre serveur. Elles sont accessibles dans plusieurs langues depuis les packages publics, par exemple, node.js et Java.

Ensuite, créez un point de terminaison de serveur qui communique avec l'API Chat Amazon IVS et crée un jeton.

Configurer une connexion au serveur

Créez une méthode qui considère ChatTokenCallback comme un paramètre et récupère un jeton de chat depuis votre backend. Transmettez ce jeton à la méthode onSuccess du rappel. En cas d'erreur, transmettez l'exception à la méthode onError du rappel. Ceci est nécessaire pour instancier la principale entité ChatRoom lors de l'étape suivante.

Vous trouverez ci-dessous un exemple de code qui implémente ce qui précède à l'aide d'un appel Retrofit.

// ... private fun fetchChatToken(callback: ChatTokenCallback) { apiService.createChatToken(userId, roomId).enqueue(object : Callback<ChatToken> { override fun onResponse(call: Call<ExampleResponse>, response: Response<ExampleResponse>) { val body = response.body() val token = ChatToken( body.token, body.sessionExpirationTime, body.tokenExpirationTime ) callback.onSuccess(token) } override fun onFailure(call: Call<ChatToken>, throwable: Throwable) { callback.onError(throwable) } }) } // ...