2
我试图用松散的机器人发送带附件的消息给闲聊。与api的连接是通过WebSocket完成的,直到现在,一切正常,除了发送带附件的消息之外,所有的东西都可以正常工作。Slack API只拾取文本字段
这里是代码片段发送消息:
public final void replyInteractive(WebSocketSession session, Event event, InteractiveMessage reply) {
try {
reply.setText(encode(reply.getText()));
reply.setType(EventType.MESSAGE.name().toLowerCase());
if (reply.getChannel() == null && event.getChannelId() != null) {
reply.setChannel(event.getChannelId());
}
session.sendMessage(new TextMessage(reply.toJSONString()));
if (logger.isDebugEnabled()) { // For debugging purpose only
logger.debug("Reply (Message): {}", reply.toJSONString());
}
} catch (IOException e) {
logger.error("Error sending event: {}. Exception: {}", event.getText(), e.getMessage());
}
}
这是该代码发送JSON:
{"type":"message","channel":"D4CJ8B337","text":"New book!","attachments":[{"fallback":"Something went wrong","color":"#3AA3E3","title":"Do you want to buy this book?","actions":[{"name":"Buy","value":"Yes","text":"Buy","type":"button"},{"name":"No","value":"No","text":"No","type":"button"}],"attachment_type":"default","callback_id":"Djisda"}]}
但是,正如我所说,只有文本字段,“新书!“,正在接受并在聊天中显示。当我使用Slack Message Builder测试它时,整个消息似乎是有效的。 我想就是这样,在此先感谢。