in src/index.js [26:88]
exports.handler = function(event, context, callback) {
let meetingURL = "";
let taskId = "";
let recordingAction = "";
console.log(event);
responseBody.input = event;
if(event.queryStringParameters && event.queryStringParameters.recordingAction) {
console.log("Recording action: " + event.queryStringParameters.recordingAction);
recordingAction = event.queryStringParameters.recordingAction;
}
switch(recordingAction.toLowerCase()) {
case 'start':
if(event.queryStringParameters && event.queryStringParameters.meetingURL) {
console.log("Meeting URL: " + event.queryStringParameters.meetingURL);
meetingURL = decodeURIComponent(event.queryStringParameters.meetingURL);
return startRecording(event, context, callback, meetingURL);
} else {
responseBody = {
message: "Missing parameter: meetingURL",
input: event
};
response = {
statusCode: 400,
headers: {},
body: JSON.stringify(responseBody, null, ' ')
};
context.succeed(response);
}
case 'stop':
if(event.queryStringParameters && event.queryStringParameters.taskId) {
console.log("ECS task ID: " + event.queryStringParameters.taskId);
taskId = event.queryStringParameters.taskId;
return stopRecording(event, context, taskId);
} else {
responseBody = {
message: "Missing parameter: taskId",
input: event
};
response = {
statusCode: 400,
headers: {},
body: JSON.stringify(responseBody, null, ' ')
};
context.succeed(response);
}
default:
responseBody = {
message: "Invalid parameter: recordingAction. Valid values 'start' & 'stop'",
input: event
};
response = {
statusCode: 400,
headers: {},
body: JSON.stringify(responseBody)
};
}
console.log("response: " + JSON.stringify(response));
callback(null, response);
};