summaryrefslogtreecommitdiffstats
path: root/matterclient
diff options
context:
space:
mode:
authorWim <wim@42.be>2017-04-15 20:21:57 +0200
committerWim <wim@42.be>2017-04-15 20:21:57 +0200
commitfdb57230a363d1326f597253bb230f0e7e325aee (patch)
tree58af49c8d900f1b43a61528d6360188ef296007b /matterclient
parent7469732bbc84dbb60b6eafc29fb8d0771a48ba27 (diff)
downloadmatterbridge-msglm-fdb57230a363d1326f597253bb230f0e7e325aee.tar.gz
matterbridge-msglm-fdb57230a363d1326f597253bb230f0e7e325aee.tar.bz2
matterbridge-msglm-fdb57230a363d1326f597253bb230f0e7e325aee.zip
Add support for edited messages (mattermost)
Diffstat (limited to 'matterclient')
-rw-r--r--matterclient/matterclient.go14
1 files changed, 12 insertions, 2 deletions
diff --git a/matterclient/matterclient.go b/matterclient/matterclient.go
index a066d654..d234fb34 100644
--- a/matterclient/matterclient.go
+++ b/matterclient/matterclient.go
@@ -251,7 +251,7 @@ func (m *MMClient) WsReceiver() {
func (m *MMClient) parseMessage(rmsg *Message) {
switch rmsg.Raw.Event {
- case model.WEBSOCKET_EVENT_POSTED:
+ case model.WEBSOCKET_EVENT_POSTED, model.WEBSOCKET_EVENT_POST_EDITED:
m.parseActionPost(rmsg)
/*
case model.ACTION_USER_REMOVED:
@@ -280,7 +280,17 @@ func (m *MMClient) parseActionPost(rmsg *Message) {
rmsg.Username = m.GetUser(data.UserId).Username
rmsg.Channel = m.GetChannelName(data.ChannelId)
rmsg.Type = data.Type
- rmsg.Team = m.GetTeamName(rmsg.Raw.Data["team_id"].(string))
+ teamid, _ := rmsg.Raw.Data["team_id"].(string)
+ // edit messsages have no team_id for some reason
+ if teamid == "" {
+ // we can find the team_id from the channelid
+ result, _ := m.Client.GetChannel(data.ChannelId, "")
+ teamid = result.Data.(*model.ChannelData).Channel.TeamId
+ rmsg.Raw.Data["team_id"] = teamid
+ }
+ if teamid != "" {
+ rmsg.Team = m.GetTeamName(teamid)
+ }
// direct message
if rmsg.Raw.Data["channel_type"] == "D" {
rmsg.Channel = m.GetUser(data.UserId).Username