- Timestamp:
- Mar 26, 2020, 9:43:48 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/downstream.go
r162 r163 1237 1237 uc.network.ring.Produce(echoMsg) 1238 1238 } 1239 case "INVITE": 1240 var user, channel string 1241 if err := parseMessageParams(msg, &user, &channel); err != nil { 1242 return err 1243 } 1244 1245 ucChannel, upstreamChannel, err := dc.unmarshalEntity(channel) 1246 if err != nil { 1247 return err 1248 } 1249 1250 ucUser, upstreamUser, err := dc.unmarshalEntity(user) 1251 if err != nil { 1252 return err 1253 } 1254 1255 if ucChannel != ucUser { 1256 return ircError{&irc.Message{ 1257 Command: irc.ERR_USERNOTINCHANNEL, 1258 Params: []string{dc.nick, user, channel, "They aren't on that channel"}, 1259 }} 1260 } 1261 uc := ucChannel 1262 1263 uc.SendMessageLabeled(dc, &irc.Message{ 1264 Command: "INVITE", 1265 Params: []string{upstreamUser, upstreamChannel}, 1266 }) 1239 1267 default: 1240 1268 dc.logger.Printf("unhandled message: %v", msg) -
trunk/upstream.go
r162 r163 1046 1046 }) 1047 1047 }) 1048 case irc.RPL_INVITING: 1049 var nick string 1050 var channel string 1051 if err := parseMessageParams(msg, &nick, &channel); err != nil { 1052 return err 1053 } 1054 1055 uc.forEachDownstreamByID(downstreamID, func(dc *downstreamConn) { 1056 dc.SendMessage(&irc.Message{ 1057 Prefix: dc.srv.prefix(), 1058 Command: irc.RPL_INVITING, 1059 Params: []string{dc.nick, dc.marshalNick(uc, nick), dc.marshalChannel(uc, channel)}, 1060 }) 1061 }) 1048 1062 case "TAGMSG": 1049 1063 // TODO: relay to downstream connections that accept message-tags
Note:
See TracChangeset
for help on using the changeset viewer.