ข้อมูลอ้างอิง Canvas API แบบอินเทอร์แอกทีฟ

Interactive Canvas API เป็นไลบรารี JavaScript ที่คุณใช้เพื่อโต้ตอบกับ "Conversational Action" โดยใช้ออบเจ็กต์ interactiveCanvas ในเว็บแอป

ดูข้อมูลเพิ่มเติมเกี่ยวกับ Canvas แบบอินเทอร์แอกทีฟได้ที่เอกสารประกอบสำหรับ Canvas แบบอินเทอร์แอกทีฟ

วิธีการ

พร้อม

ready(callbacks) returns undefined

เรียกใช้โดยเว็บแอป Interactive Canvas เมื่อโหลดเพื่อลงทะเบียนโค้ดเรียกกลับแล้ว

พารามิเตอร์
callbacks InteractiveCanvasCallbacks

ออบเจ็กต์ที่มีโค้ดเรียกกลับของเมธอด

sendTextQuery

sendTextQuery(textQuery) returns Promise<state>

ส่งข้อความการค้นหาไปยังการดำเนินการแบบการสนทนา

พารามิเตอร์
textQuery string

คำค้นหาที่จะส่งไปยังการดำเนินการด้านการสนทนา

state string

ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้

READY: แพลตฟอร์มสามารถยอมรับคำขอได้

BLOCKED: การค้นหาในเที่ยวบินจะหายไปและคำค้นหาใหม่จะหายไป

UNKNOWN: ไม่สามารถระบุสถานะการค้นหาปัจจุบันได้

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)

ฟังก์ชันที่จะดำเนินการเมื่อจับคู่ Intent

IntentHandler object

ออบเจ็กต์ตัวแฮนเดิล Intent ที่ลงทะเบียนโดยใช้ expect() ได้

IntentHandler

ออบเจ็กต์ที่แสดงตัวแฮนเดิล Intent ลงทะเบียนได้โดยใช้ expect() หรือ prompt()

MatchedIntent

ออบเจ็กต์ที่มีข้อมูลสำหรับ Intent ที่ตรงกัน

วิธีการ
getIntentArg(parameterName) function(string)

วิธีรับพารามิเตอร์ Intent ของ Intent ที่ตรงกัน

createNumberSlot

createNumberSlot(callback, hints?) returns Slot<number>

สร้างสล็อตประเภทหมายเลข

พารามิเตอร์
callback function(FilledSlot)

ฟังก์ชันที่จะดำเนินการเมื่อมีการเติมช่องโฆษณา

hints Hints

คำสั้นๆ ที่ผู้ใช้อาจพูดเมื่อเติมช่อง hints ช่วยระบบ NLU ตัดสินใจว่าจะกรอกช่องใด

Slot object

ออบเจ็กต์ช่องที่ลงทะเบียนโดยใช้ prompt() ได้

createTextSlot

createTextSlot(callback, hints?) returns Slot<string>

สร้างสล็อตของสตริงประเภท

พารามิเตอร์
callback function(FilledSlot)

ฟังก์ชันที่จะดำเนินการเมื่อมีการเติมช่องโฆษณา

hints Hints

คำสั้นๆ ที่ผู้ใช้อาจพูดเมื่อเติมช่อง hints ช่วยระบบ NLU ตัดสินใจว่าจะกรอกช่องใด

Slot object

ออบเจ็กต์ช่องที่ลงทะเบียนโดยใช้ prompt() ได้

createConfirmationSlot

createConfirmationSlot(callback, hints?) returns Slot<boolean>

สร้างสล็อตประเภทบูลีน

พารามิเตอร์
callback function(FilledSlot)

ฟังก์ชันที่จะดำเนินการเมื่อมีการเติมช่องโฆษณา

hints Hints

คำสั้นๆ ที่ผู้ใช้อาจพูดเมื่อเติมช่อง hints ช่วยระบบ NLU ตัดสินใจว่าจะกรอกช่องใด

Slot object

ออบเจ็กต์ช่องที่ลงทะเบียนโดยใช้ prompt() ได้

createOptionsSlot

createOptionsSlot(options, callback, hints?) returns Slot<string>

สร้างสล็อตจากรายการตัวเลือกที่กำหนดไว้ล่วงหน้า

พารามิเตอร์
options array<Option>

ฟังก์ชันที่จะดำเนินการเมื่อมีการเติมช่องโฆษณา

callback function(FilledSlot)

ฟังก์ชันที่จะดำเนินการเมื่อมีการเติมช่องโฆษณา

hints Hints

คำสั้นๆ ที่ผู้ใช้อาจพูดเมื่อเติมช่อง hints ช่วยระบบ NLU ตัดสินใจว่าจะกรอกช่องใด

Slot object

ออบเจ็กต์ช่องที่ลงทะเบียนโดยใช้ prompt() ได้

ช่อง

ออบเจ็กต์ที่แทนช่องโฆษณาที่จะได้รับการเติมโฆษณา ลงทะเบียนได้โดยใช้ expect() หรือ prompt()

FilledSlot<T>

ออบเจ็กต์ที่เป็นตัวแทนช่องที่เติมสี

พารามิเตอร์
T boolean|number|string

ประเภทช่องโฆษณา

ตัวเลือก

ออบเจ็กต์ที่แสดงรายการประเภทช่องโฆษณา

ช่อง
key string

ตัวระบุที่ไม่ซ้ำกันสำหรับรายการประเภทช่อง

synonyms array<string>

รายการคำที่ใช้ในการเลือกตัวเลือกช่อง

คำแนะนำ

ออบเจ็กต์ที่แสดงถึงคำแนะนำสำหรับช่องโฆษณา

ช่อง
associatedWords array<string>

รายการคำที่ใช้เพื่อช่วยระบบ NLU ตัดสินใจว่าจะกรอกช่องใด

expect

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

สถานะของคำตอบ

ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้

ANSWERED: ผู้ใช้ตอบกลับข้อความแจ้ง

NO_MATCH: ผู้ใช้ได้รับแจ้งให้ตอบและตอบกลับด้วยคำตอบที่ไม่ตรงกับคำตอบที่คาดไว้หรือความตั้งใจอื่นใดที่คาดไว้

YIELD: ผู้ใช้ตอบกลับข้อความแจ้งโดยมีเจตนาที่ต่างออกไป

triggerScene

triggerScene(sceneName) returns Promise<TriggerSceneStatus>

เรียกฉาก

พารามิเตอร์
sceneName string

ชื่อของโหมดที่จะทริกเกอร์

TriggerSceneStatus string

สถานะการเรียกไปยังtriggerScene()

ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้

SUCCESS: เซิร์ฟเวอร์ประมวลผลคำขอเรียบร้อยแล้ว

BLOCKED: คำขอถูกบล็อกโดยการค้นหาที่มีอยู่ในเที่ยวบิน

UNKNOWN: ไม่ทราบสถานะของคำขอ

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

โค้ดเรียกกลับเหล่านี้ให้คุณตอบกลับข้อมูลหรือคำขอจากการดำเนินการแบบการสนทนา ในขณะที่เมธอดให้วิธีส่งข้อมูลหรือคำขอไปยังการดำเนินการแบบการสนทนา

onUpdate

onUpdate(data) returns Promise|undefined

เรียกใช้เมื่อมีการส่งการตอบกลับ Canvas จากการดําเนินการแบบการสนทนา TTS จะเริ่มต้นเมื่อ Promise ที่แสดงผลได้รับการแก้ไข หรือหมดเวลาหลังจากผ่านไป 10 วินาที

พารามิเตอร์
data Object

ข้อมูลที่อัปเดตซึ่งเว็บฮุคส่ง

onTtsMark

onTtsMark(markName) returns undefined

โค้ดเรียกกลับที่เรียกใช้ระหว่างการเล่น TTS

เครื่องหมายพิเศษที่ระบบเรียกเสมอ

  • START หมายถึงจุดเริ่มต้นของ TTS
  • END หมายถึงจุดสิ้นสุดของ TTS
  • ERROR ระบุข้อผิดพลาดในการเล่น TTS

นอกจากนี้ คุณยังระบุเครื่องหมายที่กำหนดเองได้โดยใช้ SSML และแท็ก <mark> เช่น <mark name="custom"/>

พารามิเตอร์
markName string

ทำเครื่องหมายชื่อในระหว่างการเล่น TTS

onInputStatusChanged

onInputStatusChanged(inputStatus) returns undefined

แจ้งแอป Canvas ว่าสถานะการป้อนข้อมูลของ Assistant มีการเปลี่ยนแปลง

พารามิเตอร์
inputStatus Enum

สถานะการประมวลผลการป้อนข้อมูลด้วยเสียงและ/หรือข้อความในอุปกรณ์ ซึ่งอาจมีดังต่อไปนี้

  • LISTENING : ไมโครโฟนเปิดอยู่
  • IDLE : ไมโครโฟนปิดอยู่
  • PROCESSING : Assistant กําลังดําเนินการค้นหา (ไมโครโฟนปิดอยู่)