Twitch SDK (Internal)
chatroomupdatemodetask.h
Go to the documentation of this file.
1 /********************************************************************************************
2  * Twitch Broadcasting SDK
3  *
4  * This software is supplied under the terms of a license agreement with Twitch Interactive, Inc. and
5  * may not be copied or used except in accordance with the terms of that agreement
6  * Copyright (c) 2012-2016 Twitch Interactive, Inc.
7  *********************************************************************************************/
8 
9 #pragma once
10 
14 
15 namespace ttv
16 {
17  namespace chat
18  {
19  class ChatRoomUpdateModeTask;
20  }
21 }
22 
24 {
25 public:
26  using Callback = std::function<void(ChatRoomUpdateModeTask* source, TTV_ErrorCode ec, UpdateRoomModesError&& error, ChatRoomInfo&& info)>;
27 
28  ChatRoomUpdateModeTask(const std::string& roomId, ChatMode mode, bool turnOn, const std::string& authToken, Callback&& callback);
29 
30  void SetSlowModeDurationSeconds(uint32_t slowModeDurationSeconds) { mSlowModeDurationSeconds = slowModeDurationSeconds; }
31 
32  virtual void OnComplete() override;
33 
34 protected:
35  virtual const char* GetTaskName() const override { return "ChatRoomUpdateModeTask"; }
36 
37  virtual void FillHttpRequestInfo(HttpRequestInfo& requestInfo) override;
38  virtual void ProcessResponse(uint statusCode, const std::vector<char>& response) override;
39 
40 private:
44  std::string mRoomId;
47  bool mTurnOn;
48 };
Definition: chaterrortypes.h:153
uint32_t mSlowModeDurationSeconds
Definition: chatroomupdatemodetask.h:46
ChatMode
Definition: chattypes.h:73
virtual void ProcessResponse(uint statusCode, const std::vector< char > &response) override
ChatMode mMode
Definition: chatroomupdatemodetask.h:45
void SetSlowModeDurationSeconds(uint32_t slowModeDurationSeconds)
Definition: chatroomupdatemodetask.h:30
Definition: httptask.h:19
virtual void FillHttpRequestInfo(HttpRequestInfo &requestInfo) override
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
Definition: chatroomupdatemodetask.h:23
std::string mRoomId
Definition: chatroomupdatemodetask.h:44
ChatRoomUpdateModeTask(const std::string &roomId, ChatMode mode, bool turnOn, const std::string &authToken, Callback &&callback)
ChatRoomInfo mResult
Definition: chatroomupdatemodetask.h:42
virtual const char * GetTaskName() const override
Definition: chatroomupdatemodetask.h:35
unsigned int uint
Definition: coretypes.h:18
std::function< void(ChatRoomUpdateModeTask *source, TTV_ErrorCode ec, UpdateRoomModesError &&error, ChatRoomInfo &&info)> Callback
Definition: chatroomupdatemodetask.h:26
bool mTurnOn
Definition: chatroomupdatemodetask.h:47
Definition: chattypes.h:816
Definition: httptask.h:22
Callback mCallback
Definition: chatroomupdatemodetask.h:41
UpdateRoomModesError mError
Definition: chatroomupdatemodetask.h:43
virtual void OnComplete() override