41 lines
986 B
Python
Executable File

from dingtalkchatbot.chatbot import DingtalkChatbot
from slack_bolt import App, BoltContext
from typing import Callable
import re
import os
import logging
logging.basicConfig(level=logging.DEBUG)
# WebHook地址
dingtalk_webhook = os.environ["DINGTALK_WEBHOOK"]
dingtalkbot = DingtalkChatbot(dingtalk_webhook)
app = App(
token=os.environ.get("SLACK_BOT_TOKEN"),
signing_secret=os.environ.get("SLACK_SIGNING_SECRET")
)
@app.middleware
def log_request(logger: logging.Logger, body: dict, next: Callable):
logger.debug(body)
return next()
@app.message(re.compile("^Heads Up!.*"))
def transfer_warn(body: dict, logger: logging.Logger):
logger.info(body)
dingtalkbot.send_text(str(body))
@app.event({"type": "message", "subtype": None})
def transfer_all(body: dict, logger: logging.Logger):
logger.debug(body)
dingtalkbot.send_text('测试'+str(body))
# 启动slack监听
if __name__ == "__main__":
app.start(int(os.environ.get("PORT", 3000)))