如果你需要实现机器人回复或机器人发送消息,可依据本文档操作步骤实现机器人回复或机器人发送消息的开发。
背景信息
机器人回复消息本质上就是机器人发送消息的过程。因此本文中,回复消息和发送消息具有相同的含义。
发送消息的方式可以通过服务端 API 和 Webhook 的方式进行发送,下面将针对两种发送消息的方式进行介绍。
前提条件
- 需要完成创建应用流程。
- 需要完成添加应用能力流程
通过 Webhook 发送消息
通过 Webhook 方式发送消息
通过 webhook 方式发送消息,支持 @ 功能,具体请查下下方接入示例。
-
通过应用机器人 Webhook url 进行发送消息:
-
在机器人接收消息中,获取群内应用机器人的 Webhook url 地址。详情参考获取应用机器人 Webhook。
-
Java 开发环境准备:
-
引入 Java SDK ,更多语言 SDK 参考旧版服务端SDK下载。
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>alibaba-dingtalk-service-sdk</artifactId>
<version>2.0.0</version>
</dependency>
-
接入代码示例:
public void sendMessageWebhook() throws ApiException {
DingTalkClient client = new DefaultDingTalkClient("{ Webhook url 地址 }");
OapiRobotSendRequest request = new OapiRobotSendRequest();
request.setMsgtype("text");
OapiRobotSendRequest.Text text = new OapiRobotSendRequest.Text();
text.setContent("测试文本消息");
request.setText(text);
OapiRobotSendRequest.At at = new OapiRobotSendRequest.At();
at.setAtUserIds(Arrays.asList("4525xxxxxxxxx7041"));
at.setIsAtAll(false);
request.setAt(at);
OapiRobotSendResponse response = client.execute(request);
System.out.println(response.getBody());
}
更多消息类型,请参考自定义机器人发送消息的消息类型。
-
通过机器人接收消息中 sessionWebhook 字段,进行消息发送。
-
获取机器人接收消息的 JSON 数据中 sessionWebhook 地址。
-
Java 开发环境准备:
-
引入 Java SDK ,更多语言 SDK 参考旧版服务端SDK下载。
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>alibaba-dingtalk-service-sdk</artifactId>
<version>2.0.0</version>
</dependency>
-
接入代码示例:
public void sendMessageWebhook() throws ApiException {
DingTalkClient client = new DefaultDingTalkClient("{ SessionWebhook url 地址 }");
OapiRobotSendRequest request = new OapiRobotSendRequest();
request.setMsgtype("text");
OapiRobotSendRequest.Text text = new OapiRobotSendRequest.Text();
text.setContent("测试文本消息");
request.setText(text);
OapiRobotSendRequest.At at = new OapiRobotSendRequest.At();
at.setAtUserIds(Arrays.asList("4525xxxxxxxxx7041"));
at.setIsAtAll(false);
request.setAt(at);
OapiRobotSendResponse response = client.execute(request);
System.out.println(response.getBody());
}
更多消息类型,请参考自定义机器人发送消息的消息类型。
通过服务端 API 发送消息
服务端 API 发送消息列表,更多 API 内容参考机器人服务端 API。
| API 名称 | 描述 |
|---|
| 机器人发送群聊消息 | 群内发送消息。 暂不支持 @ 功能 |
| 批量发送人与机器人会话中机器人消息 | 人与机器人会话中发送消息。 暂不支持 @ 功能 |
| 人与人会话中机器人发送普通消息 | 人与人会话中发送消息。 暂不支持 @ 功能 说明 仅在单聊酷应用场景下使用。 |
服务端 API 调用详情参考文档如何调用服务端API。
后续步骤
机器人发送消息开发完成后,需进行发布应用。