From 41c3459e5aecbf837cbbd6c1890069ff0d9a9140 Mon Sep 17 00:00:00 2001 From: Ofek Weiss Date: Sun, 12 Oct 2025 13:56:50 +0300 Subject: [PATCH] Added more detailed exception for teams webhook failure --- .../messages/messaging_integrations/teams_webhook.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/elementary/messages/messaging_integrations/teams_webhook.py b/elementary/messages/messaging_integrations/teams_webhook.py index c2d87445d..30b6d81b1 100644 --- a/elementary/messages/messaging_integrations/teams_webhook.py +++ b/elementary/messages/messaging_integrations/teams_webhook.py @@ -27,6 +27,15 @@ ONE_SECOND = 1 +class TeamsWebhookHttpError(MessagingIntegrationError): + def __init__(self, response: requests.Response): + self.status_code = response.status_code + self.response = response + super().__init__( + f"Failed to send message to Teams webhook: {response.status_code}" + ) + + def send_adaptive_card(webhook_url: str, card: dict) -> requests.Response: payload = { "type": "message", @@ -88,6 +97,8 @@ def send_message( timestamp=datetime.utcnow(), message_format="adaptive_cards", ) + except requests.HTTPError as e: + raise TeamsWebhookHttpError(e.response) from e except requests.RequestException as e: raise MessagingIntegrationError( f"An error occurred while posting message to Teams webhook: {str(e)}"