Closed dyindude closed 5 years ago
Doing some debugging, I see that the server-side syntax is the same for the room (expected):
:dyinbot!dyinbot@dyinbot.tmi.twitch.tv JOIN #chatrooms:166880276:803f38a5-edcd-4985-a3cf-641837524716
:dyinbot.tmi.twitch.tv 353 dyinbot = #chatrooms:166880276:803f38a5-edcd-4985-a3cf-641837524716 :dyinbot
:dyinbot!dyinbot@dyinbot.tmi.twitch.tv JOIN #dyindude
:dyinbot.tmi.twitch.tv 353 dyinbot = #dyindude :dyinbot
I have traced this behavior to the parseNames
function in message.go
:
func parseNames(text string) (string, []string) {
lines := strings.Split(text, ":")
channelDirty := strings.Split(lines[1], "#")
channel := strings.Trim(channelDirty[1], " ")
users := strings.Split(lines[2], " ")
return channel, users
}
which produces an invalid chatroom name for a Room (which has :
in its name) when a Client
tries to update its channelUserlist
I am working on a PR that corrects this behavior
While working on my bot, I'd like to be able to have the bot join a Room instead of the default chatroom for the channel.
Referencing the twitch docs: https://dev.twitch.tv/docs/irc/chat-rooms/ the format for specifying a channel for a room is:
#chatrooms:<channel ID>:<room UUID>
However, in trying to set this up for a Room I've created on my channel, the following error is encountered:
Here's a quick mockup of code to reproduce the issue: