diff --git a/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/bean/kf/msg/WxCpKfEventMsg.java b/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/bean/kf/msg/WxCpKfEventMsg.java index 25439dabbd..ff87f06446 100644 --- a/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/bean/kf/msg/WxCpKfEventMsg.java +++ b/weixin-java-cp/src/main/java/me/chanjar/weixin/cp/bean/kf/msg/WxCpKfEventMsg.java @@ -40,4 +40,6 @@ public class WxCpKfEventMsg { private String msgCode; @SerializedName("recall_msgid") private String recallMsgId; + @SerializedName("reject_switch") + private Integer rejectSwitch; } diff --git a/weixin-java-cp/src/test/java/me/chanjar/weixin/cp/bean/kf/WxCpKfKnowledgeTest.java b/weixin-java-cp/src/test/java/me/chanjar/weixin/cp/bean/kf/WxCpKfKnowledgeTest.java index 9f8ff6fa78..eeb47ac611 100644 --- a/weixin-java-cp/src/test/java/me/chanjar/weixin/cp/bean/kf/WxCpKfKnowledgeTest.java +++ b/weixin-java-cp/src/test/java/me/chanjar/weixin/cp/bean/kf/WxCpKfKnowledgeTest.java @@ -101,6 +101,19 @@ public void testKnowledgeApiRequests() throws Exception { "{}")); } + @Test + public void testKfMsgListRejectSwitchFromJson() { + String json = "{\"errcode\":0,\"errmsg\":\"ok\",\"msg_list\":[{\"msgid\":\"msg-1\",\"send_time\":1,\"origin\":4,\"msgtype\":\"event\",\"event\":{\"event_type\":\"reject_customer_msg_switch_change\",\"servicer_userid\":\"Zhangsan\",\"open_kfid\":\"wkAJ2GCAAASSm4_FhToWMFea0xAFfd3Q\",\"external_userid\":\"wmAJ2GCAAAme1XQRC-NI-q0_ZM9ukoAw\",\"reject_switch\":1}}]}"; + + WxCpKfMsgListResp response = WxCpKfMsgListResp.fromJson(json); + + assertThat(response.getMsgList()).singleElement().satisfies(item -> { + assertThat(item.getEvent().getEventType()).isEqualTo("reject_customer_msg_switch_change"); + assertThat(item.getEvent().getServicerUserId()).isEqualTo("Zhangsan"); + assertThat(item.getEvent().getRejectSwitch()).isEqualTo(1); + }); + } + private void assertJsonRequests(List actual, List expected) { assertThat(actual).hasSameSizeAs(expected); for (int i = 0; i < actual.size(); i++) {