2024-02-05 22:25:30 -08:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "ehs/EHS.h"
|
|
|
|
#include "ehs/Str.h"
|
|
|
|
#include "ehs/io/socket/TCP.h"
|
|
|
|
|
|
|
|
namespace ehs
|
|
|
|
{
|
2024-07-24 01:36:20 -07:00
|
|
|
class EHS_LIB_IO TwitchChat
|
2024-02-05 22:25:30 -08:00
|
|
|
{
|
|
|
|
private:
|
|
|
|
TCP client;
|
|
|
|
Str_8 username;
|
|
|
|
Str_8 token;
|
|
|
|
Str_8 channel;
|
|
|
|
bool initialized;
|
|
|
|
|
|
|
|
public:
|
|
|
|
~TwitchChat();
|
|
|
|
|
|
|
|
TwitchChat();
|
|
|
|
|
|
|
|
TwitchChat(const Str_8& username);
|
|
|
|
|
|
|
|
TwitchChat(const Str_8& username, const Str_8& token);
|
|
|
|
|
|
|
|
TwitchChat(const TwitchChat& chat);
|
|
|
|
|
|
|
|
TwitchChat& operator=(const TwitchChat& chat);
|
|
|
|
|
|
|
|
void SetToken(const Str_8& newToken);
|
|
|
|
|
|
|
|
void Initialize();
|
|
|
|
|
|
|
|
void UnInitialize();
|
|
|
|
|
|
|
|
void JoinChannel(const Str_8& newChannel);
|
|
|
|
|
|
|
|
void LeaveChannel();
|
|
|
|
|
|
|
|
void SendPong();
|
|
|
|
|
|
|
|
void SendMsg(const Str_8& msg);
|
|
|
|
|
|
|
|
void WhisperMsg(const Str_8& user, const Str_8& msg);
|
|
|
|
|
|
|
|
Str_8 RecvMsg();
|
|
|
|
|
|
|
|
Str_8 GetUsername() const;
|
|
|
|
|
|
|
|
Str_8 GetChannel() const;
|
|
|
|
};
|
|
|
|
}
|