Allow custom bot naming

This commit is contained in:
Andrew 2023-09-28 19:15:01 -04:00
parent 6a81a5b337
commit a62252ed15
2 changed files with 8 additions and 6 deletions

View File

@ -3,7 +3,7 @@ from app.classes.web.webhooks.base_webhook import WebhookProvider
class DiscordWebhook(WebhookProvider):
def _construct_discord_payload(self, server_name, title, message, color):
def _construct_discord_payload(self, server_name, title, message, color, bot_name):
"""
Constructs the payload required for sending a Discord webhook notification.
@ -30,7 +30,7 @@ class DiscordWebhook(WebhookProvider):
headers = {"Content-type": "application/json"}
payload = {
"username": self.WEBHOOK_USERNAME,
"username": bot_name,
"avatar_url": self.WEBHOOK_PFP_URL,
"embeds": [
{
@ -69,7 +69,8 @@ class DiscordWebhook(WebhookProvider):
Exception: If there's an error in dispatching the webhook.
"""
color = kwargs.get("color", "#005cd1") # Default to a color if not provided.
bot_name = kwargs.get("bot_name", self.WEBHOOK_USERNAME)
payload, headers = self._construct_discord_payload(
server_name, title, message, color
server_name, title, message, color, bot_name
)
return self._send_request(url, payload, headers)

View File

@ -2,7 +2,7 @@ from app.classes.web.webhooks.base_webhook import WebhookProvider
class MattermostWebhook(WebhookProvider):
def _construct_mattermost_payload(self, server_name, title, message):
def _construct_mattermost_payload(self, server_name, title, message, bot_name):
"""
Constructs the payload required for sending a Mattermost webhook notification.
@ -28,7 +28,7 @@ class MattermostWebhook(WebhookProvider):
headers = {"Content-Type": "application/json"}
payload = {
"text": formatted_text,
"username": self.WEBHOOK_USERNAME,
"username": bot_name,
"icon_url": self.WEBHOOK_PFP_URL,
"props": {
"card": (
@ -65,7 +65,8 @@ class MattermostWebhook(WebhookProvider):
- Mattermost's `config.json` setting is `"EnablePostUsernameOverride": true`
- Mattermost's `config.json` setting is `"EnablePostIconOverride": true`
"""
bot_name = kwargs.get("bot_name", self.WEBHOOK_USERNAME)
payload, headers = self._construct_mattermost_payload(
server_name, title, message
server_name, title, message, bot_name
)
return self._send_request(url, payload, headers)