我想将Google日历用于3D扫描仪预约功能。首先,我会选择一个预约时段让客户预约,然后我会把这个插槽的链接公开给潜在客户。之后,不同的人可以预订插槽的预约,但是只有当客户进来并且在我们的办公室以先到先得的服务基础支付扫描仪服务时才填充插槽。
我在Google日历中遇到这种情况的问题是,一旦第一位客户预约了该约会,该插槽就会显示在日历上,如下所示:
我不想要这个,我希望这个插槽仍然对其他客户开放,但是当第一个客户预约时,我想给他发一封电子邮件说我来办公室并尽快付款因为时间是你的。
现在,我已经描述了我想要的内容,我想调查一下Google日历中是否可以使用此功能?目前我必须手动点击邀请电子邮件转到? "否/也许"为其他人提供的插槽:
我可以通过app脚本控制此Going to选项/属性吗?预约时是否有事件处理程序?任何帮助表示赞赏。
function calendarTest1() {
// Gets the public calendar "US Holidays" by ID.
var calendar = CalendarApp.getCalendarById('id_usually_email');
//Logger.log('The calendar is named "%s".', calendar.getName());
//Logger.log('The calendar description is "%s".', calendar.getDescription());
var today = new Date();
var events = calendar.getEventsForDay(today);
//Logger.log('Number of events: ' + events.length);
for(event in events ){
Logger.log('Title: ' + events[event].getTitle());
Logger.log('Start Time: ' + events[event].getStartTime().toISOString());
Logger.log('My Status: ' + events[event].getMyStatus());
Logger.log('Id: ' + events[event].getId());
events[event].setMyStatus(CalendarApp.GuestStatus.NO);
Logger.log('My Status: ' + events[event].getMyStatus());
Logger.log('Guest List: ' + events[event].getGuestList()[0].getEmail());
var guests = events[event].getGuestList();
Logger.log('----------------------------------------------------------------');
}
}
根据https://developers.google.com/apps-script/reference/calendar/event-guest#getGuestStatus(),有一个getGuestStatus()函数,我需要知道是否有一个setGuestStatus()所以我可以改变状态#34; yes"到"不"。
更新
所以它最终起作用,结果是你创建了一个约会时段,它不是一个事件或任何东西,但当有人来预约时它只是一个常规事件,所以你只需要获取该事件并转动myStatus ()是 - >不,它应该做的伎俩。