yatbcpp  0.0.1
Yet another Telegram Bot CPP Library
All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros
sendDocument.h
Go to the documentation of this file.
1 //
2 // Created by norbert on 12.11.17.
3 //
4 
5 #ifndef YATBCPP_SENDDOCUMENT_H
6 #define YATBCPP_SENDDOCUMENT_H
7 
8 #include "../types/Chat.h"
9 #include "../types/Message.h"
10 #include "../types/ReplyKeyboardMarkup.h"
11 #include "../types/ReplyKeyboardMarkup.h"
12 #include "../types/ReplyKeyboardRemove.h"
13 #include "../types/ForceReply.h"
14 #include "telegram_methodJSON.h"
16 
17 namespace yatbcpp{
18  class sendDocument : public telegram_methodJSON<Message>, public telegram_methodMultipart<Message>{
19  public:
20 
21 
22  void add_to_post(struct curl_httppost **start, struct curl_httppost **end);
23 
24  Json::Value toJson();
25 
32  sendDocument(std::int64_t chat_id,std::string document);
39  sendDocument(std::string chat_id,std::string document);
46  sendDocument(Chat C, std::string Document);
47 
48  void setCaption(const std::optional<std::string> &caption);
49 
50  void setDisable_notification(const std::optional<bool> &disable_notification);
51 
52  void setReply_to_message_id(const std::optional<int> &reply_to_message_id);
53 
54  void setReplyMarkup(const ReplyKeyboardMarkup RKM);
55  void setReplyMarkup(const ReplyKeyboardRemove RKR);
56  void setReplyMarkup(const ForceReply FR);
57 
58  const std::string &getChat_id() const;
59 
60  const std::string &getDocument() const;
61 
62  const std::optional<std::string> &getCaption() const;
63 
64  const std::optional<bool> &getDisable_notification() const;
65 
66  const std::optional<std::int32_t> &getReply_to_message_id() const;
67 
68  const std::optional<ReplyMarkup> &getReply_markup() const;
69 
70 
71  private:
72  std::string chat_id;
73  std::string document;
74  std::optional<std::string> caption;
75  std::optional<bool> disable_notification;
76  std::optional<std::int32_t> reply_to_message_id;
77  std::optional<ReplyMarkup> reply_markup;
78  };
79 }
80 
81 #endif //YATBCPP_SENDDOCUMENT_H
const std::optional< bool > & getDisable_notification() const
void setCaption(const std::optional< std::string > &caption)
Definition: sendDocument.cc:79
std::optional< bool > disable_notification
Definition: sendDocument.h:75
std::optional< std::string > caption
Definition: sendDocument.h:74
void add_to_post(struct curl_httppost **start, struct curl_httppost **end)
Definition: sendDocument.cc:58
std::string document
Definition: sendDocument.h:73
const std::optional< std::int32_t > & getReply_to_message_id() const
Json::Value toJson()
Definition: sendDocument.cc:39
const std::optional< ReplyMarkup > & getReply_markup() const
Definition: Bot.h:27
const std::string & getDocument() const
void setReplyMarkup(const ReplyKeyboardMarkup RKM)
Definition: sendDocument.cc:96
const std::optional< std::string > & getCaption() const
const std::string & getChat_id() const
sendDocument(std::int64_t chat_id, std::string document)
void setDisable_notification(const std::optional< bool > &disable_notification)
Definition: sendDocument.cc:84
void setReply_to_message_id(const std::optional< int > &reply_to_message_id)
Definition: sendDocument.cc:88
std::optional< ReplyMarkup > reply_markup
Definition: sendDocument.h:77
std::optional< std::int32_t > reply_to_message_id
Definition: sendDocument.h:76