API การดูร่วมกันจะจัดการประสบการณ์การประชุมของผู้ใช้ ผู้ชมที่ดูหรือฟังเนื้อหาในแอปของคุณ
คู่มือนี้จะอธิบายวิธีใช้ Co-Watching API
เริ่มต้นใช้งาน
หากต้องการใช้ API การดูร่วมกัน ขั้นแรกคุณต้องทำให้ ส่วนเสริม Meet เมื่อทำตามขั้นตอนดังกล่าวเสร็จแล้ว คุณจะเริ่มต้นใช้งาน Co-Watching API ได้ภายในส่วนเสริมใหม่
หากต้องการใช้ Co-Watching 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
คือวิธีที่ Co-Watching API อัปเดตแอปของคุณทุกครั้งที่มีสถานะใหม่ เมื่อเรียกใช้เมธอด onCoWatchingStateChanged()
แอปของคุณจะใช้สถานะใหม่ทันที
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ Co-Watching 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.25 เท่า)notifyReady()
: เรียกใช้เมื่อบัฟเฟอร์เสร็จสมบูรณ์และสื่อพร้อมเล่นแล้วnotifySeekToTimestamp()
: เรียกใช้เมื่อผู้ใช้เปลี่ยนตำแหน่งการเล่นอย่างชัดเจนnotifySwitchToMedia()
: โทรเมื่อสื่อที่เล่นอยู่มีการเปลี่ยนแปลง ตัวอย่างเช่น ผู้ใช้ เลือกวิดีโอใหม่ หรือเล่นอัตโนมัติจะเริ่มวิดีโอถัดไป