Slack Machine是一个简单但功能强大且可扩展的Slack Bot框架。 Slack Machine不仅是机器人,还可以帮助您将Slack Workspace开发到ChatOps Powerhouse中。 Slack Machine是使用直观插件系统构建的,该系统使您可以快速构建机器人,但也可以简单地进行代码组织。插件看起来很简单:
from machine . plugins . base import MachineBasePlugin
from machine . plugins . message import Message
from machine . plugins . decorators import respond_to
class DeploymentPlugin ( MachineBasePlugin ):
"""Deployments"""
@ respond_to ( r"deploy (?P<application>w+) to (?P<environment>w+)" )
async def deploy ( self , msg : Message , application , environment ):
"""deploy <application> <environment>: deploy application to target environment"""
await msg . say ( f"Deploying { application } to { environment } " )对Python 3.8(V0.38.0)的支持下降了
截至v0.38.0,对Python 3.8的支持已被删除。 Python 3.8已于2024-10-07达到寿命。
您可以通过运行:
uv add slack-machine或将其添加到您的诗歌项目中:
poetry add slack-machine最后,您可以使用PIP安装它(不建议):
$ pip install slack-machine强烈建议您在虚拟环境中安装slack-machine !
为您的Slack Machine Bot创建一个目录: mkdir my-slack-bot && cd my-slack-bot
将local_settings.py文件添加到您的bot目录: touch local_settings.py
在Slack:https://api.slack.com/apps中创建一个新应用
选择从应用清单创建应用程序
复制/粘贴以下清单: manifest.yaml
将Slack App和Bot令牌添加到您的local_settings.py之类的:
SLACK_APP_TOKEN = "xapp-my-app-token"
SLACK_BOT_TOKEN = "xoxb-my-bot-token"
使用slack-machine启动机器人
...
利润!
您可以在此处找到Slack Machine的文档:https://dondebonair.github.io/slack-machine/
去阅读它以了解如何正确配置Slack Machine,编写插件等等!
还有一个示例插件,显示了Slack Machine的许多功能:Slack Machine KitchenSink插件