diff --git a/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/api/WxCpExternalContactService.java b/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/api/WxCpExternalContactService.java index 2e8ca3f15..15c9fbeb1 100644 --- a/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/api/WxCpExternalContactService.java +++ b/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/api/WxCpExternalContactService.java @@ -690,6 +690,39 @@ public interface WxCpExternalContactService { */ WxCpMsgTemplateAddResult addMsgTemplate(WxCpMsgTemplate wxCpMsgTemplate) throws WxErrorException; + + /** + * 提醒成员群发 + * 企业和第三方应用可调用此接口,重新触发群发通知,提醒成员完成群发任务,24小时内每个群发最多触发三次提醒。 + *
+ * 请求方式: POST(HTTPS) + *
+ * 请求地址:https://qyapi.weixin.qq.com/cgi-bin/externalcontact/remind_groupmsg_send?access_token=ACCESS_TOKEN + *
+ * 文档地址 + * + * @param msgId 群发消息的id,通过获取群发记录列表接口返回 + * @return the wx cp msg template add result + */ + WxCpBaseResp remindGroupMsgSend(String msgId) throws WxErrorException; + + + /** + * 停止企业群发 + * 企业和第三方应用可调用此接口,停止无需成员继续发送的企业群发 + *
+ * 请求方式: POST(HTTPS) + *
+ * 请求地址:https://qyapi.weixin.qq.com/cgi-bin/externalcontact/cancel_groupmsg_send?access_token=ACCESS_TOKEN + *
+ * 文档地址 + * + * @param msgId 群发消息的id,通过获取群发记录列表接口返回 + * @return the wx cp msg template add result + */ + WxCpBaseResp cancelGroupMsgSend(String msgId) throws WxErrorException; + + /** * 发送新客户欢迎语 *
diff --git a/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/api/impl/WxCpExternalContactServiceImpl.java b/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/api/impl/WxCpExternalContactServiceImpl.java index fbaf977a8..43f44421c 100644 --- a/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/api/impl/WxCpExternalContactServiceImpl.java +++ b/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/api/impl/WxCpExternalContactServiceImpl.java @@ -418,6 +418,24 @@ public class WxCpExternalContactServiceImpl implements WxCpExternalContactServic return WxCpMsgTemplateAddResult.fromJson(this.mainService.post(url, wxCpMsgTemplate.toJson())); } + @Override + public WxCpBaseResp remindGroupMsgSend(String msgId) throws WxErrorException { + JsonObject params = new JsonObject(); + params.addProperty("msgid", msgId); + final String url = this.mainService.getWxCpConfigStorage() + .getApiUrl(REMIND_GROUP_MSG_SEND); + return WxCpBaseResp.fromJson(this.mainService.post(url, params.toString())); + } + + @Override + public WxCpBaseResp cancelGroupMsgSend(String msgId) throws WxErrorException { + JsonObject params = new JsonObject(); + params.addProperty("msgid", msgId); + final String url = this.mainService.getWxCpConfigStorage() + .getApiUrl(CANCEL_GROUP_MSG_SEND); + return WxCpBaseResp.fromJson(this.mainService.post(url, params.toString())); + } + @Override public void sendWelcomeMsg(WxCpWelcomeMsg msg) throws WxErrorException { final String url = this.mainService.getWxCpConfigStorage().getApiUrl(SEND_WELCOME_MSG); diff --git a/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/constant/WxCpApiPathConsts.java b/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/constant/WxCpApiPathConsts.java index 5409a4229..0f67a2051 100644 --- a/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/constant/WxCpApiPathConsts.java +++ b/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/constant/WxCpApiPathConsts.java @@ -1148,6 +1148,14 @@ public interface WxCpApiPathConsts { * The constant ADD_MSG_TEMPLATE. */ String ADD_MSG_TEMPLATE = "/cgi-bin/externalcontact/add_msg_template"; + /** + * 提醒成员群发 + */ + String REMIND_GROUP_MSG_SEND = "/cgi-bin/externalcontact/remind_groupmsg_send"; + /** + * 停止企业群发 + */ + String CANCEL_GROUP_MSG_SEND = "/cgi-bin/externalcontact/cancel_groupmsg_send"; /** * The constant SEND_WELCOME_MSG. */ diff --git a/weixin-java-cp/src/test/java/me/chanjar/weixin/cp/api/impl/WxCpExternalContactServiceImplTest.java b/weixin-java-cp/src/test/java/me/chanjar/weixin/cp/api/impl/WxCpExternalContactServiceImplTest.java index f435e728f..d7ed2a622 100644 --- a/weixin-java-cp/src/test/java/me/chanjar/weixin/cp/api/impl/WxCpExternalContactServiceImplTest.java +++ b/weixin-java-cp/src/test/java/me/chanjar/weixin/cp/api/impl/WxCpExternalContactServiceImplTest.java @@ -615,4 +615,26 @@ public class WxCpExternalContactServiceImplTest { this.wxCpService.getExternalContactService().getJoinWay(configId); } + + /** + * 提醒成员群发 + * + * @throws WxErrorException + */ + @Test + public void testRemindGroupMsgSend() throws WxErrorException { + this.wxCpService.getExternalContactService() + .remindGroupMsgSend("msgGCAAAXtWyujaWJHDDGi0mACAAAA"); + } + + /** + * 测试取消提醒成员群发 + * + * @throws WxErrorException + */ + @Test + public void testCancelGroupMsgSend() throws WxErrorException { + this.wxCpService.getExternalContactService() + .cancelGroupMsgSend("msgGCAAAXtWyujaWJHDDGi0mACAAAA"); + } }