Changeset 305 in code for trunk/upstream.go


Ignore:
Timestamp:
May 28, 2020, 2:26:28 PM (5 years ago)
Author:
ecs
Message:

Join all channels with a single JOIN message

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/upstream.go

    r304 r305  
    526526                })
    527527
     528                // TODO: split this into multiple messages if need be
     529                var names, keys []string
    528530                for _, ch := range uc.network.channels {
    529                         params := []string{ch.Name}
    530                         if ch.Key != "" {
    531                                 params = append(params, ch.Key)
    532                         }
    533                         uc.SendMessage(&irc.Message{
    534                                 Command: "JOIN",
    535                                 Params:  params,
    536                         })
    537                 }
     531                        names = append(names, ch.Name)
     532                        keys = append(keys, ch.Key)
     533                }
     534                uc.SendMessage(&irc.Message{
     535                        Command: "JOIN",
     536                        Params: []string{
     537                                strings.Join(names, ","),
     538                                strings.Join(keys, ","),
     539                        },
     540                })
    538541        case irc.RPL_MYINFO:
    539542                if err := parseMessageParams(msg, nil, &uc.serverName, nil, &uc.availableUserModes, nil); err != nil {
Note: See TracChangeset for help on using the changeset viewer.