-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.gs
67 lines (55 loc) · 1.95 KB
/
index.gs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
var token = TELEGRAM_WEB_TOKEN;// Get Telegram web token from BotFather telegram
var SheetID = GOOGLE_SHEET_ID ;// Get ID path from URL Spreadsheets
var UrlPublish = GOOOGLE_DEPLOYMENT_URL ; // Deploy a web app as Anyone
var telegramUrl = "https://api.telegram.org/bot" + token;
function setWebhook() {
var url = telegramUrl + "/setWebhook?url=" + UrlPublish;
var response = UrlFetchApp.fetch(url);
}
function doPost(e) {
var stringJson = e.postData.getDataAsString();
var updates = JSON.parse(stringJson);
if(updates.message.text){ // if chat is present
sendText(updates.message.chat.id,generateMessage(updates.message.text)); // generateMessage function
}
}
function getsheet(){
var rangeSheet = 'Sheet1!A2:F';
var rows = Sheets.Spreadsheets.Values.get(SheetID, rangeSheet).values;
return rows;
}
function getDate(date){
return new Date(date)
}
function generateMessage(chat){
var data = [{}];
data=chat.split('/'); // chat -> id/DOB format
date=new Date(data[1])
var sheet_datas = getSheet();
//Two step authentication
for (var row = 0; row < sheet_datas.length; row++) {
if(sheet_datas[row][0]==data[0]){// Step 1 auth ID sheet in column 0
if(+getDate(sheet_datas[row][1]) === +getDate(data[1])){// Step 2 auth D.O.B sheet in Column 1
return "Column2_name : "+ sheet_datas[row][2] +"\n" + //column 3
"Column3_name : "+ sheet_datas[row][3] +"\n" + //column 4
"Columnn_name : "+ sheet_datas[row][n] +"\n" + //column n
}
else
return "please enter correct DOB (<FORMAT>)"
}
}
return "Enter you ID/DOB: ";
}
function sendText(chatid,text,replymarkup){
var data = {
method: "post",
payload: {
method: "sendMessage",
chat_id: String(chatid),
text: text,
parse_mode: "HTML",
reply_markup: JSON.stringify(replymarkup)
}
};
UrlFetchApp.fetch('https://api.telegram.org/bot' + token + '/', data);
}