Fix slack notifications requiring an icon (#40027)

This commit is contained in:
springstan 2020-09-13 18:23:50 +02:00 committed by GitHub
parent fc1fb0ab7c
commit da19854520
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -202,22 +202,23 @@ class SlackNotificationService(BaseNotificationService):
self, targets, message, title, blocks, username, icon
):
"""Send a text-only message."""
if self._icon.lower().startswith(("http://", "https://")):
icon_type = "url"
else:
icon_type = "emoji"
message_dict = {
"blocks": blocks,
"link_names": True,
"text": message,
"username": username,
}
if self._icon:
if self._icon.lower().startswith(("http://", "https://")):
icon_type = "url"
else:
icon_type = "emoji"
message_dict[f"icon_{icon_type}"] = icon
tasks = {
target: self._client.chat_postMessage(
**{
"blocks": blocks,
"channel": target,
"link_names": True,
"text": message,
"username": username,
f"icon_{icon_type}": icon,
}
)
target: self._client.chat_postMessage(**message_dict, channel=target)
for target in targets
}