An attempt was made?

This commit is contained in:
Christopher Cookman 2023-02-07 09:37:23 -07:00
parent 4ee9ab3082
commit c07e6e147a
Signed by: ChrisChrome
GPG key ID: A023A26E42C33A42

View file

@ -221,7 +221,7 @@ dcClient.on('interactionCreate', async interaction => {
switch (commandName) { switch (commandName) {
case "new": case "new":
interaction.reply({ interaction.reply({
content: "Please Wait...", content: "<a:loading:1072556278884352050>",
ephemeral: true ephemeral: true
}) })
lookupExtension(interaction.user.id, "uid").then((result) => { lookupExtension(interaction.user.id, "uid").then((result) => {
@ -274,7 +274,7 @@ dcClient.on('interactionCreate', async interaction => {
}); });
break; break;
case "whoami": case "whoami":
interaction.reply({ content: "Please Wait...", ephemeral: true }) interaction.reply({ content: "<a:loading:1072556278884352050>", ephemeral: true })
lookupExtension(interaction.user.id, "uid").then((result) => { lookupExtension(interaction.user.id, "uid").then((result) => {
if (result.status == "exists") { if (result.status == "exists") {
// The user already has an extension, return an ephemeral message saying so // The user already has an extension, return an ephemeral message saying so
@ -308,10 +308,31 @@ dcClient.on('interactionCreate', async interaction => {
break; break;
case "list": case "list":
interaction.reply({ interaction.reply({ content: "<a:loading:1072556278884352050>", ephemeral: true })
content: "Not Implemented Yet", pbxClient.request("list", {}).then((result) => {
ephemeral: true let extensions = result.response.extension;
// key:value pairs of extension:username
let extensionList = {};
extensions.forEach((extension) => {
extensionList[extension.extension] = extension.name;
});
interaction.editReply({
content: "",
embeds: [{
"title": "Extension List",
"color": 0x00ff00,
"description": `The SIP server is \`${config.freepbx.server}\``,
"fields": Object.keys(extensionList).map((extension) => {
return {
"name": extension,
"value": extensionList[extension]
}
}) })
}]
});
}).catch((error) => {
interaction.editReply(`Error listing extensions: ${error}`);
});
break; break;
case "delete": case "delete":
if (interaction.options.get("confirm").value == false) { if (interaction.options.get("confirm").value == false) {
@ -321,7 +342,7 @@ dcClient.on('interactionCreate', async interaction => {
}) })
break; break;
} }
interaction.reply({ content: "Please Wait...", ephemeral: true }) interaction.reply({ content: "<a:loading:1072556278884352050>", ephemeral: true })
lookupExtension(interaction.user.id, "uid").then((result) => { lookupExtension(interaction.user.id, "uid").then((result) => {
if (result.status == "exists") { if (result.status == "exists") {
// The user has an extension, delete it // The user has an extension, delete it