GAS 包不支持插入消息。事实证明,您必须为此使用 Chat REST API。因此您已经设置了权限(我在http://ramblings.mcpher.com/Home/excelquirks/goa使用了服务帐户和 cgoa 包)
然后我创建了一个调用 API 的函数,并将调用放在顶部的 onMessage 事件中。这是功能:
function sendWait(event){
var packageName='Google_service_account'
var goa = cGoa.GoaApp.createGoa(packageName, PropertiesService.getScriptProperties()).execute();
if (!goa.hasToken()) {
throw 'no token retrieved';
} else {console.info('token retrieved')};
var endpoint='https://chat.googleapis.com/v1/'+event.space.name+"/messages"
console.info('endpoint=%s',endpoint);
var threadId=event.message.thread
var response={'text':'Processing request...'}
response.thread=threadId
console.info('response=%s',response);
var options = {
method: "post",
contentType : "application/json" ,
muteHttpExceptions : true,
payload: JSON.stringify(response),
headers: {
"Authorization": "Bearer " + goa.getToken(),
}
};
var aresponse=UrlFetchApp.fetch(endpoint, options)