Slack编程的新功能,不可否认,自从我开发了很多东西以来已经有一段时间了.
我正在寻找有关如何自动转换任何渠道中任何人发布的任何机票的方向,并将其转换为我们的票务系统的深层链接.
所以,也许最初的消息是这样的:
"嘿伙计们,谁正在使用Ticket#212373?"
我希望'#212373'能够自动转换为我们票务系统的链接.如果它将与目标系统中的故障单中的其他详细信息/属性一起扩展,例如客户名称,问题描述,当前状态等,则奖励积分.
任何人都可以给我一些指导,也许是向我展示目标是哪种API,是否可行,推荐方法等?
我终于开始通过 OAuth 正确实现这一点,考虑到幕后发生的事情的复杂性,这非常简单。要完全具有您上面描述的行为,请执行以下操作:
message.channels
事件订阅添加到您的应用程序并设置您的请求 URL。chat:write:user
范围来授权您的 Slack 应用程序。这是允许您的应用程序实际更新用户消息的关键组件。message
来自 Slack 的传入事件。在您(和我)的情况下,您需要解析 的text
属性event
,即用户发布的消息。chat.update
将解析(和链接)的文本发送回 Slack。chat.postEphemeral
当您的应用程序解析由于缺乏权限而无法更新的消息时,将机器人用户配置为发送。您可以向用户发送临时消息,让他知道他可以授权您的应用代表他链接事物。如果您想message.channels
从私人群组和/或直接消息中获取事件,则需要分别指定groups:history
和im:history
。
请注意,message_changed
如果您想维护已编辑消息中的链接,则需要额外处理事件,因为当用户直接编辑消息时,Slack 会剥离链接标签。message_changed
事件的结构与包含在新message
参数中的原始消息和新参数中的先前消息略有不同,previous_message
但可以像简单消息一样解析和更新。
此外,您可以attachments
为您的chat.update
方法提供格式正确的参数,以添加您在问题中提到的其他详细信息,例如客户姓名和票证信息。
这是可能的,但 Slack 团队并不鼓励这样做。该方法已被弃用,将来可能会被删除。
chat.update
端点,以作为上面生成的令牌进行身份验证。我已经实现了您要求的确切行为,并且它已经完美运行了好几年。但是,请注意以下缺点:
归档时间: |
|
查看次数: |
1328 次 |
最近记录: |