feat: add redis cache and fanout support
This commit is contained in:
+31
-31
@@ -41,7 +41,7 @@ func pbServDataSerialize(data *MsgServerData) *pbx.ServerMsg_Data {
|
||||
FromUserId: data.From,
|
||||
Timestamp: timeToInt64(&data.Timestamp),
|
||||
DeletedAt: timeToInt64(data.DeletedAt),
|
||||
SeqId: int32(data.SeqId),
|
||||
SeqId: data.SeqId,
|
||||
Head: interfaceMapToByteMap(data.Head),
|
||||
Content: interfaceToBytes(data.Content),
|
||||
},
|
||||
@@ -86,7 +86,7 @@ func pbServPresSerialize(pres *MsgServerPres) *pbx.ServerMsg_Pres {
|
||||
Src: pres.Src,
|
||||
What: what,
|
||||
UserAgent: pres.UserAgent,
|
||||
SeqId: int32(pres.SeqId),
|
||||
SeqId: pres.SeqId,
|
||||
DelId: int32(pres.DelId),
|
||||
DelSeq: pbDelQuerySerialize(pres.DelSeq),
|
||||
TargetUserId: pres.AcsTarget,
|
||||
@@ -103,7 +103,7 @@ func pbServInfoSerialize(info *MsgServerInfo) *pbx.ServerMsg_Info {
|
||||
FromUserId: info.From,
|
||||
Src: info.Src,
|
||||
What: pbInfoNoteWhatSerialize(info.What),
|
||||
SeqId: int32(info.SeqId),
|
||||
SeqId: info.SeqId,
|
||||
Event: pbCallEventSerialize(info.Event),
|
||||
Payload: info.Payload,
|
||||
},
|
||||
@@ -165,7 +165,7 @@ func pbServDeserialize(pkt *pbx.ServerMsg) *ServerComMessage {
|
||||
From: data.GetFromUserId(),
|
||||
Timestamp: *tsptr,
|
||||
DeletedAt: int64ToTime(data.GetDeletedAt()),
|
||||
SeqId: int(data.GetSeqId()),
|
||||
SeqId: data.GetSeqId(),
|
||||
Head: byteMapToInterfaceMap(data.GetHead()),
|
||||
Content: data.GetContent(),
|
||||
}
|
||||
@@ -204,7 +204,7 @@ func pbServDeserialize(pkt *pbx.ServerMsg) *ServerComMessage {
|
||||
Src: pres.GetSrc(),
|
||||
What: what,
|
||||
UserAgent: pres.GetUserAgent(),
|
||||
SeqId: int(pres.GetSeqId()),
|
||||
SeqId: pres.GetSeqId(),
|
||||
DelId: int(pres.GetDelId()),
|
||||
DelSeq: pbDelQueryDeserialize(pres.GetDelSeq()),
|
||||
AcsTarget: pres.GetTargetUserId(),
|
||||
@@ -217,7 +217,7 @@ func pbServDeserialize(pkt *pbx.ServerMsg) *ServerComMessage {
|
||||
Src: info.GetSrc(),
|
||||
From: info.GetFromUserId(),
|
||||
What: pbInfoNoteWhatDeserialize(info.GetWhat()),
|
||||
SeqId: int(info.GetSeqId()),
|
||||
SeqId: info.GetSeqId(),
|
||||
Event: pbCallEventDeserialize(info.GetEvent()),
|
||||
Payload: info.GetPayload(),
|
||||
}
|
||||
@@ -365,7 +365,7 @@ func pbCliSerialize(msg *ClientComMessage) *pbx.ClientMsg {
|
||||
Note: &pbx.ClientNote{
|
||||
Topic: msg.Note.Topic,
|
||||
What: pbInfoNoteWhatSerialize(msg.Note.What),
|
||||
SeqId: int32(msg.Note.SeqId),
|
||||
SeqId: msg.Note.SeqId,
|
||||
Unread: int32(msg.Note.Unread),
|
||||
Event: pbCallEventSerialize(msg.Note.Event),
|
||||
Payload: msg.Note.Payload,
|
||||
@@ -485,7 +485,7 @@ func pbCliDeserialize(pkt *pbx.ClientMsg) *ClientComMessage {
|
||||
} else if note := pkt.GetNote(); note != nil {
|
||||
msg.Note = &MsgClientNote{
|
||||
Topic: note.GetTopic(),
|
||||
SeqId: int(note.GetSeqId()),
|
||||
SeqId: note.GetSeqId(),
|
||||
What: pbInfoNoteWhatDeserialize(note.GetWhat()),
|
||||
Unread: int(note.GetUnread()),
|
||||
Event: pbCallEventDeserialize(note.GetEvent()),
|
||||
@@ -585,15 +585,15 @@ func pbGetQuerySerialize(in *MsgGetQuery) *pbx.GetQuery {
|
||||
}
|
||||
if in.Data != nil {
|
||||
out.Data = &pbx.GetOpts{
|
||||
BeforeId: int32(in.Data.BeforeId),
|
||||
SinceId: int32(in.Data.SinceId),
|
||||
BeforeId: in.Data.BeforeId,
|
||||
SinceId: in.Data.SinceId,
|
||||
Limit: int32(in.Data.Limit),
|
||||
}
|
||||
|
||||
if len(in.Data.IdRanges) > 0 {
|
||||
out.Data.Ranges = make([]*pbx.SeqRange, len(in.Data.IdRanges))
|
||||
for i, dq := range in.Data.IdRanges {
|
||||
out.Data.Ranges[i] = &pbx.SeqRange{Low: int32(dq.LowId), Hi: int32(dq.HiId)}
|
||||
out.Data.Ranges[i] = &pbx.SeqRange{Low: dq.LowId, Hi: dq.HiId}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -623,16 +623,16 @@ func pbGetQueryDeserialize(in *pbx.GetQuery) *MsgGetQuery {
|
||||
}
|
||||
if data := in.GetData(); data != nil {
|
||||
msg.Data = &MsgGetOpts{
|
||||
BeforeId: int(data.GetBeforeId()),
|
||||
SinceId: int(data.GetSinceId()),
|
||||
BeforeId: data.GetBeforeId(),
|
||||
SinceId: data.GetSinceId(),
|
||||
Limit: int(data.GetLimit()),
|
||||
}
|
||||
|
||||
if ranges := data.GetRanges(); len(ranges) > 0 {
|
||||
msg.Data.IdRanges = make([]MsgRange, len(ranges))
|
||||
for i, sr := range ranges {
|
||||
msg.Data.IdRanges[i].LowId = int(sr.GetLow())
|
||||
msg.Data.IdRanges[i].HiId = int(sr.GetHi())
|
||||
msg.Data.IdRanges[i].LowId = sr.GetLow()
|
||||
msg.Data.IdRanges[i].HiId = sr.GetHi()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -890,9 +890,9 @@ func pbTopicDescSerialize(desc *MsgTopicDesc) *pbx.TopicDesc {
|
||||
IsChan: desc.IsChan,
|
||||
Defacs: pbDefaultAcsSerialize(desc.DefaultAcs),
|
||||
Acs: pbAccessModeSerialize(desc.Acs),
|
||||
SeqId: int32(desc.SeqId),
|
||||
ReadId: int32(desc.ReadSeqId),
|
||||
RecvId: int32(desc.RecvSeqId),
|
||||
SeqId: desc.SeqId,
|
||||
ReadId: desc.ReadSeqId,
|
||||
RecvId: desc.RecvSeqId,
|
||||
DelId: int32(desc.DelId),
|
||||
Public: interfaceToBytes(desc.Public),
|
||||
Trusted: interfaceToBytes(desc.Trusted),
|
||||
@@ -918,9 +918,9 @@ func pbTopicDescDeserialize(desc *pbx.TopicDesc) *MsgTopicDesc {
|
||||
IsChan: desc.GetIsChan(),
|
||||
DefaultAcs: pbDefaultAcsDeserialize(desc.GetDefacs()),
|
||||
Acs: pbAccessModeDeserialize(desc.GetAcs()),
|
||||
SeqId: int(desc.SeqId),
|
||||
ReadSeqId: int(desc.ReadId),
|
||||
RecvSeqId: int(desc.RecvId),
|
||||
SeqId: desc.SeqId,
|
||||
ReadSeqId: desc.ReadId,
|
||||
RecvSeqId: desc.RecvId,
|
||||
DelId: int(desc.DelId),
|
||||
Public: bytesToInterface(desc.Public),
|
||||
Trusted: bytesToInterface(desc.Trusted),
|
||||
@@ -947,7 +947,7 @@ func pbTopicSerializeToDesc(topic *Topic) *pbx.TopicDesc {
|
||||
Auth: topic.accessAuth.String(),
|
||||
Anon: topic.accessAnon.String(),
|
||||
},
|
||||
SeqId: int32(topic.lastID),
|
||||
SeqId: topic.lastID,
|
||||
DelId: int32(topic.delID),
|
||||
Public: interfaceToBytes(topic.public),
|
||||
Trusted: interfaceToBytes(topic.trusted),
|
||||
@@ -972,15 +972,15 @@ func pbTopicSubSerialize(sub *MsgTopicSub) *pbx.TopicSub {
|
||||
DeletedAt: timeToInt64(sub.DeletedAt),
|
||||
Online: sub.Online,
|
||||
Acs: pbAccessModeSerialize(&sub.Acs),
|
||||
ReadId: int32(sub.ReadSeqId),
|
||||
RecvId: int32(sub.RecvSeqId),
|
||||
ReadId: sub.ReadSeqId,
|
||||
RecvId: sub.RecvSeqId,
|
||||
Public: interfaceToBytes(sub.Public),
|
||||
Trusted: interfaceToBytes(sub.Trusted),
|
||||
Private: interfaceToBytes(sub.Private),
|
||||
UserId: sub.User,
|
||||
Topic: sub.Topic,
|
||||
TouchedAt: timeToInt64(sub.TouchedAt),
|
||||
SeqId: int32(sub.SeqId),
|
||||
SeqId: sub.SeqId,
|
||||
DelId: int32(sub.DelId),
|
||||
}
|
||||
if sub.LastSeen != nil {
|
||||
@@ -1001,15 +1001,15 @@ func pbTopicSubSliceDeserialize(subs []*pbx.TopicSub) []MsgTopicSub {
|
||||
UpdatedAt: int64ToTime(subs[i].GetUpdatedAt()),
|
||||
DeletedAt: int64ToTime(subs[i].GetDeletedAt()),
|
||||
Online: subs[i].GetOnline(),
|
||||
ReadSeqId: int(subs[i].GetReadId()),
|
||||
RecvSeqId: int(subs[i].GetRecvId()),
|
||||
ReadSeqId: subs[i].GetReadId(),
|
||||
RecvSeqId: subs[i].GetRecvId(),
|
||||
Public: bytesToInterface(subs[i].GetPublic()),
|
||||
Trusted: bytesToInterface(subs[i].GetTrusted()),
|
||||
Private: bytesToInterface(subs[i].GetPrivate()),
|
||||
User: subs[i].GetUserId(),
|
||||
Topic: subs[i].GetTopic(),
|
||||
TouchedAt: int64ToTime(subs[i].GetTouchedAt()),
|
||||
SeqId: int(subs[i].GetSeqId()),
|
||||
SeqId: subs[i].GetSeqId(),
|
||||
DelId: int(subs[i].GetDelId()),
|
||||
}
|
||||
if acs := subs[i].GetAcs(); acs != nil {
|
||||
@@ -1063,7 +1063,7 @@ func pbDelQuerySerialize(in []MsgRange) []*pbx.SeqRange {
|
||||
|
||||
out := make([]*pbx.SeqRange, len(in))
|
||||
for i, dq := range in {
|
||||
out[i] = &pbx.SeqRange{Low: int32(dq.LowId), Hi: int32(dq.HiId)}
|
||||
out[i] = &pbx.SeqRange{Low: dq.LowId, Hi: dq.HiId}
|
||||
}
|
||||
|
||||
return out
|
||||
@@ -1076,8 +1076,8 @@ func pbDelQueryDeserialize(in []*pbx.SeqRange) []MsgRange {
|
||||
|
||||
out := make([]MsgRange, len(in))
|
||||
for i, sr := range in {
|
||||
out[i].LowId = int(sr.GetLow())
|
||||
out[i].HiId = int(sr.GetHi())
|
||||
out[i].LowId = sr.GetLow()
|
||||
out[i].HiId = sr.GetHi()
|
||||
}
|
||||
|
||||
return out
|
||||
|
||||
Reference in New Issue
Block a user