mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-16 07:18:22 +00:00
perf: 支持slack通知和认证 (#12193)
* perf: 支持slack通知和认证 * perf: 生成迁移文件 * perf: 优化获取access_token逻辑 --------- Co-authored-by: jiangweidong <weidong.jiang@fit2cloud.com>
This commit is contained in:
@@ -12,6 +12,7 @@ class BACKEND(models.TextChoices):
|
||||
DINGTALK = 'dingtalk', _('DingTalk')
|
||||
SITE_MSG = 'site_msg', _('Site message')
|
||||
FEISHU = 'feishu', _('FeiShu')
|
||||
SLACK = 'slack', _('Slack')
|
||||
# SMS = 'sms', _('SMS')
|
||||
|
||||
@property
|
||||
|
21
apps/notifications/backends/slack.py
Normal file
21
apps/notifications/backends/slack.py
Normal file
@@ -0,0 +1,21 @@
|
||||
from django.conf import settings
|
||||
|
||||
from common.sdk.im.slack import Slack as Client
|
||||
from .base import BackendBase
|
||||
|
||||
|
||||
class Slack(BackendBase):
|
||||
account_field = 'slack_id'
|
||||
is_enable_field_in_settings = 'AUTH_SLACK'
|
||||
|
||||
def __init__(self):
|
||||
self.client = Client(
|
||||
bot_token=settings.SLACK_BOT_TOKEN,
|
||||
)
|
||||
|
||||
def send_msg(self, users, message, subject=None):
|
||||
accounts, __, __ = self.get_accounts(users)
|
||||
return self.client.send_text(accounts, message)
|
||||
|
||||
|
||||
backend = Slack
|
@@ -202,6 +202,9 @@ class Message(metaclass=MessageType):
|
||||
def get_site_msg_msg(self) -> dict:
|
||||
return self.html_msg
|
||||
|
||||
def get_slack_msg(self) -> dict:
|
||||
return self.markdown_msg
|
||||
|
||||
def get_sms_msg(self) -> dict:
|
||||
return self.text_msg_with_sign
|
||||
|
||||
|
Reference in New Issue
Block a user