Changeset 303 in code for trunk/downstream.go
- Timestamp:
- May 27, 2020, 9:48:08 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/downstream.go
r301 r303 251 251 func (dc *downstreamConn) SendMessage(msg *irc.Message) { 252 252 if !dc.caps["message-tags"] { 253 if msg.Command == "TAGMSG" { 254 return 255 } 253 256 msg = msg.Copy() 254 257 for name := range msg.Tags { … … 275 278 276 279 switch msg.Command { 277 case "PRIVMSG", "NOTICE" :280 case "PRIVMSG", "NOTICE", "TAGMSG": 278 281 msg.Params[0] = dc.marshalEntity(net, msg.Params[0]) 279 282 case "NICK": … … 1398 1401 return err 1399 1402 } 1403 tags := copyClientTags(msg.Tags) 1400 1404 1401 1405 for _, name := range strings.Split(targetsStr, ",") { … … 1419 1423 } 1420 1424 uc.SendMessageLabeled(dc.id, &irc.Message{ 1425 Tags: tags, 1421 1426 Command: "PRIVMSG", 1422 1427 Params: []string{upstreamName, unmarshaledText}, 1423 1428 }) 1424 1429 1430 echoTags := tags.Copy() 1431 echoTags["time"] = irc.TagValue(time.Now().UTC().Format(serverTimeLayout)) 1425 1432 echoMsg := &irc.Message{ 1426 Tags: irc.Tags{ 1427 "time": irc.TagValue(time.Now().UTC().Format(serverTimeLayout)), 1428 }, 1433 Tags: echoTags, 1429 1434 Prefix: &irc.Prefix{ 1430 1435 Name: uc.nick, … … 1441 1446 return err 1442 1447 } 1448 tags := copyClientTags(msg.Tags) 1443 1449 1444 1450 for _, name := range strings.Split(targetsStr, ",") { … … 1453 1459 } 1454 1460 uc.SendMessageLabeled(dc.id, &irc.Message{ 1461 Tags: tags, 1455 1462 Command: "NOTICE", 1456 1463 Params: []string{upstreamName, unmarshaledText}, 1464 }) 1465 } 1466 case "TAGMSG": 1467 var targetsStr string 1468 if err := parseMessageParams(msg, &targetsStr); err != nil { 1469 return err 1470 } 1471 tags := copyClientTags(msg.Tags) 1472 1473 for _, name := range strings.Split(targetsStr, ",") { 1474 uc, upstreamName, err := dc.unmarshalEntity(name) 1475 if err != nil { 1476 return err 1477 } 1478 1479 uc.SendMessageLabeled(dc.id, &irc.Message{ 1480 Tags: tags, 1481 Command: "TAGMSG", 1482 Params: []string{upstreamName}, 1457 1483 }) 1458 1484 }
Note:
See TracChangeset
for help on using the changeset viewer.