Google apps script AnyoneCanadSelf()Google CalendarEvent-用户如何将自己添加为来宾?

Google apps script AnyoneCanadSelf()Google CalendarEvent-用户如何将自己添加为来宾?,google-apps-script,google-calendar-api,Google Apps Script,Google Calendar Api,我正在使用谷歌表单和应用程序脚本将事件添加到日历中。我无法发送1000个邀请,所以我正在设置anyonecanadself(true),这是有效的-它设置正确。我希望用户使用“是”rsvp添加自己,并将事件添加到他们的日历中。我还需要报告rsvp状态 但是,我找不到任何用户可以添加自己的方法。我能找到的最接近的解决办法是 ,这是一个很好的web应用程序演示,它可以发布到自身,但不能与我的脚本一起运行-我不能让它发布回我的管理表单,因为它有编辑和删除事件的控件 因此,我的问题是: 有没有一种方法可

我正在使用谷歌表单和应用程序脚本将事件添加到日历中。我无法发送1000个邀请,所以我正在设置anyonecanadself(true),这是有效的-它设置正确。我希望用户使用“是”rsvp添加自己,并将事件添加到他们的日历中。我还需要报告rsvp状态

但是,我找不到任何用户可以添加自己的方法。我能找到的最接近的解决办法是 ,这是一个很好的web应用程序演示,它可以发布到自身,但不能与我的脚本一起运行-我不能让它发布回我的管理表单,因为它有编辑和删除事件的控件

因此,我的问题是:

  • 有没有一种方法可以在不发送邀请的情况下显示活动RSVP(就像您在邀请中看到的那样),或者不显示1000人的来宾列表(我在API中遗漏了什么)

  • 如果我使用了上面链接示例的klugey版本(单独的cron或post到另一个表单),那么用户是自动注册的还是仍然需要RSVP

  • 当我设置事件时,我真的希望这是简单的,而不是让用户多点击三四次。我的许多用户很容易感到困惑


    非常感谢您的帮助

    关于这个话题的信息真的很难找到,所以我想我应该加入上周在“邀请我”链接中学到的东西。我不知道为什么你不能为self-invite链接创建一个新的脚本项目,但希望我的信息能有所帮助

    基本上在撰写本文时,该特性并不存在,尽管事件具有anyonecanadself属性。当脚本作为web应用程序运行时,它有两个用户对象:活动和有效

    如果脚本以作者身份运行(发布时的一个选项),则有效用户始终是作者,而活动用户始终为空。这是为了安全,所以这是没有好处的

    当脚本作为日历订阅者运行时,他们可以将自己添加为具有

    anyoneCanAddSelf(true) 
    event.addGuest(Session.getActiveUser().getEmail())
    
    但前提是他们对事件拥有修改权限,这只会将他们添加到guestlist,因此他们仍然必须正常RSVP。您可以将未确认的来宾列表作为隐含的RSVP使用,但无法避免最终用户混淆的可能性

    作为旁注,不要被
    event.setMyStatus(CalendarApp.GuestStatus.YES)欺骗
    出于某些原因,这不会使用活动或有效用户,而是将日历本身设置为其自身事件的RSVPd,如8所述/

    我希望有时间尝试一下这个建议,但我不是很乐观


    我遇到了类似的问题。我希望公众中的任何人都能将自己添加为客人。在您的情况下,您最终做了什么?如果用户不在日历邀请中,他们如何拥有“修改权限”?换句话说,我认为“修改权限”是由邀请上的“来宾可以:修改事件”标志控制的,这只会影响已经在邀请上的人,从而导致第22条陷阱。