未提供项目说明

slacktools-interactivit的Python项目详细描述


slacktools交互

一个处理Slack交互(https://api.slack.com/interactivity)的简单框架。在

安装

pip install slacktools-interactivity

命令

{{cd2>当你收到你的cd2}时 Slack的命令请求只需从工厂获取命令实例并执行它。在

基本用法

定义命令:

frominteractivityimportCommandFactory,CommandHandler,CommandValidationErrorfrommyprojectimportget_status,post_status@CommandFactory.register("/status")classStatusCommand(CommandHandler):def_validate(self):ifnotget_status(id=self.payload.text):raiseCommandValidationError("Not a valid id.")def_execute(self):post_status(id=self.payload.text)

处理Slack命令请求:

^{pr2}$

动作命令

操作命令允许您从单个Slack命令执行许多不同的操作。正文如下 该命令用于确定应执行的操作。文本按空格分隔,第一个字符 set确定操作,剩余字符集作为选项/参数传递给操作。在

示例

下面的类定义将处理以下命令:/status service api

frominteractivityimport(ActionCommandHandler,CommandAction,CommandValidationError,CommandFactory)frommyprojectimportpost_status_msgclassServiceStatus(CommandAction):defvalidate(self):iflen(self.options)==0:CommandValidationError(self.payload,"Missing service name")defexecute(self):post_status_msg(self.options[0])@CommandFactory.register("/status")classStatusCommand(ActionCommandHandler):ACTIONS={"service":ServiceStatus}

观点

记录

行动

记录

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何向类添加适用于该类中所有对象的单个@XmlAttribute注释   java未处理的继续记录跟踪类org。阿帕奇。波伊。hssf。记录塔比德雷科德   Eclipse中java代码的rest连接超时,而不是浏览器的rest连接超时   数组我的Java插入排序逻辑有什么问题?   java使用Http客户端进行请求,该请求返回内容类型为“application/vnd.msexcel”的jsp页面   java连接到数据库(Derby)   url编码如何使用java发布而不使用url编码url的查询部分   正则表达式使用Java替换字符串中的模式   Java中声明数组的区别   java hibernate ReferenceColumnNames未映射到单个属性   java如何对地图集合的分层键进行排序?   java ValueAnimator在我的手机上似乎工作不正常   java如何使用Hibernate Lucene搜索访问实体中外键的排序字段名?   在同一台机器上以不同的JAVA路径运行两个Tomcat   java如何在Eclipse中记录最新的git提交哈希?   java为什么我必须将JRE、编译器和facet全部降级为Java1。8在Eclipse中创建简单Web服务时   无法将java DataBufferInt解析为类型