Interactive Canvas API เป็นไลบรารี JavaScript ที่คุณใช้ในอินเทอร์เฟซ
กับการดำเนินการแบบการสนทนาโดยใช้ออบเจ็กต์ interactiveCanvas ในเว็บแอป
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Canvas แบบอินเทอร์แอกทีฟ โปรดดูที่ Interactive Canvas เอกสารประกอบ
เมธอด
พร้อม
ready(callbacks) returns undefined
มีการเรียกใช้โดยเว็บแอป Interactive Canvas เมื่อโหลดเพื่อลงทะเบียน Callback
| พารามิเตอร์ | |
|---|---|
| callbacks | 
        InteractiveCanvasCallbacks
      ออบเจ็กต์ที่มี Callback ของเมธอด | 
sendTextQuery
sendTextQuery(textQuery) returns Promise<state>
ส่งข้อความค้นหาไปยังการดำเนินการที่เป็นการสนทนา
| พารามิเตอร์ | |
|---|---|
| textQuery | stringการค้นหาที่ต้องการส่งไปยังการดำเนินการด้านการสนทนา | 
| state | stringประเภทใดประเภทหนึ่งต่อไปนี้ 
 
 
 | 
getHeaderHeightPx
getHeaderHeightPx() returns Promise<height>
กำหนดความสูงของส่วนหัวที่ด้านบนของจอแสดงผล
| พารามิเตอร์ | |
|---|---|
| height | numberความสูงเป็นพิกเซล | 
outputTts
outputTts(text, openMic) returns undefined;
เล่นข้อความ SSML
| พารามิเตอร์ | |
|---|---|
| text | stringสตริงที่รองรับ SSML ที่จะเล่น | 
| openMic | booleanระบุว่าจะเปิดไมโครโฟนหลังจากที่ TTS เล่นหรือไม่ | 
createIntentHandler
createIntentHandler(intentId, callback) returns IntentHandler
สร้างเครื่องจัดการ Intent สำหรับ Intent ที่กำหนดเอง NLU
| พารามิเตอร์ | |
|---|---|
| intentId | stringชื่อ Intent ตามที่ระบุไว้ใน Actions Builder | 
| callback | function(MatchedIntent)ฟังก์ชันที่จะดำเนินการเมื่อความตั้งใจตรงกัน | 
| IntentHandler | objectออบเจ็กต์ตัวแฮนเดิล Intent ที่ลงทะเบียนโดยใช้  | 
IntentHandler
ออบเจ็กต์ที่แสดงถึงเครื่องจัดการ Intent ซึ่งลงทะเบียนได้โดยใช้ expect() หรือ prompt()
MatchedIntent
ออบเจ็กต์ที่มีข้อมูลสำหรับ Intent ที่ตรงกัน
| เมธอด | |
|---|---|
| getIntentArg(parameterName) | function(string)วิธีรับพารามิเตอร์ Intent ของ Intent ที่ตรงกัน | 
createNumberSlot
createNumberSlot(callback, hints?) returns Slot<number>
สร้างสล็อตของประเภทจำนวน
| พารามิเตอร์ | |
|---|---|
| callback | function(FilledSlot)ฟังก์ชันที่จะดำเนินการเมื่อช่องโฆษณาเต็ม | 
| hints | Hintsคำสั้นๆ ที่ผู้ใช้อาจพูดเมื่อเติมช่อง  | 
| Slot | objectออบเจ็กต์ช่องโฆษณาที่ลงทะเบียนโดยใช้  | 
createTextSlot
createTextSlot(callback, hints?) returns Slot<string>
สร้างสล็อตของสตริงประเภท
| พารามิเตอร์ | |
|---|---|
| callback | function(FilledSlot)ฟังก์ชันที่จะดำเนินการเมื่อช่องโฆษณาเต็ม | 
| hints | Hintsคำสั้นๆ ที่ผู้ใช้อาจพูดเมื่อเติมช่อง  | 
| Slot | objectออบเจ็กต์ช่องโฆษณาที่ลงทะเบียนโดยใช้  | 
createConfirmationSlot
createConfirmationSlot(callback, hints?) returns Slot<boolean>
สร้างสล็อตประเภทบูลีน
| พารามิเตอร์ | |
|---|---|
| callback | function(FilledSlot)ฟังก์ชันที่จะดำเนินการเมื่อช่องโฆษณาเต็ม | 
| hints | Hintsคำสั้นๆ ที่ผู้ใช้อาจพูดเมื่อเติมช่อง  | 
| Slot | objectออบเจ็กต์ช่องโฆษณาที่ลงทะเบียนโดยใช้  | 
createOptionsSlot
createOptionsSlot(options, callback, hints?) returns Slot<string>
สร้างช่องโฆษณาจากรายการตัวเลือกที่กำหนดไว้ล่วงหน้า
| พารามิเตอร์ | |
|---|---|
| options | array<Option>ฟังก์ชันที่จะดำเนินการเมื่อช่องโฆษณาเต็ม | 
| callback | function(FilledSlot)ฟังก์ชันที่จะดำเนินการเมื่อช่องโฆษณาเต็ม | 
| hints | Hintsคำสั้นๆ ที่ผู้ใช้อาจพูดเมื่อเติมช่อง  | 
| Slot | objectออบเจ็กต์ช่องโฆษณาที่ลงทะเบียนโดยใช้  | 
สล็อต
ออบเจ็กต์ที่แสดงถึงช่องโฆษณาที่จะเติม ซึ่งลงทะเบียนได้โดยใช้ expect() หรือ prompt()
FilledSlot<T>
ออบเจ็กต์ที่แสดงถึงช่องโฆษณาที่ได้รับการเติมสี
| พารามิเตอร์ | |
|---|---|
| T | boolean|number|stringประเภทช่องโฆษณา | 
ตัวเลือก
ออบเจ็กต์ที่แสดงรายการประเภทช่องโฆษณา
| ช่อง | |
|---|---|
| key | stringตัวระบุที่ไม่ซ้ำกันสำหรับรายการประเภทช่องโฆษณา | 
| synonyms | array<string>รายการคำที่ใช้ในการเลือกตัวเลือกช่องโฆษณา | 
คำแนะนำ
ออบเจ็กต์ที่แสดงคำแนะนำสำหรับช่องโฆษณา
| ช่อง | |
|---|---|
| associatedWords | array<string>รายการคำที่ใช้เพื่อช่วยระบบ NLU เลือกว่าจะเติมช่องโฆษณาใด | 
คาดหวัง
expect(expectation) returns HandlerRegistration
บันทึกความคาดหวังที่มีต่อไคลเอ็นต์ เรียกใช้ได้ในเครื่องจัดการ Intent และสล็อต
| พารามิเตอร์ | |
|---|---|
| expectation | IntentHandler|Slotเครื่องจัดการ Intent หรือสล็อตที่จะลงทะเบียน | 
| HandlerRegistration | objectเครื่องจัดการหรือสล็อต Intent ที่ลงทะเบียนแล้ว | 
HandlerRegistration
ออบเจ็กต์ที่แสดงถึงเครื่องจัดการ Intent ที่ลงทะเบียน
| เมธอด | |
|---|---|
| deleteHandler() | functionยกเลิกการลงทะเบียนเครื่องจัดการ Intent ที่คาดไว้ | 
clearExpectations
clearExpectations() returns undefined;
นำความคาดหวังทั้งหมดออกโดยลบตัวแฮนเดิลและสล็อต Intent ที่ลงทะเบียนก่อนหน้านี้ทั้งหมด
ข้อความแจ้ง
prompt(tts, expectation) returns Promise<Answer<T>>
แจ้งให้ผู้ใช้ทราบด้วยสตริง TTS ที่ระบุไว้ และบันทึกความคาดหวังในไคลเอ็นต์ เรียกใช้ได้ในเครื่องจัดการ Intent และสล็อต
| พารามิเตอร์ | |
|---|---|
| tts | stringสตริง TTS ที่ใช้เพื่อแจ้งให้ผู้ใช้ทราบตามความคาดหวังที่ระบุ | 
| expectation | IntentHandler|Slotเครื่องจัดการ Intent หรือสล็อตที่จะลงทะเบียน | 
| Answer<T> | objectคำตอบที่ผู้ใช้ระบุสำหรับข้อความแจ้ง | 
คำตอบ<T>
ออบเจ็กต์ที่แสดงคำตอบที่ผู้ใช้ระบุสำหรับพรอมต์
| ช่อง | |
|---|---|
| value | boolean|number|stringค่าของคำตอบที่ผู้ใช้ระบุ | 
| status | stringสถานะของคำตอบ ประเภทใดประเภทหนึ่งต่อไปนี้ 
 
 
 | 
triggerScene
triggerScene(sceneName) returns Promise<TriggerSceneStatus>
เรียกใช้ฉาก
| พารามิเตอร์ | |
|---|---|
| sceneName | stringชื่อฉากที่จะทริกเกอร์ | 
| TriggerSceneStatus | stringสถานะของการเรียกไปยังtriggerScene() ประเภทใดประเภทหนึ่งต่อไปนี้ 
 
 
 | 
setUserParam
setUserParam(key, value) returns Promise<undefined>;
ตั้งค่าคู่คีย์-ค่าที่ส่งต่อและคงอยู่ระหว่างการสนทนา
| พารามิเตอร์ | |
|---|---|
| key | stringคีย์พารามิเตอร์ | 
| value | object|array|boolean|number|stringค่าพารามิเตอร์ | 
getUserParam
getUserParam(key) returns Promise<object|array|boolean|number|string>;
รับค่าพารามิเตอร์สำหรับคีย์ที่ระบุ หากมี และสถานะของการเรียกใช้
| พารามิเตอร์ | |
|---|---|
| key | stringคีย์พารามิเตอร์ | 
resetUserParam
resetUserParam() returns Promise<void>;
ล้างพารามิเตอร์ผู้ใช้ทั้งหมด
setHomeParam
setHomeParam(key, value) returns Promise<undefined>;
ตั้งค่าคู่คีย์-ค่าที่ส่งต่อและคงอยู่ระหว่างการสนทนา
| พารามิเตอร์ | |
|---|---|
| key | stringคีย์พารามิเตอร์ | 
| value | object|array|boolean|number|stringค่าพารามิเตอร์ | 
getHomeParam
getHomeParam(key) returns Promise<object|array|boolean|number|string>;
รับค่าพารามิเตอร์สำหรับคีย์ที่ระบุ หากมี และสถานะของการเรียกใช้
| พารามิเตอร์ | |
|---|---|
| key | stringคีย์พารามิเตอร์ | 
resetHomeParam
resetHomeParam() returns Promise<void>;
ล้างพารามิเตอร์ผู้ใช้ทั้งหมด
setCanvasState
setCanvasState(state) returns undefined
แจ้ง Assistant ว่าเว็บแอป Canvas อัปเดตสถานะแล้ว 
setCanvasState
ไม่แสดงค่า เพย์โหลดสถานะสามารถเข้าถึงได้โดย
conv.context.canvas.state
| พารามิเตอร์ | |
|---|---|
| state | Objectสถานะที่อัปเดตของแอป Canvas เป็นออบเจ็กต์ JSON | 
InteractiveCanvasCallbacks
Callback เหล่านี้ช่วยให้คุณตอบกลับข้อมูลหรือคำขอได้ จากการดำเนินการแบบการสนทนาของคุณ ขณะที่วิธีการต่างๆ จะเป็นวิธีที่ให้คุณส่ง ข้อมูลหรือคำขอไปยัง Conversational Action
onUpdate
onUpdate(data) returns Promise|undefined
เรียกใช้เมื่อมีการส่งการตอบกลับ Canvas จากการดำเนินการแบบการสนทนา TTS จะเริ่มเมื่อ
Promise ที่แสดงผลสำเร็จ หรือหมดเวลาหลังจาก 10 วินาที
| พารามิเตอร์ | |
|---|---|
| data | Objectอัปเดตข้อมูลโดยเว็บฮุค | 
onTtsMark
onTtsMark(markName) returns undefined
Callback ที่เรียกใช้ระหว่างการเล่น TTS
เครื่องหมายพิเศษที่ทริกเกอร์เสมอ ได้แก่
- STARTบ่งชี้จุดเริ่มต้นของ TTS
- ENDหมายถึงจุดสิ้นสุดของ TTS
- ERRORบ่งชี้ข้อผิดพลาดในการเล่น TTS
นอกจากนี้ คุณยังกำหนดเครื่องหมายที่กำหนดเองได้โดยใช้ SSML และแท็ก <mark> เช่น
<mark name="custom"/>
| พารามิเตอร์ | |
|---|---|
| markName | stringทำเครื่องหมายชื่อที่ถูกเรียกในระหว่างการเล่น TTS | 
onInputStatusChanged
onInputStatusChanged(inputStatus) returns undefined
แจ้งแอป Canvas ว่าสถานะการป้อนข้อมูลจาก Assistant มีการเปลี่ยนแปลง
| พารามิเตอร์ | |
|---|---|
| inputStatus | Enumสถานะของการประมวลผลการป้อนข้อมูลเสียงและ/หรือข้อความบนอุปกรณ์ กระป๋อง เป็นดังต่อไปนี้ 
 | 
