This commit is contained in:
Christopher Cookman 2026-01-11 10:09:21 -07:00
parent 07b1541e01
commit 5e603ec010
2 changed files with 26 additions and 1 deletions

View file

@ -47,6 +47,31 @@ function trigCall(pageType, phone, variables = {}) {
throw new Error(`Phone number is required for page type: ${pageType}`);
}
// Sling message
if (sling_chat_id && sling_chat_message && global.slingToken) {
const replacedMessage = typeof sling_chat_message === 'string'
? sling_chat_message.replace(/%initiatingUser%/g, variables.initiatingUser || '')
: sling_chat_message;
fetch(`https://api.getsling.com/v1/conversations/${sling_chat_id}/messages`, {
method: 'POST',
headers: {
'Authorization': `${global.slingToken}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
'content': replacedMessage
})
}).then(res => res.json()).then(data => {
if (data && data.success) {
console.log('Sling chat message sent successfully.');
} else {
console.error('Error sending Sling chat message:', data);
}
}).catch(error => {
console.error('Error sending Sling chat message:', error);
});
}
originateCall(targetNumber, context, 0, timeout, cid, {initiatingUser: variables.username, slingChannel: sling_chat_id || undefined, slingMessage: sling_chat_message || undefined}).then((output) => {
console.log(`Call originated: ${output}`);
}).catch((error) => {

View file

@ -12,7 +12,7 @@ router.post("/trigger", global.apiAuth, (req, res) => {
router.post("/stop", global.apiAuth, (req, res) => {
console.log('Stopping all calls');
global.exec(`/usr/bin/ast_drop ${process.env.PAGE_GROUP || '9000'}`, (error, stdout, stderr) => {
global.exec(`/usr/sbin/asterisk -x "confbridge kick rsc_page all"`, (error, stdout, stderr) => {
if (error) {
console.error(`Error stopping page: ${error}`);
return res.status(500).send('Error stopping page');