1

방 예약을위한 GAS 웹 앱이 있습니다. 앱이 이벤트를 만들면 현재 이벤트의 '사용 중'으로 기본 설정됩니다. 기본값을 "Free"로 설정하려고합니다.캘린더 API로 Google 캘린더 일정 약속 있음/없음 변경

고급 Google 캘린더 API를 사용하여 투명성 필드 (출처 : https://code.google.com/p/google-apps-script-issues/issues/detail?id=2341)를 편집 할 것을 권장하는 GAS 포럼 항목이 있습니다. 그들이 제안

스크립트는 내가 고급 API가 활성화되어 있지만, 함수가 실행될 때 어떤 이유로 나는 크롬 콘솔에 포착되지 않은 오류 프롬프트를 얻고있다

var changes = { 
transparency: "transparent" 
}; 
Calendar.Events.patch(changes, cal_id, event_id); 

했다. 이 오류의 출처에 대한 의견이 있으십니까?

+0

IDE 및 API 콘솔에서 서비스를 활성화 했습니까? –

+0

API 콘솔에서 사용하도록 설정되었으며 스크립트 편집기 -> 리소스의 고급 Google 서비스 창에서 사용 가능합니다. – DLee

+1

오류를 게시 할 수 있습니까? –

답변

1

주변을 둘러보고 나서 다음과 같이 작동하는 것 같습니다. CalendarApi에 요청하기 전에 CalendarApp에서 반환 한 이벤트 ID에서 "@ google.com"을 삭제해야한다는 사실을 잊었습니다. 사용자가 자신의 캘린더에서만 이벤트를 편집하기 때문에 calendarId를 '기본'으로 설정할 수 있습니다.

var eventId= event_id.slice(0,event_id.length-11); 
var calendarId = 'primary'; 
Logger.log(eventId) 
var changes = { 
    transparency: "transparent" 
    }; 
Calendar.Events.patch(changes,calendarId,eventId);