【问题标题】:Google Stopped creating Google Meet link while creating event using Google Calendar APIGoogle 在使用 Google Calendar API 创建活动时停止创建 Google Meet 链接
【发布时间】:2020-09-01 12:40:12
【问题描述】:

从今天开始,Google 已停止在创建 Event 时创建 Google meet Url。

  • 已创建活动,但未创建会面网址。
  • 此代码自过去 3 个月以来一直有效。
    ConferenceData conferenceData = new ConferenceData();
    ConferenceSolution conferenceSolution = new ConferenceSolution();
            
    CreateConferenceRequest createRequest = new CreateConferenceRequest();
    ConferenceSolutionKey conferenceSolutionKey_ = new ConferenceSolutionKey();
    conferenceSolutionKey_.setType("hangoutsMeet");
    
    createRequest.setConferenceSolutionKey(conferenceSolutionKey_);
    createRequest.setRequestId(UUID.randomUUID().toString());
    conferenceData.setConferenceId(UUID.randomUUID().toString());
    
    conferenceData.setCreateRequest(createRequest);
    event.setConferenceData(conferenceData);

注意:我还没有创建入口点 谷歌方面是否有任何更新,因此这段代码不起作用?

由于这个问题,我们的生产代码受到了影响。

【问题讨论】:

    标签: google-calendar-api google-meet


    【解决方案1】:

    这似乎是一个错误!

    已经有一份关于 Google 问题跟踪器的报告详细说明了相同类型的行为:

    Google 似乎已经知道这个问题,您可以使用上面的链接关注错误更新。

    您也可以点击上述页面左上角问题编号旁边的 ☆,让 Google 知道更多人遇到此问题,因此更有可能更快地被看到。

    【讨论】:

      【解决方案2】:

      看起来谷歌已经做出了一些改变,它已停止创建 Google Meet url(事件已创建)基于谷歌工程师的输入表单,它需要设置 ConferenceDataVersion = 1。但是对于 Java API,这还不够。 这里是创建日历事件 + Meet url 的完整解决方案

          Event event = new Event()
                  .setSummary("Your summary")
                  .setLocation("Your location")
                  .setDescription("Your description");
          
          ConferenceData conferenceData = new ConferenceData();
          ConferenceSolution conferenceSolution = new ConferenceSolution();
          
          CreateConferenceRequest createRequest = new CreateConferenceRequest();
          ConferenceSolutionKey conferenceSolutionKey_ = new ConferenceSolutionKey();
          conferenceSolutionKey_.setType("hangoutsMeet");
          
          createRequest.setConferenceSolutionKey(conferenceSolutionKey_);
          createRequest.setRequestId(UUID.randomUUID().toString());
          
          List<EntryPoint> entryPoints = new ArrayList<EntryPoint>();
          EntryPoint entryPoint = new EntryPoint();
          entryPoint.setEntryPointType("video");
          entryPoints.add(entryPoint);
          conferenceData.setEntryPoints(entryPoints);
          conferenceData.setCreateRequest(createRequest);
          conferenceSolution.setKey(conferenceSolutionKey_);
          conferenceData.setConferenceSolution(conferenceSolution);
          
          event.setConferenceData(conferenceData);
          
          // Build your calenderService using Scope + AccessToken
          Calendar calenderService = getCalenderService();
          
          // calendarId  = Your private or public calendarId. Default option = "primary"
          event = calenderService.events().insert("calendarId", event).setConferenceDataVersion(1).execute(); 
      

      【讨论】:

        【解决方案3】:

        将类型“video”添加到“entryPoints”:

         "entryPoints": [
           {
             "entryPointType": "video"
           }
         ]
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-10-08
          • 1970-01-01
          • 2023-04-01
          相关资源
          最近更新 更多