yatbcpp  0.0.1
Yet another Telegram Bot CPP Library
Chat.h
Go to the documentation of this file.
1 #ifndef YATBCPP_CHAT_H
2 #define YATBCPP_CHAT_H
3 
4 #include <string>
5 #include <optional>
6 #include "chat_type.h"
7 
8 namespace yatbcpp{
10  class Chat {
11  public:
12  Chat(std::int64_t id,chat_type type);
13 
14  Chat(const Chat& chat);
15 
16  void setTitle(const std::optional<std::string> &title);
17 
18  void setUsername(const std::optional<std::string> &username);
19 
20  void setFirst_name(const std::optional<std::string> &first_name);
21 
22  void setLast_name(const std::optional<std::string> &last_name);
23 
25 
26  void setDescription(const std::optional<std::string> &description);
27 
28  void setInvite_link(const std::optional<std::string> &invite_link);
29 
30  std::int64_t getId() const;
31 
32  chat_type getType() const;
33 
34  const std::optional<std::string> &getTitle() const;
35 
36  const std::optional<std::string> &getUsername() const;
37 
38  const std::optional<std::string> &getFirst_name() const;
39 
40  const std::optional<std::string> &getLast_name() const;
41 
42  const std::optional<bool> &getAll_members_are_administrators() const;
43 
44  const std::optional<std::string> &getDescription() const;
45 
46  const std::optional<std::string> &getInvite_link() const;
47 
48 
49  private:
50  std::int64_t id;
52  std::optional<std::string> title;//optional
53  std::optional<std::string> username;//optional
54  std::optional<std::string> first_name;//optional
55  std::optional<std::string> last_name;//optional
56  std::optional<bool> all_members_are_administrators;//optional
57  //Only Returned in getChat
58  //ChatPhoto photo
59 
60  std::optional<std::string> description;
61  std::optional<std::string> invite_link;//Bot invasion incoming?
62 
63  };
64 
65 }
66 
67 
68 #endif //YATBCPP_CHAT_H
const std::optional< std::string > & getTitle() const
Definition: Chat.cc:76
std::optional< std::string > title
Definition: Chat.h:52
std::int64_t getId() const
Definition: Chat.cc:68
std::optional< bool > all_members_are_administrators
Definition: Chat.h:56
void setDescription(const std::optional< std::string > &description)
Definition: Chat.cc:56
std::optional< std::string > last_name
Definition: Chat.h:55
void setUsername(const std::optional< std::string > &username)
Definition: Chat.cc:40
const std::optional< std::string > & getDescription() const
Definition: Chat.cc:96
chat_type
Definition: chat_type.h:6
chat_type getType() const
Definition: Chat.cc:72
std::int64_t id
Definition: Chat.h:50
void setFirst_name(const std::optional< std::string > &first_name)
Definition: Chat.cc:44
void setAll_members_are_administrators(const std::optional< bool > &all_members_are_administrators)
Definition: Chat.cc:52
const std::optional< std::string > & getFirst_name() const
Definition: Chat.cc:84
Definition: Bot.h:27
void setInvite_link(const std::optional< std::string > &invite_link)
Definition: Chat.cc:60
Chat(std::int64_t id, chat_type type)
std::optional< std::string > description
Definition: Chat.h:60
const std::optional< std::string > & getUsername() const
Definition: Chat.cc:80
std::optional< std::string > username
Definition: Chat.h:53
std::optional< std::string > first_name
Definition: Chat.h:54
const std::optional< bool > & getAll_members_are_administrators() const
Definition: Chat.cc:92
void setLast_name(const std::optional< std::string > &last_name)
Definition: Chat.cc:48
chat_type type
Definition: Chat.h:51
void setTitle(const std::optional< std::string > &title)
Definition: Chat.cc:36
const std::optional< std::string > & getLast_name() const
Definition: Chat.cc:88
std::optional< std::string > invite_link
Definition: Chat.h:61
const std::optional< std::string > & getInvite_link() const
Definition: Chat.cc:100