diff options
author | ray-pixar <pixar@chmail.ir> | 2015-09-10 19:19:15 +0430 |
---|---|---|
committer | ray-pixar <pixar@chmail.ir> | 2015-09-10 19:19:15 +0430 |
commit | 6bb048c991a52c0b974bd4a316579f0a622a70ec (patch) | |
tree | a46258645f3647431c60379335d217445a22ab81 /include/tgbot | |
parent | a4954856e680b85eebdcfa5dddf5c9baf8102077 (diff) |
Fix for send files using multipart/form
Diffstat (limited to 'include/tgbot')
-rw-r--r-- | include/tgbot/Api.h | 12 | ||||
-rw-r--r-- | include/tgbot/net/HttpReqArg.h | 9 | ||||
-rw-r--r-- | include/tgbot/types/InputFile.h | 9 |
3 files changed, 22 insertions, 8 deletions
diff --git a/include/tgbot/Api.h b/include/tgbot/Api.h index ebebfd7..1881015 100644 --- a/include/tgbot/Api.h +++ b/include/tgbot/Api.h @@ -46,7 +46,7 @@ class Bot; */ class Api { -friend Bot; +friend class Bot; public: Api(const std::string& token); @@ -97,7 +97,7 @@ public: * @param replyMarkup Optional. Additional interface options. An object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user. * @return On success, the sent message is returned. */ - Message::Ptr sendPhoto(int32_t chatId, const std::string& photo, const std::string& caption = "", int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; + Message::Ptr sendPhoto(int32_t chatId, const std::string& photoId, const std::string& caption = "", int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; /** * Use this method to send audio files, if you want Telegram clients to display the file as a playable voice message. For this to work, your audio must be in an .ogg file encoded with OPUS (other formats may be sent as Document). @@ -119,7 +119,7 @@ public: * @param replyMarkup Optional. Additional interface options. An object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user. * @return On success, the sent message is returned. */ - Message::Ptr sendAudio(int32_t chatId, const std::string& audio, int32_t duration = 0, int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; + Message::Ptr sendAudio(int32_t chatId, const std::string& audioId, int32_t duration = 0, int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; /** * Use this method to send general files. @@ -139,7 +139,7 @@ public: * @param replyMarkup Optional. Additional interface options. An object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user. * @return On success, the sent message is returned. */ - Message::Ptr sendDocument(int32_t chatId, const std::string& document, int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; + Message::Ptr sendDocument(int32_t chatId, const std::string& documentId, int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; /** * Use this method to send .webp stickers. @@ -159,7 +159,7 @@ public: * @param replyMarkup Optional. Additional interface options. A object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user. * @return On success, the sent message is returned. */ - Message::Ptr sendSticker(int32_t chatId, const std::string& sticker, int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; + Message::Ptr sendSticker(int32_t chatId, const std::string& stickerId, int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; /** * Use this method to send video files, Telegram clients support mp4 videos (other formats may be sent as Document). @@ -179,7 +179,7 @@ public: * @param replyMarkup Optional. Additional interface options. A object for a custom reply keyboard, instructions to hide keyboard or to force a reply from the user. * @return On success, the sent message is returned. */ - Message::Ptr sendVideo(int32_t chatId, const std::string& video, int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; + Message::Ptr sendVideo(int32_t chatId, const std::string& videoId, int32_t replyToMessageId = 0, const GenericReply::Ptr& replyMarkup = GenericReply::Ptr()) const; /** * Use this method to send point on the map. diff --git a/include/tgbot/net/HttpReqArg.h b/include/tgbot/net/HttpReqArg.h index 65f4f52..683c2b0 100644 --- a/include/tgbot/net/HttpReqArg.h +++ b/include/tgbot/net/HttpReqArg.h @@ -37,8 +37,8 @@ class HttpReqArg { public: template<typename T> - HttpReqArg(const std::string& name, const T& value, bool isFile = false, const std::string& mimeType = "text/plain") : - name(name), value(boost::lexical_cast<std::string>(value)), isFile(isFile), mimeType(mimeType) + HttpReqArg(const std::string& name, const T& value, bool isFile = false, const std::string& mimeType = "text/plain", std::string fileName = "") : + name(name), value(boost::lexical_cast<std::string>(value)), isFile(isFile), mimeType(mimeType), fileName(fileName) { } @@ -61,6 +61,11 @@ public: * Mime type of an argument value. This field makes sense only if isFile is true. */ std::string mimeType = "text/plain"; + + /** + * Should be set if an argument value hold some file contents + */ + std::string fileName; }; } diff --git a/include/tgbot/types/InputFile.h b/include/tgbot/types/InputFile.h index 825e677..1228885 100644 --- a/include/tgbot/types/InputFile.h +++ b/include/tgbot/types/InputFile.h @@ -36,6 +36,10 @@ namespace TgBot { class InputFile { public: + InputFile() { + fileName = "set_file_name.ext"; + } + typedef std::shared_ptr<InputFile> Ptr; /** @@ -47,6 +51,11 @@ public: * Mime type of a file. */ std::string mimeType; + + /** + * File name. + */ + std::string fileName; }; } |