Co-Doing API ใช้เพื่อซิงค์ข้อมูลที่กำหนดเองระหว่างผู้เข้าร่วมการประชุม ซึ่งอาจเป็นข้อมูลใดก็ได้ที่แอปของคุณต้องใช้
คุณต้องทำให้ข้อมูลเป็นอนุกรมเป็น Uint8Array
เพื่อให้ส่งได้ ดูข้อมูลเพิ่มเติมได้ที่การอ้างอิง
ไลบรารีมาตรฐาน JavaScript
หากไม่แน่ใจว่าจะแปลงข้อมูลเป็นอนุกรมอย่างไร โปรดดูตัวอย่างโค้ด ต่อไปนี้
คู่มือนี้อธิบายวิธีใช้ Co-Doing API
เริ่มต้นใช้งาน
หากต้องการใช้ Co-Doing API คุณต้องติดตั้งใช้งาน ส่วนเสริม Meet ก่อน เมื่อทำตามขั้นตอนเหล่านั้นเสร็จแล้ว คุณจะเริ่มใช้ Co-Doing API จากภายในส่วนเสริมใหม่ได้
หากต้องการใช้ Co-Doing API ให้เริ่มต้นด้วยการรับออบเจ็กต์
AddonSession
ซึ่งทำหน้าที่เป็นจุดแรกเข้าสำหรับกิจกรรมร่วมใน Google Meet
TypeScript
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});
แทนที่ CLOUD_PROJECT_NUMBER ด้วยหมายเลขโปรเจ็กต์ของ โปรเจ็กต์ Google Cloud
สร้างไคลเอ็นต์ที่ทำงานร่วมกัน
สร้างออบเจ็กต์
CoDoingClient
จาก AddonSession
เพื่อเริ่มต้นใช้งาน
หากต้องการสร้าง CoDoingClient
ให้เรียกใช้เมธอด
createCoDoingClient()
และระบุออบเจ็กต์
CoDoingDelegate
CoDoingDelegate
คือวิธีที่ Co-Doing API
อัปเดตแอปของคุณทุกครั้งที่มีสถานะใหม่พร้อมใช้งาน เมื่อเรียกใช้เมธอด onCoDoingStateChanged()
แอปควรใช้สถานะใหม่ทันที
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ Co-Doing API
TypeScript
interface MyState {
someString: string;
someNumber: number;
}
/**
* Serialize/deserialize using JSON.stringify
* You can use any method you want; this is included for as an example
*/
function toBytes(state: MyState): Uint8Array {
return new TextEncoder().encode(JSON.stringify(state));
}
function fromBytes(bytes: Uint8Array): MyState {
return JSON.parse(new TextDecoder().decode(bytes)) as MyState;
}
const coDoingClient = await addonSession.createCoDoingClient({
activityTitle: "ACTIVITY_TITLE",
onCoDoingStateChanged(coDoingState: CoDoingState) {
const newState = fromBytes(coDoingState.bytes);
// This function should apply the new state to your ongoing CoDoing activity
},
});
แทนที่ ACTIVITY_TITLE ด้วยชื่อกิจกรรมของคุณ
จัดการสถานะปัจจุบัน
เมื่อผู้ใช้ดำเนินการในแอปของคุณ เราคาดหวังว่าแอปจะเรียกใช้เมธอด
broadcastStateUpdate()
ทันที
ตัวอย่างโค้ดต่อไปนี้แสดงการใช้งานเมธอด
broadcastStateUpdate()
TypeScript
const myState: MyState = {
someString: "SOME_STRING",
someNumber: 0
};
document.getElementById('some-button').onClick(() => {
myState.someNumber = myState.someNumber + 1;
coDoingClient.broadcastStateUpdate({ bytes: toBytes(myState) });
});
แทนที่ SOME_STRING ด้วยสถานะปัจจุบันของแอป