Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用Google服务帐户创建的新日历事件isn';t向与会者发送邀请电子邮件_Ruby On Rails_Google Calendar Api_Service Accounts - Fatal编程技术网

Ruby on rails 使用Google服务帐户创建的新日历事件isn';t向与会者发送邀请电子邮件

Ruby on rails 使用Google服务帐户创建的新日历事件isn';t向与会者发送邀请电子邮件,ruby-on-rails,google-calendar-api,service-accounts,Ruby On Rails,Google Calendar Api,Service Accounts,我正在使用谷歌的服务帐户在谷歌日历中创建一个新活动,我还将发送通知设置为true,但创建活动后,邀请电子邮件不会发送给与会者 # new event to be created event = { 'summary'=> summary, 'description'=> description, 'start'=> {'dateTime' => datetime }, 'end' => {'dateTime' => da

我正在使用谷歌的服务帐户在谷歌日历中创建一个新活动,我还将发送通知设置为true,但创建活动后,邀请电子邮件不会发送给与会者

  # new event to be created
  event = {
    'summary'=> summary,
    'description'=> description,
    'start'=> {'dateTime' => datetime },
    'end' => {'dateTime' => datetime },
    'sendNotifications' => true,
    'sequence' => sequence,
    'reminders' => {
      'useDefault' => false,
      'overrides' => [
        {'minutes' => 60, 'method' => 'email'}
      ]
    },  
    'attendees'=> [
      {
        'email'=> email
      }
    ]
  }

  # build client
  client = Google::APIClient.new application_name: "Test", application_version: "0.0.1"
  key = Google::APIClient::KeyUtils.load_from_pkcs12(key_file, key_secret)     

  client.authorization = Signet::OAuth2::Client.new(
    :token_credential_uri => 'https://accounts.google.com/o/oauth2/token',
    :audience => 'https://accounts.google.com/o/oauth2/token',
    :scope => 'https://www.googleapis.com/auth/calendar',
    :issuer => ENV['SERVICE_ACCOUNT_EMAIL'],
    :grant_type => 'urn:ietf:params:oauth:grant-type:jwt-bearer',
    :access_type => 'offline',
    :signing_key => key
  )

  # fetch access token
  client.authorization.fetch_access_token!

  # create new event
  service = client.discovered_api('calendar', 'v3')
  client.execute(:api_method => service.acl.insert,
                 :parameters => {'calendarId' => 'primary'},
                 :body => JSON.dump(event),
                 :headers => {'Content-Type' => 'application/json'})

sendNotifications是请求的属性,而不是事件的属性。请参阅此处插入的文档:您还可以尝试使用资源管理器查看请求的确切外观:(不要忘了在右上角进行身份验证)。

事件是在将来创建的吗?我想如果你在这里发布你的代码会很好。是的,我将在将来创建一个活动。你是对的。我从事件哈希中删除了sendNotifications属性,并将其添加为请求的参数。