WatBot คือ ChatBot ที่ขับเคลื่อนโดย IBM Watson ที่ทำงานบน Android และใช้บริการ Watson Assistant บน IBM Cloud (แพลตฟอร์มคลาวด์มาตรฐานแบบเปิดสำหรับการสร้าง เรียกใช้ และจัดการแอปและบริการ)
หมายเหตุ: แอปนี้ใช้ Watson Assistant V1 API
โคลน repo และนำเข้าโค้ดใน Android Studio
git clone https://github.com/VidyasagarMSC/WatBot.git
ตรวจสอบโพสต์บนบล็อกนี้เพื่อดูคำแนะนำทีละขั้นตอนและเป็นปัจจุบัน
ในการกำหนดค่าแอป คุณจะต้องได้รับ รหัสผ่าน , URL และ รหัสพื้นที่ทำงาน ของบริการ Watson Assistant
ในคลาส MainActivity ค้นหาเมธอดที่ชื่อ sendMessage() บนแท็บ จัดการ ของบริการ Assistant ที่คุณสร้างขึ้น ให้คลิก เปิดเครื่องมือ > ทักษะ > คลิกจุดแนวตั้งสามจุดถัดจากทักษะ > ดูรายละเอียด API > คุณจะพบ ID พื้นที่ทำงาน ชื่อผู้ใช้ และรหัสผ่าน หากคุณต้องการใช้คีย์ API อ่าน TODO โดยตรง ให้ยกเลิกหมายเหตุโค้ดและแทนที่ Placeholder ด้วยค่าคีย์ API
คุณสามารถค้นหา คีย์ API และ URL ได้ในแท็บจัดการหรือใต้ข้อมูลรับรองบริการ
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>");
รับ รหัสพื้นที่ทำงาน: และเพิ่มลงในโค้ดด้านล่าง
MessageOptions options = new MessageOptions.Builder("<Workspace_ID>").input(input).context(context).build();
รายการ Gradle
compile 'com.ibm.watson.developer_cloud:assistant:6.11.0'
ในบรรทัด 95 ของ MainActivity.java ให้แทนที่รหัสผ่านและตัวยึด URL ด้วยข้อมูลรับรองบริการ TTS
textService.setUsernameAndPassword("apikey", "<TEXT_TO_SPEECH_APIKEY>");
textService.setEndPoint("<TEXT_TO_SPEECH_URL>");
ตอนนี้เมื่อคุณแตะที่ข้อความใดๆ ข้อความจะได้ยินผ่านทางเสียง (Voice.EN_US_LISAVOICE) คุณสามารถเปลี่ยนรูปแบบเสียงในรหัส (บรรทัด 120 0f MainActivity.java)
หมายเหตุ: รายการ gradle ที่จำเป็นสำหรับ TTS รวมอยู่ในไฟล์ 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'
หมายเหตุ: รายการ gradle ที่จำเป็นสำหรับ STT รวมอยู่ในไฟล์ 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'
หากคุณทำตามคำแนะนำข้างต้นทั้งหมดแล้ว คุณควรพูดคุยกับ Wat(ลูกชาย)Bot ของคุณอย่างมีความสุข
** จำไว้ว่าบอทของคุณจะพูดคุยกับบริการ Watson Assistant ของคุณ (เจตนา เอนทิตี และไดอะล็อก)**
ป้ายชื่อผู้พูด
หมายเหตุ: ฟีเจอร์ป้ายกำกับผู้พูดเป็นฟังก์ชันเบต้าที่พร้อมใช้งานสำหรับภาษาอังกฤษแบบสหรัฐอเมริกา ญี่ปุ่น และสเปน
ป้ายกำกับผู้บรรยายจะระบุว่าบุคคลใดพูดคำใดในการแลกเปลี่ยนผู้เข้าร่วมหลายราย (การติดป้ายกำกับว่าใครพูดและเมื่อใด บางครั้งเรียกว่า การแยกเสียงของผู้พูด) คุณสามารถใช้ข้อมูลนี้เพื่อจัดทำสำเนาเสียงสตรีมแบบทีละคน เช่น การติดต่อศูนย์บริการทางโทรศัพท์ หรือคุณสามารถใช้มันเพื่อสร้างภาพเคลื่อนไหวการแลกเปลี่ยนกับหุ่นยนต์สนทนาหรืออวตาร เพื่อประสิทธิภาพที่ดีที่สุด ให้ใช้เสียงที่มีความยาวอย่างน้อยหนึ่งนาที
หากต้องการเปิดใช้งาน ให้คลิก TODO บนแท็บด้านล่างของ Android Studio หรือค้นหา TODO ในไฟล์ MainActivity.java และยกเลิกการใส่เครื่องหมายข้อคิดเห็นในบรรทัด คุณควรเห็นผลลัพธ์ใน logcat ดังที่แสดงด้านล่าง
SPEECHRESULTS: {
"confidence": 0.5,
"final": false,
"from": 1.59,
"speaker": 0,
"to": 1.82
}