Google 见面:我怎样才能赶上 url?

Google Meet: How can i catch the url?

我需要开一个新的 google 会议室,然后发送。我不能在应用程序中使用标准的“分享”按钮。我需要赶上决赛 url。 我无法用 curl 捕捉到它(这不是正常的重定向)。 我的想法是,我需要在后台或同一页面中打开一个 request/link,稍等片刻并捕获 link,然后我可以释放页面并且用户可以进入。

你知道什么可以帮助我吗?

编辑: 是的,我没有告诉我我需要通过点击生成一个房间并从代码中捕获 url。一般来说,我应该用 Google 日历 API 来做这个,但在这种情况下我不能。

所有 google 遇见 link 看起来像这样: https://meet.google.com/abc-defg-hij 您应该能够从您的浏览器页面复制并粘贴此 link。如果有人进入这个 link,他们将被带到会议大厅,他们可以随时进入。

如果您由于某种原因无法访问此 link,例如如果您使用移动设备,则必须将您的会议代码(abc-defg-hij)放在上述内容的末尾url.

编辑:如果您使用移动设备,您实际上可以找到 link,方法是进入您的会议大厅并向下滚动直到您到达“加入信息”。在那下面应该有会议 link 和 phone 加入的号码。

我使用 google 日历 API。我为我的组织制作了一个 web 应用程序,它从一个表单(带有用户信息发送到一起 link)制作一个 google 日历事件与 google 会议室(来自 google已登录用户帐户),捕获 link 并通过 smsGateway 发送它。

        function FormForMeet (Args) {
    
    // get calendar name, if it already exists
    var meetsCalendar = CalendarApp.getCalendarsByName ('CalendarName');
      Logger.log (meetsCalendar.length)
    
      if (meetsCalendar.length> = 1) {
// if some calendar be found, it catch the first, obviously here you can use some differet method. I had choose this because I don't expect to find more than 1
        var calendar = meetsCalendar [0] .getId ();
      }
      else
      {
    // If miss, create new one.
        var calendar = CalendarApp.createCalendar ('CalendarName', {summary: 'descrip Calendar',
// set a color of calendar label :D
        color: CalendarApp.Color.PURPLE});
        calendar = calendar.getId ();
      }
      
    // Call function to create meet
     var LinkMeet = CreateConference_ (calendar);
     
// here you can use what you want for send Args + LinkMeet);
    
    // if you want return link
     return LinkMeet;
    }

    // Function to create Conference. You can obviously use the code up without make a new function.
    function CreateConference_ (calendarId) {
    
    // Custom of event, here I created the conferences according to my needs (now, with 1 h / conference)
      var now = new Date ();
      var start = new Date (now.getTime ()). toISOString ();
      var end = new Date (now.getTime () + (1 * 60 * 60 * 1000)). toISOString ();
// generate random string to request
      var rdmreqId = genStrg ();
    
      var event = {
      "end": {
         "dateTime": end
         
      },
      "start": {
        "dateTime": start
         
      },
      "summary": "conferenceName",
      "conferenceData": {
        "createRequest": {
          "conferenceSolutionKey": {
            "type": "hangoutsMeet"
          },
          "requestId": rdmreqId
        }
      }
    
      };
    // insert event in calendar
     event = Calendar.Events.insert (event, calendarId, {
        "conferenceDataVersion": 1});
    // if use the function you can return the link to send
      return event.hangoutLink
    }
    // random strind
    function genStrg () {
      var data = "something";
      var text = "";
      var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789! @ # $% & <> * -";
    
      for (var j = 2; j <= data.length; j ++) {
        text = ""; // Reset text to empty string
    
        for (var i = 0; i <possible.length; i ++) {
          text + = possible.charAt (Math.floor (Math.random () * possible.length));
        }
    
        return text;
      }
    }