أنواع الأحداث

توضّح هذه الصفحة السمة eventType وتشرح مواصفات أنواع الأحداث. المتاحة في واجهة برمجة تطبيقات تقويم Google.

يسمح "تقويم Google" للمستخدمين بإنشاء أحداث عامة، بالإضافة إلى أحداث يتم تصميمها لحالات استخدام معينة وبشأن الخصائص المخصصة.

يمكن اكتشاف نوع الحدث في الأماكن التالية في واجهة برمجة التطبيقات:

  • ويتم عرض جميع الأحداث باستخدام eventType.
  • eventType يجب تعيينه عند إنشاء أو تحديث مورد الحدث. في حال ترك السياسة بدون ضبط، سيتم استخدام نوع واحد ('default').
  • eventTypes يمكن تحديده في الأحداث:قائمة لاستدعاء قائمة بالأحداث من أنواع معينة. إذا لم يتم تحديد أي نوع، ستكون جميع أنواع الأحداث سيتم إرجاعه.
  • eventTypes يمكن تحديده في events:watch للاشتراك في التحديثات المتعلقة بأحداث من أنواع معينة. إذا لم يتم العثور على أي نوع المحدد، سيؤدي الطلب إلى الاشتراك في جميع أنواع الأحداث.

الحدث التلقائي

يتمّ إنشاء الأحداث ذات النوع default واستخدامها كأحد الأحداث الرئيسية الموارد الخاصة بواجهة برمجة تطبيقات تقويم Google. إنها تدعم مجموعة واسعة من الخصائص التي يمكن استخدامها لتخصيص الحدث بشكل أكبر

عرض إنشاء أحداث لبدء العمل بها الأحداث في "تقويم Google"

تاريخ الميلاد

أعياد الميلاد هي أحداث خاصة طوال اليوم تتكرر سنويًا. لديهم المواصفات التالية:

  • تم ضبط eventType على 'birthday'
  • start و تحتاج حقول end إلى تحديد حدث يستمر طوال اليوم ويمتد لمدة يوم واحد بالضبط.
  • قيمة الحقل visibility يجب أن يكون 'private'.
  • قيمة الحقل transparency يجب أن يكون 'transparent'.
  • الحاجة إلى تكرار سنوي، مما يعني أن يجب أن يكون الحقل recurrence 'RRULE:FREQ=YEARLY' لا بد أن يكون لأحداث أعياد الميلاد التي تقع في 29 شباط (فبراير) قاعدة التكرار التالية: 'RRULE:FREQ=YEARLY;BYMONTH=2;BYMONTHDAY=-1'
  • يمكن أن يتضمّن colorId summary و reminders
  • لا تتوافق مع أي خصائص أخرى للأحداث.

أحداث من Gmail

الأحداث التي تم إنشاؤها تلقائيًا من Gmail تحتوي على نوع الحدث 'fromGmail'.

لا تسمح Google Calendar API بإنشاء هذا النوع من الأحداث باستخدام insert.

تسمح واجهة برمجة التطبيقات بتحديث colorId, reminders, visibility, transparency, status, private وshared الخصائص الموسّعة باستخدام التحديث والتصحيح.

تدعم واجهة برمجة التطبيقات get طرق القائمة لقراءة الأحداث من Gmail eventTypes يمكن أن يكون يتم ضبطها على 'fromGmail' لعرض الأحداث التي تم إنشاؤها من Gmail فقط. إذا لم يتم العثور على أي نوع سيتم إدراج الأحداث من Gmail إلى جانب جميع أنواع الأحداث الأخرى.

تتيح واجهة برمجة التطبيقات طريقة الساعة الاشتراك في التغييرات التي تطرأ على الأحداث من Gmail في "تقويم Google". إذا لم يتم العثور على أي نوع المحدد، سيتم الاشتراك في جميع أنواع الأحداث، بما في ذلك 'fromGmail'.

يمكن حذف الأحداث من Gmail باستخدام delete واجهة برمجة تطبيقات "تقويم Google"

تغيير منظّم حدث من Gmail باستخدام move أو طرق التحديث غير متاحة.

وقت التركيز وخارج المكتب ومكان العمل

يمكن استخدام Google Calendar API لإنشاء وإدارة الأحداث التي تعرض حالة مستخدمي "تقويم Google".

لا تتوفر هذه الميزات إلا في التقاويم الأساسية، وبعض مستخدمو "تقويم Google" يُرجى الاطّلاع على مقالة إدارة وقت التركيز وخارج المكتب والعمل. أحداث الموقع الجغرافي للاطّلاع على مزيد من المعلومات.

استكشاف أنواع الأحداث في "برمجة تطبيقات Google"

برمجة تطبيقات Google هي سحابة إلكترونية تستند إلى JavaScript برمجة نصية تسمح لك بإنشاء تطبيقات أعمال تتكامل مع Google Workspace يتم تطوير النصوص البرمجية في محرِّر رموز يستند إلى المتصفّح، يتم تخزينها وتشغيلها على خوادم Google. راجِع أيضًا برمجة تطبيقات Google البدء السريع لبدء استخدام برمجة التطبيقات لإرسال الطلبات إلى واجهة برمجة تطبيقات "تقويم Google"

توضِّح التعليمات التالية كيفية قراءة الأحداث وإدارتها باستخدام Google Calendar API كخدمة متقدمة في برمجة تطبيقات Google. للحصول على قائمة كاملة بموارد وطرق واجهة برمجة التطبيقات لتقويم Google، اطّلِع على المستندات المرجعية.

إنشاء النص البرمجي وإعداده

  1. أنشئ نصًا بالانتقال إلى script.google.com/create.
  2. في الجزء الأيمن بجانب الخدمات، انقر على "إضافة خدمة"
  3. اختَر Google Calendar API وانقر على إضافة.
  4. بعد تفعيلها، تظهر واجهة برمجة التطبيقات في اللوحة اليمنى. الطرق الصفوف في واجهة برمجة التطبيقات باستخدام الكلمة الرئيسية للتقويم في المحرر.

(اختياري) تعديل مشروع Google Cloud

يحتوي كل مشروع "برمجة تطبيقات Google" على مشروع Google Cloud مرتبط به. بإمكان النص البرمجي استخدام المشروع التلقائي الذي تستخدمه برمجة تطبيقات Google تلقائيًا ينشئها. إذا أردت استخدام مشروع مخصّص على Google Cloud، يُرجى الاطّلاع على التبديل إلى مشروع عادي مختلف على Cloud بعد إعداد المشروع على Google Cloud، انقر على رمز المحرِّر على يمين الصفحة للرجوع إلى محرر التعليمات البرمجية.

إضافة رمز إلى النص البرمجي

يوضح نموذج الرمز البرمجي التالي كيفية سرد الأحداث وقراءتها وإنشاؤها باستخدام قيم eventType مختلفة.

  1. الصق ما يلي في أداة تعديل الرموز.

    const CALENDAR_ID = 'CALENDAR_ID' || 'primary';
    
    /** Lists default events. */
    function listDefaultEvents() {
      listEvents('default');
    }
    
    /** Lists events from Gmail. */
    function listEventsFromGmail() {
      listEvents('fromGmail');
    }
    
    /**
      * Lists events with the given event type. If no type is specified, lists all events.
      * See https://developers.google.com/calendar/api/v3/reference/events/list
      */
    function listEvents(eventType = undefined) {
      // Query parameters for the list request.
      const optionalArgs = {
        eventTypes: eventType ? [eventType] : undefined,
        singleEvents: true,
        timeMax: '2024-07-30T00:00:00+01:00',
        timeMin: '2024-07-29T00:00:00+01:00',
      }
      try {
        var response = Calendar.Events.list(CALENDAR_ID, optionalArgs);
        response.items.forEach(event => console.log(event));
      } catch (exception) {
        console.log(exception.message);
      }
    }
    
    /**
      * Reads the event with the given eventId.
      * See https://developers.google.com/calendar/api/v3/reference/events/get
      */
    function readEvent() {
      try {
        var response = Calendar.Events.get(CALENDAR_ID, 'EVENT_ID');
        console.log(response);
      } catch (exception) {
        console.log(exception.message);
      }
    }
    
    /** Creates a default event. */
    function createDefaultEvent() {
      const event = {
        start: { dateTime: '2024-07-30T10:30:00+01:00'},
        end: { dateTime: '2024-07-30T12:30:00+01:00'},
        description: 'Created from Apps Script.',
        eventType: 'default',
        summary: 'Sample event',
      }
      createEvent(event);
    }
    
    /**
      * Creates a Calendar event.
      * See https://developers.google.com/calendar/api/v3/reference/events/insert
      */
    function createEvent(event) {
    
      try {
        var response = Calendar.Events.insert(event, CALENDAR_ID);
        console.log(response);
      } catch (exception) {
        console.log(exception.message);
      }
    }
    

    استبدِل ما يلي:

    • CALENDAR_ID: عنوان البريد الإلكتروني للتقويم إلى واسترداد وإنشاء الأحداث عليها. يتم تعيين هذا الثابت في البداية على 'primary'، وهي كلمة رئيسية للوصول إلى التقويم الأساسي مستخدم سجّل دخوله. يتيح لك تغيير هذه القيمة قراءة الأحداث في تقاويم المستخدمين الآخرين الذين يمكنك الوصول إليهم.
    • EVENT_ID: معرّف الحدث يمكنك الاتصال الأحداث:قائمة لاسترداد أرقام تعريف الأحداث.

تشغيل عيّنة التعليمات البرمجية

  1. أعلى محرر التعليمات البرمجية، حدد الدالة المطلوب تشغيلها من القائمة المنسدلة، وانقر على تشغيل.
  2. عند التنفيذ الأول، سيُطلب منك منح الإذن بالوصول. المراجعة والسماح بها برمجة التطبيقات للوصول إلى تقويمك.
  3. يمكنك فحص نتائج تنفيذ النص البرمجي في سجل التنفيذ الذي يظهر في أسفل النافذة.