API การดูร่วมกันจะจัดการประสบการณ์การประชุมของผู้ใช้ ผู้ชมที่ดูหรือฟังเนื้อหาในแอปของคุณ
คู่มือนี้อธิบายวิธีใช้ API การดูร่วมกัน
เริ่มต้นใช้งาน
หากต้องการใช้ API การดูร่วมกัน ขั้นแรกคุณต้องสร้าง ส่วนเสริม Meet เมื่อทำตามขั้นตอนดังกล่าวแล้ว คุณจะเริ่มต้นใช้งาน Co-Watching API ได้ภายในส่วนเสริมใหม่
หากต้องการใช้ API การดูร่วมกัน ให้เริ่มด้วยการรับ
AddonSession
ของออบเจ็กต์
ซึ่งทำหน้าที่เป็นจุดแรกเข้าสำหรับกิจกรรมร่วมของ Google Meet ได้แก่
TypeScript
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});
แทนที่ CLOUD_PROJECT_NUMBER ด้วยหมายเลขโปรเจ็กต์ Google Cloud
สร้างไคลเอ็นต์การดูร่วมกัน
ในการเริ่มต้นใช้งาน ให้สร้าง
CoWatchingClient
จาก AddonSession
หากต้องการสร้าง CoWatchingCient
ให้เรียกใช้เมธอด createCoWatchingClient()
แล้วระบุออบเจ็กต์ CoWatchingDelegate
CoWatchingDelegate
คือวิธีที่ API การดูร่วมกันอัปเดตแอปของคุณ
เมื่อใดก็ตามที่มีสถานะใหม่ คาดว่าเมื่อ
onCoWatchingStateChanged()
เรียกเมธอด แอปของคุณจะใช้สถานะใหม่ทันที
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ API การดูร่วมกัน
TypeScript
const coWatchingClient = await addonSession.createCoWatchingClient({
activityTitle: "ACTIVITY_TITLE",
onCoWatchingStateQuery() {
// This function should return the current state of your CoWatching activity
return getMyApplicationCoWatchingState();
},
onCoWatchingStateChanged(coWatchingState: CoWatchingState) {
// This function should apply newState to your ongoing CoWatching activity
},
});
แทนที่ ACTIVITY_TITLE ด้วยชื่อสื่อของกิจกรรม
จัดการสถานะปัจจุบัน
เมื่อผู้ใช้ดำเนินการในแอปพลิเคชันของคุณ แอปพลิเคชันของคุณควรเรียกใช้เมธอด API ที่ระบุไว้ทันที
คุณควรเรียกใช้เมธอดเหล่านี้เพื่อตอบสนองต่อเหตุการณ์ที่สําคัญเท่านั้น สำหรับ
เช่น คุณไม่จำเป็นต้องโทรหาทุกครั้งที่แอปเล่นเกม
ในการสร้างสรรค์วิดีโอ CoWatchingDelegate
ที่คุณสร้างแฮนเดิลกำลังได้รับการอัปเดต
ในตำแหน่งต่อไปนี้
คุณควบคุมสถานะการดูร่วมกันได้โดยใช้วิธีต่อไปนี้
notifyBuffering()
: เรียกใช้เมื่อแอปของผู้ใช้เริ่มบัฟเฟอร์เนื่องจากมีการบัฟเฟอร์จากสื่อก่อนหน้า การค้นหาสื่อ ความคับคั่งของเครือข่ายnotifyPauseState()
: โทรเมื่อผู้ใช้หยุดชั่วคราวหรือยกเลิกการหยุดสื่อที่เล่นไว้ชั่วคราวnotifyPlayoutRate()
: เรียกใช้เมื่อผู้ใช้อัปเดตความเร็วในการเล่นเป็นค่าใหม่ (เช่น 1.25x)notifyReady()
: โทรเมื่อบัฟเฟอร์เสร็จสมบูรณ์ และสื่อก็พร้อมที่จะเล่นnotifySeekToTimestamp()
: เรียกใช้เมื่อผู้ใช้เปลี่ยนตำแหน่งการเล่นอย่างชัดเจนnotifySwitchToMedia()
: โทรเมื่อสื่อที่เล่นอยู่มีการเปลี่ยนแปลง เช่น ผู้ใช้เลือกวิดีโอใหม่ หรือการเล่นอัตโนมัติเริ่มวิดีโอถัดไป