Отключение уведомлений по электронной почте, связанных с ответами посетителей, в Google Calendar API

Я добавил возможность синхронизации гугл календаря с событиями моего приложения. Но проблема заключалась в том, что организатор/создатель мероприятия получал электронные письма от Google всякий раз, когда участник мероприятия отвечал на событие календаря Google. Я хотел получать уведомления по электронной почте только для создания/обновления событий. Я добавил notification_settings и оставил метод event_response пустым но это не сработало.

CALENDAR_ID = 'primary'
CALENDAR_NOTIFIER = 'externalOnly'

gcal_event = client.insert_event(
                                 CALENDAR_ID,
                                 Google::Apis::CalendarV3::Event.new(gcal_event_params(gcal_event_attendees)),
                                 send_updates: CALENDAR_NOTIFIER
                                )


-----------------------
// added notification_settings later so that the organizer should not receive event response, but no luck so far.

def gcal_event_params(gcal_event_attendees)
 {
        summary: event.name,
        description: event.description,
        location: event.location,
        start: { date_time: event.start.to_datetime.to_s, time_zone: org_timezone },
        end: { date_time: event.ends.to_datetime.to_s, time_zone: org_timezone },
        attendees: gcal_event_attendees,
        reminders: { use_default: true },
        notification_settings: {
          notifications: [
                          {type: 'event_creation', method: 'email'},
                          {type: 'event_change', method: 'email'},
                          {type: 'event_cancellation', method: 'email'},
                          {type: 'event_response', method: ''}
                         ]
        }  }
end

person hasanadeem    schedule 20.01.2020    source источник
comment
Это действительные настройки уведомлений?   -  person DaImTo    schedule 20.01.2020
comment
Я следил за блогом botreetechnologies.com/blog/ Хотя в Google Docs таких параметров не было.   -  person hasanadeem    schedule 20.01.2020
comment
Каково значение gcal_event_attendees?   -  person Rafa Guillermo    schedule 20.01.2020
comment
@RafaGuillermo — это массив хэшей, содержащих электронные письма пользователя. ключ — электронная почта, а значение — адрес электронной почты пользователя.   -  person hasanadeem    schedule 20.01.2020


Ответы (1)


Отвечать:

Настройки уведомлений о создании, изменении, отмене события и ответе — это настройки самого Календаря, а не отдельных событий Календаря. Параметр notification_settings для Events: insert не существует, поэтому это не работает.

Дополнительная информация:

Я не совсем уверен, откуда автор блога, на который вы ссылаетесь, получает информацию, но метод Events: insert API календаря не имеет этого параметра.

В пользовательском интерфейсе по адресу calendar.google.com вы можете увидеть настройки уведомлений, на которые вы ссылаетесь, на странице настроек для < strong>весь календарь, а не отдельные мероприятия:

введите здесь описание изображения

Для отдельных событий, когда событие создается, вы можете использовать параметр sendUpdates, чтобы указать, кто должен быть уведомлен при создании события. Тот же параметр существует как часть метода Events: update, который позволяет указать, кто будет получать уведомления об этом конкретном изменении.

Если вы хотите, чтобы уведомления были настроены для создания, изменения и отмены событий, но не ответов на события, то это необходимо настроить для самого Календаря. Однако, к сожалению, это невозможно сделать с помощью API, и его необходимо настроить в самом пользовательском интерфейсе.

К сожалению, это означает, что то, что вы хотите сделать, не является чем-то, что возможно через API календаря.

Запрос функции:

Однако, если это представляет для вас интерес, вы можете сообщить Google, что эта функция важна для API календаря и что вы хотели бы попросить их реализовать ее. система отслеживания ошибок от Google – это место, где разработчики могут сообщать о проблемах и запрашивать функции для своих служб разработки. Страница для отправки запроса функции для API календаря находится здесь.

Я знаю, что в целом это плохие новости, но я надеюсь, что это будет полезно для вас!

Использованная литература:

person Rafa Guillermo    schedule 21.01.2020
comment
действительно полезно! Спасибо! - person hasanadeem; 24.01.2020