С помощью API Календаря Google, как я могу найти идентификатор ресурса существующего Канала? - PullRequest
0 голосов
/ 11 мая 2019

Я работаю над приложением Rails, которое использует google-api-ruby-client , чтобы подписаться на push-уведомления для Календаря Google. Я пытаюсь использовать CalendarService.stop_channel , чтобы избавиться от существующего канала, чтобы я мог заменить его на обновленный. Проблема в том, что stop_channel требует resource_id, и я не знаю, что это такое.

Есть ли способ перечислить существующие каналы с их идентификаторами ресурсов?

Я попытался опустить аргумент resource_id, который вызывает «обязательную» ошибку. Я пытался вставить любую строку букв, и я получаю сообщение об ошибке:

Channel '[my-channel-id]' not found for project '[a string of numbers that I don't recognize]' 

Вот соответствующий код. Большая часть из них получает разрешение. Мне нужен справочный вызов stop_channel внизу.

# get access token
  require 'googleauth'
  require 'google/apis/calendar_v3'
  calendar = Google::Apis::CalendarV3::CalendarService.new

  scope = 'https://www.googleapis.com/auth/calendar'
  authorizer = Google::Auth::ServiceAccountCredentials.make_creds(
    json_key_io: File.open(ENV['GOOGLE_APPLICATION_CREDENTIALS']),
    scope: scope)

  calendar.authorization = authorizer
  calendar.authorization.fetch_access_token!

  calendar.stop_channel(Google::Apis::CalendarV3::Channel.new(
    id: "my-channel-id",
    resource_id: "whatever"
  ))

Как мне узнать, какой resource_id использовать?

...