AddonClient

@PublicApi
interface AddonClient


ऐड-ऑन सेशन को शुरू और बंद करने के लिए प्राइमरी इंटरफ़ेस.

ध्यान दें: एक समय पर सिर्फ़ एक सेशन चालू रह सकता है. अगर ऐसा नहीं है, तो begin से मिला ListenableFuture, . सेशन अपने-आप खत्म हो सकता है (जैसे, उपयोगकर्ता ने मीटिंग छोड़ दी) और onSessionEnded को कॉल करें या endSession को कॉल करके सेशन खत्म किया जा सकता है.

इस्तेमाल का उदाहरण:

class AwesomeAddonSessionHandler implements AddonSessionHandler {}

class AwesomeCoWatchingHandler implements CoWatchingHandler {}

public void registerStatusListener() {
  AddonClient meetClient = AddonClientFactory.getClient();
  meetClient.registerMeetingStatusListener(
      appContext,
      meetingStatus -> {
        switch (meetingStatus.status()) {
          case NO_MEETING:
            // User is not in a meeting currently.
            break;
          case MEETING:
            // User is in a meeting, check if they want to start an add-on session.
            showStartAddonSessionDialog();
            break;
          case ADDON_SESSION:
            // User is in a meeting that already hosts an add-on session, check if they want
            // to join the ongoing session.
            showJoinAddonSessionDialog();
            break;
        }
      },
      Optional.empty());
}

public ListenableFuture<AddonClient> initialSetup() {
  AddonClient meetClient = AddonClientFactory.getClient();
  return meetClient
      .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
      .withCoWatching(new AwesomeCoWatchingHandler())
      .begin();
}

खास जानकारी

नेस्ट किए गए प्रकार

इससे, ऐड-ऑन सेशन से पहले, उसके दौरान या बाद में हुई गड़बड़ी के बारे में पता चलता है.

सार्वजनिक फ़ंक्शन

AddonSession.Builder!

नए ऐड-ऑन सेशन के लिए बिल्डर की सुविधा दिखाता है.

Unit
notifyAddonFailureEvent(
    appContext: Context!,
    failureEventType: AddonClient.AddonFailureEventType!
)

Meet को ऐड-ऑन के काम न करने पर होने वाले इवेंट की सूचना देता है.

Unit
registerMeetingStatusListener(
    appContext: Context!,
    listener: MeetingStatusListener!,
    handler: Optional<Handler!>!
)

मीटिंग और ऐड-ऑन सेशन की स्थिति में हुए बदलाव के बारे में सूचना पाने के लिए, लिसनर को रजिस्टर करता है.

Unit

MeetingStatus में हुए बदलावों के लिए, ऐक्टिव लिसनर का रजिस्ट्रेशन रद्द करता है.

सार्वजनिक फ़ंक्शन

newSessionBuilder

fun newSessionBuilder(handler: AddonSessionHandler!): AddonSession.Builder!

नए ऐड-ऑन सेशन के लिए बिल्डर की सुविधा दिखाता है. begin को कॉल करने के बाद ही सेशन शुरू होगा.

सेशन शुरू करने के लिए, इस बिल्डर पर पहले चेन withCoWatching, withCoDoing या दोनों जोड़ें.

इस्तेमाल का उदाहरण:

ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withCoDoing(new AwesomeCoDoingHandler())
    .begin();
मीटिंग में शामिल लोगों के मेटाडेटा के फ़ंक्शन का फ़ायदा पाने के लिए, बिल्डर चेन पर PartnerMetadata के साथ कॉल करें. इससे, यह पता किया जा सकेगा कि इवेंट में हिस्सा लेने वाले अन्य लोगों के लिए, शुरुआती स्थिति क्या है और लिसनर को रजिस्टर किया गया है. उदाहरण के लिए:
ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withParticipantMetadata(new AwesomeMetadataHandler(), myMetadataBytes)
    .begin(appContext);
सेशन शुरू करने के तरीके के बारे में ज़्यादा जानकारी के लिए, begin देखें.
पैरामीटर
handler: AddonSessionHandler!

सभी ऐड-ऑन सेशन पर लागू होने वाले कॉलबैक

लौटाए गए प्रॉडक्ट
AddonSession.Builder!

नए AddonSession इंस्टेंस के लिए एक बिल्डर

थ्रो
java.lang.NullPointerException

अगर दिया गया कोई भी तर्क शून्य है

notifyAddonFailureEvent

fun notifyAddonFailureEvent(
    appContext: Context!,
    failureEventType: AddonClient.AddonFailureEventType!
): Unit

Meet को ऐड-ऑन के काम न करने पर होने वाले इवेंट की सूचना देता है.

पैरामीटर
appContext: Context!

Meet ऐड-ऑन के SDK टूल का इस्तेमाल करने वाले ऐप्लिकेशन की getApplicationContext वैल्यू

failureEventType: AddonClient.AddonFailureEventType!

किसी लाइव शेयरिंग सेशन से पहले, उसके दौरान या उसके बाद किस तरह की गड़बड़ी हुई है

थ्रो
java.lang.NullPointerException

अगर दिया गया कोई भी तर्क शून्य है

registerMeetingStatusListener

fun registerMeetingStatusListener(
    appContext: Context!,
    listener: MeetingStatusListener!,
    handler: Optional<Handler!>!
): Unit

मीटिंग और ऐड-ऑन सेशन की स्थिति में हुए बदलाव के बारे में सूचना पाने के लिए, लिसनर को रजिस्टर करता है.

रजिस्टर किए गए लिसनर को, इनमें से किसी एक स्टेटस की वजह से सूचना दी जाएगी:

  • MEETING - Meet ऐप्लिकेशन में कोई मीटिंग चल रही है
  • ADDON_SESSION - कोई ऐड-ऑन सेशन चालू है. ऐसा सिर्फ़ तब किया जा सकता है, जब कोई चालू मीटिंग हो.
  • NO_MEETING - कोई मीटिंग या ऐड-ऑन सेशन नहीं है
पैरामीटर
appContext: Context!

Meet ऐड-ऑन के SDK टूल का इस्तेमाल करने वाले ऐप्लिकेशन की getApplicationContext वैल्यू

listener: MeetingStatusListener!

स्टेटस में बदलाव के बारे में सूचना पाने के लिए, MeetingStatusListener

handler: Optional<Handler!>!

एसिंक्रोनस तरीके से चलाने के लिए Handler का Optional. एक लॉजिक न दिए जाने पर, यूज़र इंटरफ़ेस (यूआई) थ्रेड पर लागू होने वाला लॉजिक चल सकता है.

थ्रो
java.lang.IllegalStateException

अगर पहले से रजिस्टर किए गए लिसनर के लिए, unregisterMeetingStatusListener को कॉल करने से पहले इस तरीके को कॉल किया जाता है

unregisterMeetingStatusListener

fun unregisterMeetingStatusListener(appContext: Context!): Unit

MeetingStatus में हुए बदलावों के लिए, ऐक्टिव लिसनर का रजिस्ट्रेशन रद्द करता है.

पैरामीटर
appContext: Context!

Meet ऐड-ऑन के SDK टूल का इस्तेमाल करने वाले ऐप्लिकेशन की getApplicationContext वैल्यू

थ्रो
java.lang.IllegalStateException

अगर registerMeetingStatusListener को कॉल करने से पहले इस तरीके को कॉल किया जाता है.