-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
92 lines (74 loc) · 2.8 KB
/
index.js
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
// ToDo: Update config file
'use strict';
const AWS = require('aws-sdk');
const SNS = new AWS.SNS({ apiVersion: '2010-03-31' });
const config = require('./config.json');
const PHONE_NUMBER_TO_SEND = config.phoneNumberToSend;
const IOT_BTN_NUMBER = config.iotBtnNumber;
const SINGLE_CLICK_MESSAGE = config.singleClickMessage;
const DOUBLE_CLICK_MESSAGE = config.doubleClickMessage;
const LONG_CLICK_MESSAGE = config.longClickMessage;
exports.handler = (event, context, callback) => {
console.log('Received event:', event);
const clickType = JSON.stringify(event.clickType);
const serialN = event.serialNumber;
const params = {
PhoneNumber: PHONE_NUMBER_TO_SEND,
Message: "",
};
console.log("clickType is : " + clickType);
var currentTime = new Date();
var currentHour = currentTime.getHours();
var currentMin = currentTime.getMinutes();
var currentSec = currentTime.getSeconds();
var localHour;
var absLocalTimeZone;
var localTimeZone = -4;
// UTC to local timezone conversion
if (localTimeZone < 0){
absLocalTimeZone = localTimeZone * (-1);
if(currentHour >= 0 && currentHour < absLocalTimeZone){
localHour = currentHour + localTimeZone +24;
}
if(currentHour >= absLocalTimeZone && currentHour < 24){
localHour = currentHour + localTimeZone;
}
}
else if (localTimeZone > 0){
if(currentHour >= 0 && currentHour < (24 - localTimeZone)){
localHour = currentHour + localTimeZone;
}
if(currentHour >= (24 - localTimeZone) && currentHour < 24){
localHour = currentHour + localTimeZone - 24;
}
}
else{
localHour = currentHour;
}
// Convert minutes to 2 digits
if (currentMin.toString().length == 1) {
currentMin = "0" + currentMin;
}
// Convert seconds to 2 digits
if (currentSec.toString().length == 1) {
currentSec = "0" + currentSec;
}
// Construct time in proper format
var currentLocalTime = localHour + ':' + currentMin + ':' + currentSec;
if(event.clickType == "SINGLE"){
console.log("Inside single click");
params.Message = SINGLE_CLICK_MESSAGE + " was at " + currentLocalTime;
}
else if(event.clickType == "DOUBLE"){
console.log("inside double click");
params.Message = DOUBLE_CLICK_MESSAGE + " was at " + currentLocalTime;
}
else if(event.clickType == "LONG"){
console.log("Inside long click");
params.Message = LONG_CLICK_MESSAGE + " was at " + currentLocalTime;
}
console.log("time is " + currentLocalTime);
console.log("Message is: " + JSON.stringify(params.message));
console.log("Sending your SMS to " + PHONE_NUMBER_TO_SEND + " from: " + serialN);
SNS.publish(params, callback);
};