Skip to content

Commit c8da6f7

Browse files
authored
Fix #1128 MessageMeEvent does not have user property (#1130)
1 parent bba0fe4 commit c8da6f7

File tree

3 files changed

+60
-0
lines changed

3 files changed

+60
-0
lines changed

json-logs/samples/events/MessageMePayload.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
"subtype": "me_message",
2929
"channel": "",
3030
"username": "",
31+
"user": "",
3132
"bot_id": "",
3233
"text": "",
3334
"event_ts": "",

slack-api-model/src/main/java/com/slack/api/model/event/MessageMeEvent.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
package com.slack.api.model.event;
22

3+
import com.slack.api.model.block.LayoutBlock;
34
import lombok.Data;
45

6+
import java.util.List;
7+
58
/**
69
* https://api.slack.com/events/message/me_message
710
*/
@@ -16,9 +19,11 @@ public class MessageMeEvent implements Event {
1619
private String channel;
1720

1821
private String username;
22+
private String user;
1923
private String botId;
2024

2125
private String text;
26+
private List<LayoutBlock> blocks; // rich_text blocks
2227

2328
private String eventTs;
2429
private String ts;
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
package test_locally.api.model.event;
2+
3+
import com.slack.api.model.event.MessageMeEvent;
4+
import org.junit.Test;
5+
import test_locally.unit.GsonFactory;
6+
7+
import static org.hamcrest.CoreMatchers.is;
8+
import static org.hamcrest.MatcherAssert.assertThat;
9+
10+
public class MessageMeEventTest {
11+
12+
@Test
13+
public void typeName() {
14+
assertThat(MessageMeEvent.TYPE_NAME, is("message"));
15+
assertThat(MessageMeEvent.SUBTYPE_NAME, is("me_message"));
16+
}
17+
18+
@Test
19+
public void test() {
20+
String json = "{\n" +
21+
" \"type\": \"message\",\n" +
22+
" \"subtype\": \"me_message\",\n" +
23+
" \"text\": \"hey\",\n" +
24+
" \"user\": \"U03E94MK0\",\n" +
25+
" \"ts\": \"1679895454.657169\",\n" +
26+
" \"blocks\": [\n" +
27+
" {\n" +
28+
" \"type\": \"rich_text\",\n" +
29+
" \"block_id\": \"YUITq\",\n" +
30+
" \"elements\": [\n" +
31+
" {\n" +
32+
" \"type\": \"rich_text_section\",\n" +
33+
" \"elements\": [\n" +
34+
" {\n" +
35+
" \"type\": \"text\",\n" +
36+
" \"text\": \"hey\"\n" +
37+
" }\n" +
38+
" ]\n" +
39+
" }\n" +
40+
" ]\n" +
41+
" }\n" +
42+
" ],\n" +
43+
" \"channel\": \"C03E94MKS\",\n" +
44+
" \"event_ts\": \"1679895454.657169\",\n" +
45+
" \"channel_type\": \"channel\"\n" +
46+
"}";
47+
MessageMeEvent event = GsonFactory.createSnakeCase().fromJson(json, MessageMeEvent.class);
48+
assertThat(event.getType(), is("message"));
49+
assertThat(event.getSubtype(), is("me_message"));
50+
assertThat(event.getUser(), is("U03E94MK0"));
51+
assertThat(event.getText(), is("hey"));
52+
assertThat(event.getBlocks().size(), is(1));
53+
}
54+
}

0 commit comments

Comments
 (0)