AddonSessionHandler

@PublicApi
interface AddonSessionHandler


يتم تقديم عمليات معاودة الاتصال من خلال تطبيق الإضافة لجلسة.

ملخّص

الأنواع المتداخلة

توضِّح سبب تفعيل معاودة الاتصال بـ onSessionEnded.

يصِف هذا القسم امتيازًا تم تخصيصه أو إبطاله من مشارك في جلسة إضافية.

وظائف عامة

Unit
onCollaborationStartingStateUpdate(
    collaborationStartingState: CollaborationStartingState!
)

سيتلقّى أحدث حالة لبدء جلسة الإضافة.

Unit

يتلقى أحدث حالة من الامتيازات التي تحدد كيفية السماح للمستخدم بالمشاركة في جلسة إضافية.

Unit

يتم الردّ على نهاية جلسة الإضافة.

وظائف عامة

onCollaborationStartingStateUpdate

fun onCollaborationStartingStateUpdate(
    collaborationStartingState: CollaborationStartingState!
): Unit

سيتلقّى أحدث حالة لبدء جلسة الإضافة.

يجب تنفيذ عملية التنفيذ بشكلٍ ملموس للإضافة المخصّصة لدعم حالة بدء التعاون.

onParticipantPrivilegeChanged

fun onParticipantPrivilegeChanged(
    privileges: (Mutable)List<AddonSessionHandler.Privilege!>!,
    disabledPrivileges: (Mutable)List<AddonSessionHandler.Privilege!>!
): Unit

يتلقى أحدث حالة من الامتيازات التي تحدد كيفية السماح للمستخدم بالمشاركة في جلسة إضافية.

ويجب تنفيذ الإجراء بشكلٍ ملموس للإضافة التي تتيح استخدام عناصر تحكّم المضيف.

onSessionEnded

fun onSessionEnded(endReason: AddonSessionHandler.EndReason!): Unit

يتم الردّ على نهاية جلسة الإضافة.

  1. لن يتلقّى هذا المعالج استدعاءات إضافية ما لم يتم إنشاء AddonSession جديد باستخدام مثيل المعالج نفسه.
  2. ستقوم حزمة SDK بتنظيف نفسها. ليس من الضروري إجراء مكالمة إضافية مع الرقم endSession.

مثال على التنفيذ:

if (EndReason.SESSION_ENDED_UNEXPECTEDLY.equals(endReason)) {
  log("Something happened unexpectedly");
  // Display UI to user in case they want to reconnect.
  return;
}

if (EndReason.MEETING_ENDED_BY_USER.equals(endReason)) {
  // The meeting is disconnected because the user left the meeting. Perform some
  // cleanup, then exit.
  this.onMeetingDisconnected();
  return;
}

if (EndReason.SESSION_ENDED_BY_USER.equals(endReason)) {
  // Disconnected because the user left the session from the Meet application. However, the
  // conference is still active in Meet. Perform some cleanup, then listen for a possible
  // rejoin event.
  this.onSessionDisconnected();
  return;
}
المَعلمات
endReason: AddonSessionHandler.EndReason!

سبب إنهاء الجلسة