ה-API של שיתוף בזמן אמת ב-Google Meet משמש לסנכרון נתונים שרירותיים בין פגישות משתתפים. מדובר בנתונים שהאפליקציה שלכם תלויה בהם.
כדי להעביר את הנתונים, צריך לסדר אותם בסדר יורד ל-Uint8Array
. עבור
מידע נוסף, ראו ספרייה רגילה של JavaScript
.
אם אתם לא בטוחים איך לכתוב את הנתונים בסדרה שלכם, אפשר לעיין בדוגמאות הקוד שבהמשך.
במדריך הזה מוסבר איך להטמיע את Co-Doing API.
צור CoDoingClient
כדי להתחיל, צריך ליצור
CoDoingClient
מAddonSession
שיצרת במאמר תחילת העבודה.
כדי ליצור CoDoingClient
, צריך לקרוא אל
AddonSession.createCoDoingClient
ונספק
CoDoingDelegate
.
באמצעות CoDoingDelegate
נעשה שימוש ב-Co-Doing API
מעדכן את האפליקציה בכל פעם שמצב חדש שלה זמין. צפוי
שכאשר
CoDoingDelegate.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 newState to your ongoing CoDoing activity
},
});
מחליפים את ACTIVITY_TITLE בשם הפעילות.
ניהול המצב הנוכחי
כשמשתמשים מבצעים פעולה באפליקציה, האפליקציה צפויה
שיחות מיידיות
CoDoingClient.broadcastStateUpdate
דוגמת הקוד הבאה מציגה הטמעה של
CoDoingClient.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 במצב הנוכחי של האפליקציה.