+ Channel* chan = target.Get<Channel>();
+ ClientProtocol::Messages::Privmsg privmsg(ClientProtocol::Messages::Privmsg::nocopy, user, chan, text, details.type, target.status);
+ privmsg.AddTags(tags);
+ localuser->Send(ServerInstance->GetRFCEvents().privmsg, privmsg);
+ }
+ else
+ {
+ const std::string* servername = target.Get<std::string>();
+ ClientProtocol::Messages::Privmsg privmsg(ClientProtocol::Messages::Privmsg::nocopy, user, *servername, text, details.type);
+ privmsg.AddTags(tags);
+ localuser->Send(ServerInstance->GetRFCEvents().privmsg, privmsg);
+ }
+ }
+
+ void OnUserPostTagMessage(User* user, const MessageTarget& target, const CTCTags::TagMessageDetails& details) CXX11_OVERRIDE
+ {
+ if (!cap.get(user) || !details.echo)
+ return;