WatBot est un ChatBot propulsé par IBM Watson fonctionnant sur Android et utilisant le service Watson Assistant sur IBM Cloud (une plate-forme cloud à normes ouvertes pour la création, l'exécution et la gestion d'applications et de services).
Remarque : Cette application utilise l'API Watson Assistant V1.
Clonez le dépôt et importez le code dans Android Studio,
git clone https://github.com/VidyasagarMSC/WatBot.git
Consultez cet article de blog pour obtenir des instructions étape par étape et à jour.
Pour configurer l'application, vous devez obtenir le mot de passe , l'URL et l'ID de l'espace de travail du service Watson Assistant.
Dans la classe MainActivity , localisez la méthode nommée sendMessage() . Dans l'onglet Gérer du service Assistant que vous avez créé, cliquez sur Outil de lancement > Compétences > Cliquez sur les trois points verticaux à côté de la compétence > Afficher les détails de l'API > Vous pouvez trouver l'ID de l'espace de travail, le nom d'utilisateur et le mot de passe. Si vous souhaitez utiliser la clé API, lisez directement le TODO, décommentez le code et remplacez l'espace réservé par la valeur de la clé API.
Vous pouvez trouver la clé API et l'URL dans l'onglet Gérer ou sous les informations d'identification du service.
Assistant assistantservice = new Assistant("2018-02-16");
//If you like to use USERNAME AND PASSWORD
//Your Username: "apikey", password: "<APIKEY_VALUE>"
assistantservice.setUsernameAndPassword("apikey", "<API_KEY_VALUE>");
//TODO: Uncomment this line if you want to use API KEY
//assistantservice.setApiKey("<API_KEY_VALUE>");
//Set endpoint which is the URL. Default value: https://gateway.watsonplatform.net/assistant/api
assistantservice.setEndPoint("<ASSISTANT_URL>");
InputData input = new InputData.Builder(inputmessage).build();
//WORKSPACES are now SKILLS
MessageOptions options = new MessageOptions.Builder().workspaceId("<WORKSPACE_ID>").input(input).context(context).build();
MessageResponse response = assistantservice.message(options).execute();
assistantservice.setUsernameAndPassword("apikey", "<ASSISTANT_PASSWORD>");
Obtenez l' ID de l'espace de travail : et ajoutez-le dans le code ci-dessous,
MessageOptions options = new MessageOptions.Builder("<Workspace_ID>").input(input).context(context).build();
Entrée de diplôme
compile 'com.ibm.watson.developer_cloud:assistant:6.11.0'
Sur la ligne 95 de MainActivity.java, remplacez le mot de passe et les espaces réservés d'URL par les informations d'identification du service TTS.
textService.setUsernameAndPassword("apikey", "<TEXT_TO_SPEECH_APIKEY>");
textService.setEndPoint("<TEXT_TO_SPEECH_URL>");
Désormais, lorsque vous APPUYEZ sur un message, le texte sera entendu via une voix (Voice.EN_US_LISAVOICE). Vous pouvez modifier les formats vocaux dans le code (Ligne 120 0f MainActivity.java)
Remarque : Les entrées Gradle requises pour TTS sont déjà incluses dans le fichier build.gradle.
compile 'com.ibm.watson.developer_cloud:text-to-speech:6.11.0'
compile 'com.ibm.watson.developer_cloud:android-sdk:0.5.0'
Remarque : Les entrées gradle requises pour STT sont déjà incluses dans le fichier build.gradle.
compile 'com.ibm.watson.developer_cloud:speech-to-text:6.11.0'
compile 'com.ibm.watson.developer_cloud:android-sdk:0.5.0'
Si vous avez suivi toutes les instructions ci-dessus, vous devriez pouvoir discuter avec votre Wat(son)Bot.
** N'oubliez pas que votre bot communiquera avec votre service Watson Assistant (intentions, entités et dialogue).**
Étiquettes des enceintes
Remarque : La fonctionnalité d'étiquettes des locuteurs est une fonctionnalité bêta disponible pour l'anglais américain, le japonais et l'espagnol.
Les étiquettes des locuteurs identifient quelles personnes ont prononcé quels mots dans un échange multi-participant. (L'étiquetage de qui a parlé et quand est parfois appelé diarisation du locuteur.) Vous pouvez utiliser les informations pour développer une transcription personne par personne d'un flux audio, comme le contact avec un centre d'appels. Ou bien vous pouvez l’utiliser pour animer un échange avec un robot conversationnel ou un avatar. Pour de meilleures performances, utilisez un contenu audio d’au moins une minute.
Pour l'activer, cliquez sur TODO dans l'onglet inférieur d'Android Studio ou recherchez TODO dans le fichier MainActivity.java et décommentez les lignes. Vous devriez voir la sortie dans le logcat comme indiqué ci-dessous
SPEECHRESULTS: {
"confidence": 0.5,
"final": false,
"from": 1.59,
"speaker": 0,
"to": 1.82
}