Skip to content

Instantly share code, notes, and snippets.

@@ -1,36 +1,37 @@
/**
* Copyright 2016 Google Inc. All Rights Reserved.
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
var ss = SpreadsheetApp.openById("SPREADSHEET_ID");
var rawDataSheet = ss.getSheetByName("Sheet1")
function updateSpreadSheet(e) {
try {
var data = JSON.stringify(e.postData);
var json = JSON.parse(data);
var contents = json.contents;
var webhookType = JSON.parse(contents).category;
const processOneUnreadMessageCount = (groupChannel, message) => {
const unreadMembers = groupChannel.getUnreadMembers(message);
unreadMessageCountList[message.messageId] = unreadMembers.length;
}
const sendMessage = (message, groupChannel) => {
const params = new sb.UserMessageParams();
params.message = message;
groupChannel.sendUserMessage(params, function (message, error) {
if (error) return;
currentMessageList.push(message)
processOneUnreadMessageCount(groupChannel, message)
});
}
const processUnreadMessageCount = (groupChannel) => {
currentMessageList.forEach(message => {
const unreadMembers = groupChannel.getUnreadMembers(message);
unreadMessageCountList[message.messageId] = unreadMembers.length;
});
return unreadMessageList;
};
const unreadMessageCountList = {}; // Stores the unreadCount for each and every message.
const currentMessageList = [{
message: object
}, {
message: object
}];
const handler = new sb.ChannelHandler();
handler.onReadReceiptUpdated = (groupChannel) => {
processUnreadMessageCount(groupChannel);