Don't crash if HTTP error

This commit is contained in:
Skylar Ittner 2022-02-03 18:17:11 -07:00
parent be0b109736
commit 4d00868681

17
main.js
View File

@ -381,6 +381,7 @@ function sendMMS(number, from, mediauri, mimetype, callback) {
}
function handleHTTPRequest(request, response) {
try {
if (request.url == "/webhook") {
try {
logger.debug("Got webhook: " + request.body);
@ -392,34 +393,34 @@ function handleHTTPRequest(request, response) {
createOrJoinSMSRoom(msg.from, msg.to, function (roomid) {
sendMatrix(roomid, msg.body, msg.media);
});
response.status(204);
response.sendStatus(204);
response.end();
} else {
logger.info("Received SMS from " + msg.from + " for " + msg.to + ", ignoring based on smsonlyto list.");
response.status(403);
response.body("403 forbidden (this endpoint doesn't deliver SMS destined for that number)");
response.sendStatus(403);
response.end();
}
} else {
response.status(403);
response.body("403 forbidden (webhook type not handled by this endpoint)");
response.sendStatus(403);
response.end();
}
} catch (ex) {
logger.error("Decoding webhook body: " + ex);
response.status(500);
response.body("500 internal server error");
response.sendStatus(500);
response.end();
}
} else {
try {
response.status(404);
response.sendStatus(404);
response.body("404 not found");
response.end();
} catch (err) {
logger.error(err);
}
}
} catch (exx) {
logger.error(exx);
}
}
const client = sdk.createClient(settings.homeserver);