को-डूइंग एपीआई का इस्तेमाल, मीटिंग में शामिल लोगों के बीच किसी भी तरह के डेटा को सिंक करने के लिए किया जाता है. यह कोई भी ऐसा डेटा हो सकता है जिस पर आपका ऐप्लिकेशन काम करता है.
डेटा को ट्रांसमिट करने के लिए, उसे Uint8Array में क्रम से लगाना ज़रूरी है. ज़्यादा जानकारी के लिए, JavaScript की स्टैंडर्ड लाइब्रेरी
का रेफ़रंस देखें.
अगर आपको डेटा को क्रम से लगाने का तरीका नहीं पता है, तो यहां दिए गए कोड के सैंपल देखें.
इस गाइड में, को-डूइंग एपीआई को लागू करने का तरीका बताया गया है.
शुरू करें
को-डूइंग एपीआई का इस्तेमाल करने के लिए, सबसे पहले Meet ऐड-ऑन डिप्लॉय करना होगा. ये चरण पूरे करने के बाद, अपने नए ऐड-ऑन में को-डूइंग एपीआई का इस्तेमाल किया जा सकता है.
को-डूइंग एपीआई का इस्तेमाल करने के लिए, सबसे पहले
AddonSession ऑब्जेक्ट पाएं,
जो Google Meet की को-ऐक्टिविटी के लिए एंट्री पॉइंट के तौर पर काम करता है:
TypeScript
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});
CLOUD_PROJECT_NUMBER की जगह, अपने Google Cloud प्रोजेक्ट का प्रोजेक्ट नंबर डालें.
को-डूइंग क्लाइंट बनाना
शुरू करने के लिए, अपने AddonSession से
CoDoingClient
ऑब्जेक्ट बनाएं.
CoDoingClient बनाने के लिए, createCoDoingClient()
तरीके को कॉल करें और
CoDoingDelegate
ऑब्जेक्ट उपलब्ध कराएं.
CoDoingDelegate की मदद से, को-डूइंग एपीआई आपके ऐप्लिकेशन को तब अपडेट करता है, जब उसके पास कोई नई स्थिति उपलब्ध होती है. उम्मीद की जाती है कि
जब
onCoDoingStateChanged()
तरीका कॉल किया जाए, तो आपका ऐप्लिकेशन तुरंत नई स्थिति लागू कर दे.
यहां दिए गए कोड के सैंपल में, को-डूइंग एपीआई का इस्तेमाल करने का तरीका बताया गया है:
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 की जगह, ऐप्लिकेशन की मौजूदा स्थिति डालें.