Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- NOTE: Some server regex are missing. This is intentional as some
- data from twitch is not in need of a complex regex to gather parsed
- data. String splitting or substrings work fine in these examples.
- #############################
- # SERVER PARSE GUIDE
- # Group: Value:
- #
- # 1 Twitch Data Identifier (string)
- #
- # NOTE: Server parse regex normally used to capture twitch data identifier
- # in order to pass through a decision structure and parse each data type
- # as specified by identifier.
- # ex. if identifer == "USERSTATE":
- # parsed = re.search(server_userstate) //see below for corrosponding regex
- #
- #############################
- server=(CAP\s(?:REQ|\*\sACK)|USERNOTICE|NOTICE|GLOBALUSERSTATE|HOSTTARGET|USERSTATE|CLEARCHAT|MODE|PING|RECONNECT|ROOMSTATE|JOIN|PART|[0-9][0-9][0-9])(?:\s|\r)
- #############################
- # MOTD PARSE GUIDE
- # Group: Value:
- #
- # nil (no capture groups, just used to match data type)
- #
- #############################
- motd=#[a-zA-Z0-9]{2,}\s:(End of \/NAMES list)\r
- #############################
- # WHISPER PARSE GUIDE
- # Group: Value:
- #
- # 1 Badges (string)
- # 2 Color (#<hex>)
- # 3 Display-name (string)
- # 4 Emotes (####:###-###, ###-###)
- # 5 Msg-id (integer)
- # 6 Thread-id ([receiverid]_[senderid])
- # 7 Turbo (0 or 1)
- # 8 User-id (integer)
- # 9 User-type (string)
- # 10 Sender (string)
- # 11 Receiver [self] (string)
- # 12 Message (string)
- #
- #############################
- whisper=@badges=(.*?);color=(.*?);display-name=(.*?);emotes=(.*?);message-id=(.*?);thread-id=(.*?);turbo=(.*?);user-id=(.*?);user-type=(.*?)\s:(?:.*)!(.*)@(?:.*)\.tmi\.twitch\.tv\sWHISPER\s(.*?)\s:(.+)\r
- #############################
- # PRIVMSG PARSE GUIDE
- # Group: Value:
- #
- # 1 Badges (string)
- # 2 Color (#<hex>)
- # 3 Display-Name (string)
- # 4 Emotes (####:###-###, ###-###)
- # 5 ID (Alpha-numerical)
- # 6 Mod (0 or 1)
- # 7 Room-ID (numerical)
- # 8 Subscriber (0 or 1)
- # 9 Turbo (0 or 1)
- # 10 User-ID (integer)
- # 11 User-Type (string)
- # 12 Username (string)
- # 13 Channel (#string)
- # 14 Privmsg (string)
- #
- #############################
- privmsg=@badges=(.*);color=(.*);display-name=(.*);emotes=(.*);id=(.*);mod=(.*);room-id=(.*?);(?:|sent-ts=(?:.*);)subscriber=(.*?);(?:|tmi-sent-ts=(?:.*);)turbo=(.*);user-id=(.*);user-type=(.*)\s:[\w]{2,25}!([\w]{2,25})@[\w]{2,25}\.tmi\.twitch\.tv\sPRIVMSG\s(.*?)\s:(.*)\r
- #############################
- # CLEARCHAT TIMEOUT/BAN PARSE GUIDE
- # Group: Value:
- # Timeout:
- # 1 Duration (integer)
- # 2 Reason (string)
- # 3 Channel (#string)
- # 4 Target_username (string)
- #
- # Ban:
- # 1 Reason (string)
- # 2 Channel (#string)
- # 3 Target_username (string)
- #
- #############################
- server_clearchat_chatter=(?:|@ban-reason=(.*)|@ban-duration=(.*);ban-reason=(.*)):tmi\.twitch\.tv\sCLEARCHAT\s(.*?)\s:(.+)\r
- #############################
- # GLOBALUSERSTATE PARSE GUIDE
- # Group: Value:
- # 1 Badges (string)
- # 2 Color (#<hex>)
- # 3 Display-name (string)
- # 4 Emote-sets (####:###-###, ###-###)
- # 5 Turbo (0 or 1)
- # 6 User-id (numerical)
- # 7 User-type (string)
- #
- #############################
- server_globaluserstate=@badges=(.*);color=(.*);display-name=(.*);emote-sets=(.*);turbo=(.*);user-id=(.*);user-type=(.*)\s:tmi\.twitch\.tv\sGLOBALUSERSTATE\r
- #############################
- # HOSTTARGET PARSE GUIDE
- # Group: Value:
- # 1 Hoster channel (#string)
- # 2 Hostee channel (#string or '-')
- # 3 Viewer count (integer)
- #
- #############################
- server_hosttarget=:tmi\.twitch\.tv\sHOSTTARGET\s(.*?)\s:(.*?)\s(.*?)\r
- #############################
- # JOIN PARSE GUIDE
- # Group: Value:
- # 1 Username (string)
- # 2 Channel (#string)
- #
- #############################
- server_join=:(?:.*)!(.*)@(?:.*)\.tmi\.twitch\.tv\sJOIN\s(.*)\r
- #############################
- # MODE PARSE GUIDE
- # Group: Value:
- # 1 Channel (#string)
- # 2 +o or -o
- # 3 Username (string)
- #
- #############################
- server_mode=:jtv\sMODE\s(.*)\s(\+o|\-o)\s(.*)\r
- #############################
- # NEWSUBSCRIBER PARSE GUIDE
- # Group: Value:
- # 1 Username (string)
- # 2 Channel (#string)
- # 3 Message (string)
- #
- #############################
- server_newsubscriber=:(?:.*?)!(.*?)@(?:.*?)\.tmi\.twitch\.tv\sPRIVMSG\s(.*?)\s:(.*?)\r
- #############################
- # NOTICE PARSE GUIDE
- # Group: Value:
- # 1 Msg-id (string)
- # 2 Channel (#string)
- # 3 Message (string)
- #
- #############################
- server_notice=@msg-id=(.*?)\s:tmi\.twitch\.tv\sNOTICE\s(.*)\s:(.*)\r
- #############################
- # PART PARSE GUIDE
- # Group: Value:
- # 1 Username (string)
- # 2 Channel (#string)
- #
- #############################
- server_part=:(?:.*)!(.*)@(?:.*)\.tmi\.twitch\.tv\sPART\s(.*)\r
- #############################
- # ROOMSTATE PARSE GUIDE
- # Group: Value:
- # 1 Broadcaster-Language (2-char string ex. "en")
- # 2 Emote-only (0 or 1)
- # 3 r9kbeta (0 or 1)
- # 4 Slow-mode (integer)
- # 5 Subscriber-only (0 or 1)
- # Update:
- # 1 Update-type (string)
- # 2 Update-value (0 or 1)
- # 3 Channel (#string)
- #############################
- server_roomstate=@broadcaster-lang=(.*);emote-only=(.*);r9k=(.*);slow=(.*);subs-only=(.*)\s:tmi\.twitch\.tv\sROOMSTATE\s(.+)\r
- server_roomstate_update=@(.*?)=(.*?)\s:tmi.twitch\.tv\sROOMSTATE\s(.*)\r
- #############################
- # USERNOTICE PARSE GUIDE
- # Group: Value:
- #
- # 1 Badges (string)
- # 2 Color (#<hex>)
- # 3 Display-Name (string)
- # 4 Emotes (####:###-###, ###-###)
- # 5 Login (string)
- # 6 Mod (0 or 1)
- # 7 Msg-ID (string)
- # 8 Msg-param-months (integer)
- # 9 Room-ID (integer)
- # 10 Subscriber (0 or 1)
- # 11 System-msg (string)
- # 12 Turbo (0 or 1)
- # 13 User-ID (integer)
- # 14 User-type (string)
- # 15 Channel (#string)
- # With user message:
- # 16 Message (string)
- #
- #############################
- server_usernotice_usermsg=@badges=(.*?);color=(.*?);display-name=(.*?);emotes=(.*?);login=(.*?);mod=(.*?);msg-id=(.*?);msg-param-months=(.*?);room-id=(.*?);subscriber=(.*?);system-msg=(.*?);turbo=(.*?);user-id=(.*?);user-type=(.*?)\s:tmi\.twitch\.tv\sUSERNOTICE\s(#.*?)\s:(.*?)\r
- server_usernotice_nousermsg=@badges=(.*?);color=(.*?);display-name=(.*?);emotes=(.*?);login=(.*?);mod=(.*?);msg-id=(.*?);msg-param-months=(.*?);room-id=(.*?);subscriber=(.*?);system-msg=(.*?);turbo=(.*?);user-id=(.*?);user-type=(.*?)\s:tmi\.twitch\.tv\sUSERNOTICE\s([#a-z0-9]+)\r
- #############################
- # USERSTATE PARSE GUIDE
- # Group: Value:
- # 1 Badges (string)
- # 2 Color (#<hex>)
- # 3 Display-name (string)
- # 4 Emote-sets (####:###-###, ###-###)
- # 5 Mod (0 or 1)
- # 6 Subscriber (0 or 1)
- # 7 Turbo (0 or 1)
- # 8 User-type (string)
- # 9 Channel (#string)
- #
- #############################
- server_userstate=@badges=(.*);color=(.*);display-name=(.*);emote-sets=(.*);mod=(.*);subscriber=(.*);turbo=(.*);user-type=(.*)\s:tmi\.twitch\.tv\sUSERSTATE\s(.*)\r
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement