fix(room): deliver kick notice to removed user
This commit is contained in:
parent
cf431eb8d7
commit
91dca6fc8e
@ -110,7 +110,7 @@ func TestMySQLRepositoryProcessesRealRoomKickOutbox(t *testing.T) {
|
||||
if processed != 1 || len(publisher.messages) != 1 {
|
||||
t.Fatalf("unexpected process result: processed=%d messages=%d", processed, len(publisher.messages))
|
||||
}
|
||||
if publisher.messages[0].ToAccount != "990000002" || publisher.messages[0].Ext != "room_notice" {
|
||||
if publisher.messages[0].ToAccount != "990000002" || publisher.messages[0].Ext != "room_system_message" {
|
||||
t.Fatalf("unexpected private message: %+v", publisher.messages[0])
|
||||
}
|
||||
|
||||
|
||||
@ -98,7 +98,9 @@ func (s *Service) publishRoomKickEvent(ctx context.Context, event RoomKickEvent,
|
||||
ToAccount: tencentim.FormatUserID(event.TargetUserID),
|
||||
EventID: event.EventID,
|
||||
Desc: "room_user_kicked",
|
||||
Ext: "room_notice",
|
||||
// 被踢用户可能已先被移出腾讯 IM 房间群,因此必须用 C2C 兜底;Ext 沿用
|
||||
// Flutter 已消费的房间系统消息协议,保证当前线上客户端不会把私有通知过滤掉。
|
||||
Ext: "room_system_message",
|
||||
PayloadJSON: payload,
|
||||
})
|
||||
nowMs := time.Now().UnixMilli()
|
||||
|
||||
@ -47,7 +47,7 @@ func TestProcessRoomKickNoticesPublishesPrivateIM(t *testing.T) {
|
||||
t.Fatalf("published messages=%d, want 1", len(publisher.messages))
|
||||
}
|
||||
message := publisher.messages[0]
|
||||
if message.ToAccount != "20001" || message.EventID != "evt-room-kick-1" || message.Ext != "room_notice" || message.Desc != "room_user_kicked" {
|
||||
if message.ToAccount != "20001" || message.EventID != "evt-room-kick-1" || message.Ext != "room_system_message" || message.Desc != "room_user_kicked" {
|
||||
t.Fatalf("unexpected message: %+v", message)
|
||||
}
|
||||
if repo.deliveredEventID != "evt-room-kick-1" {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user