pockybot
Version:
Spark bot that handles team recognition
44 lines (43 loc) • 1.75 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.pmRespond = void 0;
const webex = require('webex/env');
const constants_1 = require("../constants");
const pm_index_1 = require("./response-triggers/pm-index");
const logger_1 = require("./logger");
async function pmRespond(messageEvent) {
try {
let message = await webex.messages.get(messageEvent.data.id);
let person = await webex.people.get(message.personId);
if (person.type === 'bot') {
logger_1.Logger.debug('Message was sent by a bot, ignoring this message.');
return;
}
logger_1.Logger.debug('[PmResponder.respond] processing message: ' + JSON.stringify(message));
let room = message.roomId;
if (message.personId !== constants_1.default.botId) {
let responseMessage;
try {
responseMessage = await pm_index_1.default(message, room);
logger_1.Logger.information(responseMessage);
}
catch (e) {
logger_1.Logger.error(`[PmResponder.respond] Error in direct responder: ${e.message}`);
}
if (responseMessage) {
try {
let data = await webex.messages.create(Object.assign({ roomId: room }, responseMessage));
logger_1.Logger.debug(data);
}
catch (e) {
logger_1.Logger.error(`[PmResponder.respond] Error in sending direct message: ${e.message}`);
}
}
}
}
catch (e) {
logger_1.Logger.error(`[PmResponder.respond] Uncaught error in direct responder: ${e.message}`);
}
}
exports.pmRespond = pmRespond;
;