خدمة نقل بيانات مجموعات حزمة تطوير البرامج (SDK) للمشرف

تسمح لك خدمة نقل مجموعات SDK للمشرف باستخدام Groups Migration API في لغة "برمجة تطبيقات Google" لحزمة SDK للمشرف. تمنح واجهة برمجة التطبيقات هذه مشرفي Google Workspace النطاقات (بما في ذلك الموردين) القدرة على ترحيل الرسائل الإلكترونية من المجلدات العامة وقوائم التوزيع إلى أرشيفات مناقشات "مجموعات Google".

مَراجع

للحصول على معلومات تفصيلية حول هذه الخدمة، يمكنك الاطّلاع على المستندات المرجعية الخاصة بـ Admin SDK Groups Migration API. مثل جميع الخدمات المتقدمة في لغة برمجة التطبيقات، تستخدم خدمة نقل مجموعات SDK للمشرف الكائنات والطرق والمعلمات نفسها مثل واجهة برمجة التطبيقات العامة. لمزيد من المعلومات، يُرجى الاطّلاع على كيفية تحديد توقيعات الطرق.

للإبلاغ عن المشاكل والعثور على خدمات دعم أخرى، يُرجى الاطّلاع على دليل الدعم بشأن نقل بيانات مجموعات SDK للمشرف.

نموذج التعليمات البرمجية

يستخدم الرمز النموذجي أدناه الإصدار 1 من واجهة برمجة التطبيقات.

نقل الرسائل الإلكترونية من Gmail إلى إحدى "مجموعات Google"

يحصل هذا النموذج على ثلاث رسائل بتنسيق RFC 822 من كل سلسلة من سلاسل المحادثات الثلاث الأخيرة في البريد الوارد الخاص بالمستخدم في Gmail، وينشئ كائنًا ثنائيًا من محتوى الرسالة الإلكترونية (بما في ذلك المرفقات)، ويدرجها في إحدى مجموعات Google في النطاق.

advanced/adminSDK.gs
/**
 * Gets three RFC822 formatted messages from the each of the latest three
 * threads in the user's Gmail inbox, creates a blob from the email content
 * (including attachments), and inserts it in a Google Group in the domain.
 */
function migrateMessages() {
  // TODO (developer) - Replace groupId value with yours
  const groupId = 'exampleGroup@example.com';
  const messagesToMigrate = getRecentMessagesContent();
  for (const messageContent of messagesToMigrate) {
    const contentBlob = Utilities.newBlob(messageContent, 'message/rfc822');
    AdminGroupsMigration.Archive.insert(groupId, contentBlob);
  }
}

/**
 * Gets a list of recent messages' content from the user's Gmail account.
 * By default, fetches 3 messages from the latest 3 threads.
 *
 * @return {Array} the messages' content.
 */
function getRecentMessagesContent() {
  const NUM_THREADS = 3;
  const NUM_MESSAGES = 3;
  const threads = GmailApp.getInboxThreads(0, NUM_THREADS);
  const messages = GmailApp.getMessagesForThreads(threads);
  const messagesContent = [];
  for (let i = 0; i < messages.length; i++) {
    for (let j = 0; j < NUM_MESSAGES; j++) {
      const message = messages[i][j];
      if (message) {
        messagesContent.push(message.getRawContent());
      }
    }
  }
  return messagesContent;
}