diff --git a/bridge/mattermost6/mattermost.go b/bridge/mattermost6/mattermost.go index d11333d3..af01f218 100644 --- a/bridge/mattermost6/mattermost.go +++ b/bridge/mattermost6/mattermost.go @@ -578,7 +578,18 @@ func (m *Mattermost) GetChannel(channelID string) (*bridge.ChannelInfo, error) { } } - return nil, errors.New("channel not found") + // Fallback if it's not found in the cache. + mmchannel, _, err := m.mc.Client.GetChannel(channelID, "") + if err != nil { + return nil, errors.New("channel not found") + } + return &bridge.ChannelInfo{ + Name: mmchannel.Name, + ID: mmchannel.Id, + TeamID: mmchannel.TeamId, + DM: mmchannel.IsGroupOrDirect(), + Private: !mmchannel.IsOpen(), + }, nil } func (m *Mattermost) GetUser(userID string) *bridge.UserInfo { diff --git a/mm-go-irckit/userbridge.go b/mm-go-irckit/userbridge.go index 497ff026..bcc12361 100644 --- a/mm-go-irckit/userbridge.go +++ b/mm-go-irckit/userbridge.go @@ -808,7 +808,7 @@ func (u *User) addUserToChannelWorker6(channels <-chan *bridge.ChannelInfo, thro if postlist == nil { // if the channel is not from the primary team id, we can't get posts if brchannel.TeamID == u.br.GetMe().TeamID { - logger.Errorf("something wrong with getPostsSince for %s for channel %s (%s)", u.Nick, brchannel.ID, brchannel.Name) + logger.Errorf("something wrong with getPostsSince for %s for channel %s (%s)", u.Nick, channame, brchannel.ID) } continue }