diff options
| author | ilotterytea <iltsu@alright.party> | 2024-04-20 23:45:41 +0500 |
|---|---|---|
| committer | ilotterytea <iltsu@alright.party> | 2024-04-20 23:45:41 +0500 |
| commit | 25ba548e015f3be7c2724617d9258858da7cc66a (patch) | |
| tree | 049cba4f10d014b8ca0ad056f410d403123c66bb /src/irc/client.cpp | |
| parent | 9953a68a5d1918ad6e77a7c614279d14ab1c6bc0 (diff) | |
feat: authorizing on twitch irc servers
Diffstat (limited to 'src/irc/client.cpp')
| -rw-r--r-- | src/irc/client.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/irc/client.cpp b/src/irc/client.cpp index 470bad9..42fd8ac 100644 --- a/src/irc/client.cpp +++ b/src/irc/client.cpp @@ -28,6 +28,7 @@ void Client::run() { } case ix::WebSocketMessageType::Open: { std::cout << "Connected to Twitch IRC!\n"; + this->authorize(); break; } case ix::WebSocketMessageType::Close: { @@ -42,3 +43,18 @@ void Client::run() { this->websocket.run(); } + +void Client::authorize() { + if (this->username.empty() || this->password.empty()) { + std::cout << "Bot username and password must be set!\n"; + return; + } + + std::cout << "Authorizing on Twitch IRC servers...\n"; + + this->websocket.send("PASS " + this->password + "\r\n"); + this->websocket.send("NICK " + this->username + "\r\n"); + this->websocket.send("CAP REQ :twitch.tv/membership\r\n"); + this->websocket.send("CAP REQ :twitch.tv/commands\r\n"); + this->websocket.send("CAP REQ :twitch.tv/tags\r\n"); +} |
