Я работаю над приложением 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 использовать?