telegram-bot-openapi 7.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (642) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +419 -0
  4. data/Rakefile +10 -0
  5. data/docs/Animation.md +34 -0
  6. data/docs/AnswerWebAppQuery200Response.md +20 -0
  7. data/docs/Audio.md +34 -0
  8. data/docs/Birthdate.md +22 -0
  9. data/docs/BotCommand.md +20 -0
  10. data/docs/BotCommandScopeAllChatAdministrators.md +18 -0
  11. data/docs/BotCommandScopeAllGroupChats.md +18 -0
  12. data/docs/BotCommandScopeAllPrivateChats.md +18 -0
  13. data/docs/BotCommandScopeChat.md +20 -0
  14. data/docs/BotCommandScopeChatAdministrators.md +20 -0
  15. data/docs/BotCommandScopeChatMember.md +22 -0
  16. data/docs/BotCommandScopeDefault.md +18 -0
  17. data/docs/BotDescription.md +18 -0
  18. data/docs/BotName.md +18 -0
  19. data/docs/BotShortDescription.md +18 -0
  20. data/docs/BusinessConnection.md +28 -0
  21. data/docs/BusinessIntro.md +22 -0
  22. data/docs/BusinessLocation.md +20 -0
  23. data/docs/BusinessMessagesDeleted.md +22 -0
  24. data/docs/BusinessOpeningHours.md +20 -0
  25. data/docs/BusinessOpeningHoursInterval.md +20 -0
  26. data/docs/CallbackQuery.md +30 -0
  27. data/docs/Chat.md +100 -0
  28. data/docs/ChatAdministratorRights.md +46 -0
  29. data/docs/ChatBoost.md +24 -0
  30. data/docs/ChatBoostAdded.md +18 -0
  31. data/docs/ChatBoostRemoved.md +24 -0
  32. data/docs/ChatBoostSourceGiftCode.md +20 -0
  33. data/docs/ChatBoostSourceGiveaway.md +24 -0
  34. data/docs/ChatBoostSourcePremium.md +20 -0
  35. data/docs/ChatBoostUpdated.md +20 -0
  36. data/docs/ChatInviteLink.md +34 -0
  37. data/docs/ChatJoinRequest.md +28 -0
  38. data/docs/ChatLocation.md +20 -0
  39. data/docs/ChatMemberAdministrator.md +54 -0
  40. data/docs/ChatMemberBanned.md +22 -0
  41. data/docs/ChatMemberLeft.md +20 -0
  42. data/docs/ChatMemberMember.md +20 -0
  43. data/docs/ChatMemberOwner.md +24 -0
  44. data/docs/ChatMemberRestricted.md +52 -0
  45. data/docs/ChatMemberUpdated.md +30 -0
  46. data/docs/ChatPermissions.md +44 -0
  47. data/docs/ChatPhoto.md +24 -0
  48. data/docs/ChatShared.md +26 -0
  49. data/docs/ChosenInlineResult.md +26 -0
  50. data/docs/Contact.md +26 -0
  51. data/docs/CopyMessage200Response.md +20 -0
  52. data/docs/CreateChatInviteLink200Response.md +20 -0
  53. data/docs/CreateForumTopic200Response.md +20 -0
  54. data/docs/DefaultApi.md +8843 -0
  55. data/docs/Dice.md +20 -0
  56. data/docs/Document.md +28 -0
  57. data/docs/EditMessageText200Response.md +20 -0
  58. data/docs/EditMessageText200ResponseResultValue.md +49 -0
  59. data/docs/EncryptedCredentials.md +22 -0
  60. data/docs/EncryptedPassportElement.md +36 -0
  61. data/docs/ExportChatInviteLink200Response.md +20 -0
  62. data/docs/ExternalReplyInfo.md +62 -0
  63. data/docs/File.md +24 -0
  64. data/docs/ForceReply.md +22 -0
  65. data/docs/ForumTopic.md +24 -0
  66. data/docs/ForumTopicCreated.md +22 -0
  67. data/docs/ForumTopicEdited.md +20 -0
  68. data/docs/ForwardMessages200Response.md +20 -0
  69. data/docs/Game.md +28 -0
  70. data/docs/GameHighScore.md +22 -0
  71. data/docs/GetBusinessConnection200Response.md +20 -0
  72. data/docs/GetChat200Response.md +20 -0
  73. data/docs/GetChatAdministrators200Response.md +20 -0
  74. data/docs/GetChatMember200Response.md +20 -0
  75. data/docs/GetChatMemberCount200Response.md +20 -0
  76. data/docs/GetChatMenuButton200Response.md +20 -0
  77. data/docs/GetFile200Response.md +20 -0
  78. data/docs/GetForumTopicIconStickers200Response.md +20 -0
  79. data/docs/GetGameHighScores200Response.md +20 -0
  80. data/docs/GetMe200Response.md +20 -0
  81. data/docs/GetMyCommands200Response.md +20 -0
  82. data/docs/GetMyDefaultAdministratorRights200Response.md +20 -0
  83. data/docs/GetMyDescription200Response.md +20 -0
  84. data/docs/GetMyName200Response.md +20 -0
  85. data/docs/GetMyShortDescription200Response.md +20 -0
  86. data/docs/GetStickerSet200Response.md +20 -0
  87. data/docs/GetUpdates200Response.md +20 -0
  88. data/docs/GetUpdates4XXResponse.md +22 -0
  89. data/docs/GetUserChatBoosts200Response.md +20 -0
  90. data/docs/GetUserProfilePhotos200Response.md +20 -0
  91. data/docs/GetWebhookInfo200Response.md +20 -0
  92. data/docs/Giveaway.md +32 -0
  93. data/docs/GiveawayCompleted.md +22 -0
  94. data/docs/GiveawayWinners.md +38 -0
  95. data/docs/InaccessibleMessage.md +22 -0
  96. data/docs/InlineKeyboardButton.md +36 -0
  97. data/docs/InlineKeyboardMarkup.md +18 -0
  98. data/docs/InlineQuery.md +28 -0
  99. data/docs/InlineQueryResultArticle.md +38 -0
  100. data/docs/InlineQueryResultAudio.md +38 -0
  101. data/docs/InlineQueryResultCachedAudio.md +32 -0
  102. data/docs/InlineQueryResultCachedDocument.md +36 -0
  103. data/docs/InlineQueryResultCachedGif.md +34 -0
  104. data/docs/InlineQueryResultCachedMpeg4Gif.md +34 -0
  105. data/docs/InlineQueryResultCachedPhoto.md +36 -0
  106. data/docs/InlineQueryResultCachedSticker.md +26 -0
  107. data/docs/InlineQueryResultCachedVideo.md +36 -0
  108. data/docs/InlineQueryResultCachedVoice.md +34 -0
  109. data/docs/InlineQueryResultContact.md +38 -0
  110. data/docs/InlineQueryResultDocument.md +44 -0
  111. data/docs/InlineQueryResultGame.md +24 -0
  112. data/docs/InlineQueryResultGif.md +44 -0
  113. data/docs/InlineQueryResultLocation.md +44 -0
  114. data/docs/InlineQueryResultMpeg4Gif.md +44 -0
  115. data/docs/InlineQueryResultPhoto.md +42 -0
  116. data/docs/InlineQueryResultVenue.md +46 -0
  117. data/docs/InlineQueryResultVideo.md +46 -0
  118. data/docs/InlineQueryResultVoice.md +36 -0
  119. data/docs/InlineQueryResultsButton.md +22 -0
  120. data/docs/InputContactMessageContent.md +24 -0
  121. data/docs/InputInvoiceMessageContent.md +56 -0
  122. data/docs/InputLocationMessageContent.md +28 -0
  123. data/docs/InputMediaAnimation.md +36 -0
  124. data/docs/InputMediaAudio.md +34 -0
  125. data/docs/InputMediaDocument.md +30 -0
  126. data/docs/InputMediaPhoto.md +28 -0
  127. data/docs/InputMediaVideo.md +38 -0
  128. data/docs/InputSticker.md +26 -0
  129. data/docs/InputTextMessageContent.md +24 -0
  130. data/docs/InputVenueMessageContent.md +32 -0
  131. data/docs/Invoice.md +26 -0
  132. data/docs/KeyboardButton.md +30 -0
  133. data/docs/KeyboardButtonPollType.md +18 -0
  134. data/docs/KeyboardButtonRequestChat.md +38 -0
  135. data/docs/KeyboardButtonRequestUsers.md +30 -0
  136. data/docs/LabeledPrice.md +20 -0
  137. data/docs/LinkPreviewOptions.md +26 -0
  138. data/docs/Location.md +28 -0
  139. data/docs/LoginUrl.md +24 -0
  140. data/docs/MaskPosition.md +24 -0
  141. data/docs/MenuButtonCommands.md +18 -0
  142. data/docs/MenuButtonDefault.md +18 -0
  143. data/docs/MenuButtonWebApp.md +22 -0
  144. data/docs/Message.md +176 -0
  145. data/docs/MessageAutoDeleteTimerChanged.md +18 -0
  146. data/docs/MessageEntity.md +30 -0
  147. data/docs/MessageId.md +18 -0
  148. data/docs/MessageOriginChannel.md +26 -0
  149. data/docs/MessageOriginChat.md +24 -0
  150. data/docs/MessageOriginHiddenUser.md +22 -0
  151. data/docs/MessageOriginUser.md +22 -0
  152. data/docs/MessageReactionCountUpdated.md +24 -0
  153. data/docs/MessageReactionUpdated.md +30 -0
  154. data/docs/OrderInfo.md +24 -0
  155. data/docs/PassportData.md +20 -0
  156. data/docs/PassportElementErrorDataField.md +26 -0
  157. data/docs/PassportElementErrorFile.md +24 -0
  158. data/docs/PassportElementErrorFiles.md +24 -0
  159. data/docs/PassportElementErrorFrontSide.md +24 -0
  160. data/docs/PassportElementErrorReverseSide.md +24 -0
  161. data/docs/PassportElementErrorSelfie.md +24 -0
  162. data/docs/PassportElementErrorTranslationFile.md +24 -0
  163. data/docs/PassportElementErrorTranslationFiles.md +24 -0
  164. data/docs/PassportElementErrorUnspecified.md +24 -0
  165. data/docs/PassportFile.md +24 -0
  166. data/docs/PhotoSize.md +26 -0
  167. data/docs/Poll.md +42 -0
  168. data/docs/PollAnswer.md +24 -0
  169. data/docs/PollOption.md +20 -0
  170. data/docs/PreCheckoutQuery.md +30 -0
  171. data/docs/ProximityAlertTriggered.md +22 -0
  172. data/docs/ReactionCount.md +20 -0
  173. data/docs/ReactionTypeCustomEmoji.md +20 -0
  174. data/docs/ReactionTypeEmoji.md +20 -0
  175. data/docs/ReplyKeyboardMarkup.md +28 -0
  176. data/docs/ReplyKeyboardRemove.md +20 -0
  177. data/docs/ReplyParameters.md +30 -0
  178. data/docs/ResponseParameters.md +20 -0
  179. data/docs/SendMediaGroup200Response.md +20 -0
  180. data/docs/SendMediaGroupMediaParameterValue.md +53 -0
  181. data/docs/SendMessage200Response.md +20 -0
  182. data/docs/SendMessageChatIdParameterValue.md +49 -0
  183. data/docs/SendMessageReplyMarkupParameterValue.md +53 -0
  184. data/docs/SendPhotoPhotoParameterValue.md +49 -0
  185. data/docs/SentWebAppMessage.md +18 -0
  186. data/docs/SetWebhook200Response.md +20 -0
  187. data/docs/SharedUser.md +26 -0
  188. data/docs/ShippingAddress.md +28 -0
  189. data/docs/ShippingOption.md +22 -0
  190. data/docs/ShippingQuery.md +24 -0
  191. data/docs/Sticker.md +46 -0
  192. data/docs/StickerSet.md +26 -0
  193. data/docs/StopPoll200Response.md +20 -0
  194. data/docs/Story.md +20 -0
  195. data/docs/SuccessfulPayment.md +30 -0
  196. data/docs/SwitchInlineQueryChosenChat.md +26 -0
  197. data/docs/TextQuote.md +24 -0
  198. data/docs/Update.md +62 -0
  199. data/docs/User.md +40 -0
  200. data/docs/UserChatBoosts.md +18 -0
  201. data/docs/UserProfilePhotos.md +20 -0
  202. data/docs/UsersShared.md +20 -0
  203. data/docs/Venue.md +30 -0
  204. data/docs/Video.md +34 -0
  205. data/docs/VideoChatEnded.md +18 -0
  206. data/docs/VideoChatParticipantsInvited.md +18 -0
  207. data/docs/VideoChatScheduled.md +18 -0
  208. data/docs/VideoNote.md +28 -0
  209. data/docs/Voice.md +26 -0
  210. data/docs/WebAppData.md +20 -0
  211. data/docs/WebAppInfo.md +18 -0
  212. data/docs/WebhookInfo.md +34 -0
  213. data/docs/WriteAccessAllowed.md +22 -0
  214. data/git_push.sh +57 -0
  215. data/lib/telegram-bot/api/default_api.rb +9305 -0
  216. data/lib/telegram-bot/api_client.rb +393 -0
  217. data/lib/telegram-bot/api_error.rb +58 -0
  218. data/lib/telegram-bot/configuration.rb +307 -0
  219. data/lib/telegram-bot/models/animation.rb +331 -0
  220. data/lib/telegram-bot/models/answer_web_app_query200_response.rb +223 -0
  221. data/lib/telegram-bot/models/audio.rb +317 -0
  222. data/lib/telegram-bot/models/birthdate.rb +250 -0
  223. data/lib/telegram-bot/models/bot_command.rb +240 -0
  224. data/lib/telegram-bot/models/bot_command_scope_all_chat_administrators.rb +223 -0
  225. data/lib/telegram-bot/models/bot_command_scope_all_group_chats.rb +223 -0
  226. data/lib/telegram-bot/models/bot_command_scope_all_private_chats.rb +223 -0
  227. data/lib/telegram-bot/models/bot_command_scope_chat.rb +242 -0
  228. data/lib/telegram-bot/models/bot_command_scope_chat_administrators.rb +242 -0
  229. data/lib/telegram-bot/models/bot_command_scope_chat_member.rb +259 -0
  230. data/lib/telegram-bot/models/bot_command_scope_default.rb +223 -0
  231. data/lib/telegram-bot/models/bot_description.rb +223 -0
  232. data/lib/telegram-bot/models/bot_name.rb +223 -0
  233. data/lib/telegram-bot/models/bot_short_description.rb +223 -0
  234. data/lib/telegram-bot/models/business_connection.rb +308 -0
  235. data/lib/telegram-bot/models/business_intro.rb +236 -0
  236. data/lib/telegram-bot/models/business_location.rb +233 -0
  237. data/lib/telegram-bot/models/business_messages_deleted.rb +259 -0
  238. data/lib/telegram-bot/models/business_opening_hours.rb +242 -0
  239. data/lib/telegram-bot/models/business_opening_hours_interval.rb +240 -0
  240. data/lib/telegram-bot/models/callback_query.rb +297 -0
  241. data/lib/telegram-bot/models/chat.rb +644 -0
  242. data/lib/telegram-bot/models/chat_administrator_rights.rb +433 -0
  243. data/lib/telegram-bot/models/chat_boost.rb +274 -0
  244. data/lib/telegram-bot/models/chat_boost_added.rb +223 -0
  245. data/lib/telegram-bot/models/chat_boost_removed.rb +274 -0
  246. data/lib/telegram-bot/models/chat_boost_source_gift_code.rb +240 -0
  247. data/lib/telegram-bot/models/chat_boost_source_giveaway.rb +260 -0
  248. data/lib/telegram-bot/models/chat_boost_source_premium.rb +240 -0
  249. data/lib/telegram-bot/models/chat_boost_updated.rb +240 -0
  250. data/lib/telegram-bot/models/chat_invite_link.rb +331 -0
  251. data/lib/telegram-bot/models/chat_join_request.rb +294 -0
  252. data/lib/telegram-bot/models/chat_location.rb +240 -0
  253. data/lib/telegram-bot/models/chat_member_administrator.rb +494 -0
  254. data/lib/telegram-bot/models/chat_member_banned.rb +257 -0
  255. data/lib/telegram-bot/models/chat_member_left.rb +240 -0
  256. data/lib/telegram-bot/models/chat_member_member.rb +240 -0
  257. data/lib/telegram-bot/models/chat_member_owner.rb +267 -0
  258. data/lib/telegram-bot/models/chat_member_restricted.rb +512 -0
  259. data/lib/telegram-bot/models/chat_member_updated.rb +311 -0
  260. data/lib/telegram-bot/models/chat_permissions.rb +346 -0
  261. data/lib/telegram-bot/models/chat_photo.rb +274 -0
  262. data/lib/telegram-bot/models/chat_shared.rb +272 -0
  263. data/lib/telegram-bot/models/chosen_inline_result.rb +277 -0
  264. data/lib/telegram-bot/models/contact.rb +270 -0
  265. data/lib/telegram-bot/models/copy_message200_response.rb +223 -0
  266. data/lib/telegram-bot/models/create_chat_invite_link200_response.rb +223 -0
  267. data/lib/telegram-bot/models/create_forum_topic200_response.rb +223 -0
  268. data/lib/telegram-bot/models/dice.rb +240 -0
  269. data/lib/telegram-bot/models/document.rb +280 -0
  270. data/lib/telegram-bot/models/edit_message_text200_response.rb +225 -0
  271. data/lib/telegram-bot/models/edit_message_text200_response_result_value.rb +105 -0
  272. data/lib/telegram-bot/models/encrypted_credentials.rb +257 -0
  273. data/lib/telegram-bot/models/encrypted_passport_element.rb +324 -0
  274. data/lib/telegram-bot/models/export_chat_invite_link200_response.rb +223 -0
  275. data/lib/telegram-bot/models/external_reply_info.rb +445 -0
  276. data/lib/telegram-bot/models/file.rb +260 -0
  277. data/lib/telegram-bot/models/force_reply.rb +243 -0
  278. data/lib/telegram-bot/models/forum_topic.rb +267 -0
  279. data/lib/telegram-bot/models/forum_topic_created.rb +250 -0
  280. data/lib/telegram-bot/models/forum_topic_edited.rb +226 -0
  281. data/lib/telegram-bot/models/forward_messages200_response.rb +225 -0
  282. data/lib/telegram-bot/models/game.rb +291 -0
  283. data/lib/telegram-bot/models/game_high_score.rb +257 -0
  284. data/lib/telegram-bot/models/get_business_connection200_response.rb +223 -0
  285. data/lib/telegram-bot/models/get_chat200_response.rb +223 -0
  286. data/lib/telegram-bot/models/get_chat_administrators200_response.rb +225 -0
  287. data/lib/telegram-bot/models/get_chat_member200_response.rb +224 -0
  288. data/lib/telegram-bot/models/get_chat_member_count200_response.rb +223 -0
  289. data/lib/telegram-bot/models/get_chat_menu_button200_response.rb +224 -0
  290. data/lib/telegram-bot/models/get_file200_response.rb +223 -0
  291. data/lib/telegram-bot/models/get_forum_topic_icon_stickers200_response.rb +225 -0
  292. data/lib/telegram-bot/models/get_game_high_scores200_response.rb +225 -0
  293. data/lib/telegram-bot/models/get_me200_response.rb +223 -0
  294. data/lib/telegram-bot/models/get_my_commands200_response.rb +225 -0
  295. data/lib/telegram-bot/models/get_my_default_administrator_rights200_response.rb +223 -0
  296. data/lib/telegram-bot/models/get_my_description200_response.rb +223 -0
  297. data/lib/telegram-bot/models/get_my_name200_response.rb +223 -0
  298. data/lib/telegram-bot/models/get_my_short_description200_response.rb +223 -0
  299. data/lib/telegram-bot/models/get_sticker_set200_response.rb +223 -0
  300. data/lib/telegram-bot/models/get_updates200_response.rb +225 -0
  301. data/lib/telegram-bot/models/get_updates4_xx_response.rb +232 -0
  302. data/lib/telegram-bot/models/get_user_chat_boosts200_response.rb +223 -0
  303. data/lib/telegram-bot/models/get_user_profile_photos200_response.rb +223 -0
  304. data/lib/telegram-bot/models/get_webhook_info200_response.rb +223 -0
  305. data/lib/telegram-bot/models/giveaway.rb +311 -0
  306. data/lib/telegram-bot/models/giveaway_completed.rb +243 -0
  307. data/lib/telegram-bot/models/giveaway_winners.rb +353 -0
  308. data/lib/telegram-bot/models/inaccessible_message.rb +257 -0
  309. data/lib/telegram-bot/models/inline_keyboard_button.rb +313 -0
  310. data/lib/telegram-bot/models/inline_keyboard_markup.rb +225 -0
  311. data/lib/telegram-bot/models/inline_query.rb +294 -0
  312. data/lib/telegram-bot/models/inline_query_result_article.rb +344 -0
  313. data/lib/telegram-bot/models/inline_query_result_audio.rb +346 -0
  314. data/lib/telegram-bot/models/inline_query_result_cached_audio.rb +309 -0
  315. data/lib/telegram-bot/models/inline_query_result_cached_document.rb +336 -0
  316. data/lib/telegram-bot/models/inline_query_result_cached_gif.rb +319 -0
  317. data/lib/telegram-bot/models/inline_query_result_cached_mpeg4_gif.rb +319 -0
  318. data/lib/telegram-bot/models/inline_query_result_cached_photo.rb +329 -0
  319. data/lib/telegram-bot/models/inline_query_result_cached_sticker.rb +277 -0
  320. data/lib/telegram-bot/models/inline_query_result_cached_video.rb +336 -0
  321. data/lib/telegram-bot/models/inline_query_result_cached_voice.rb +326 -0
  322. data/lib/telegram-bot/models/inline_query_result_contact.rb +344 -0
  323. data/lib/telegram-bot/models/inline_query_result_document.rb +383 -0
  324. data/lib/telegram-bot/models/inline_query_result_game.rb +267 -0
  325. data/lib/telegram-bot/models/inline_query_result_gif.rb +376 -0
  326. data/lib/telegram-bot/models/inline_query_result_location.rb +381 -0
  327. data/lib/telegram-bot/models/inline_query_result_mpeg4_gif.rb +376 -0
  328. data/lib/telegram-bot/models/inline_query_result_photo.rb +366 -0
  329. data/lib/telegram-bot/models/inline_query_result_venue.rb +398 -0
  330. data/lib/telegram-bot/models/inline_query_result_video.rb +400 -0
  331. data/lib/telegram-bot/models/inline_query_result_voice.rb +336 -0
  332. data/lib/telegram-bot/models/inline_query_results_button.rb +243 -0
  333. data/lib/telegram-bot/models/input_contact_message_content.rb +260 -0
  334. data/lib/telegram-bot/models/input_invoice_message_content.rb +452 -0
  335. data/lib/telegram-bot/models/input_location_message_content.rb +280 -0
  336. data/lib/telegram-bot/models/input_media_animation.rb +324 -0
  337. data/lib/telegram-bot/models/input_media_audio.rb +314 -0
  338. data/lib/telegram-bot/models/input_media_document.rb +294 -0
  339. data/lib/telegram-bot/models/input_media_photo.rb +282 -0
  340. data/lib/telegram-bot/models/input_media_video.rb +334 -0
  341. data/lib/telegram-bot/models/input_sticker.rb +283 -0
  342. data/lib/telegram-bot/models/input_text_message_content.rb +255 -0
  343. data/lib/telegram-bot/models/input_venue_message_content.rb +314 -0
  344. data/lib/telegram-bot/models/invoice.rb +291 -0
  345. data/lib/telegram-bot/models/keyboard_button.rb +283 -0
  346. data/lib/telegram-bot/models/keyboard_button_poll_type.rb +216 -0
  347. data/lib/telegram-bot/models/keyboard_button_request_chat.rb +330 -0
  348. data/lib/telegram-bot/models/keyboard_button_request_users.rb +283 -0
  349. data/lib/telegram-bot/models/labeled_price.rb +240 -0
  350. data/lib/telegram-bot/models/link_preview_options.rb +256 -0
  351. data/lib/telegram-bot/models/location.rb +280 -0
  352. data/lib/telegram-bot/models/login_url.rb +253 -0
  353. data/lib/telegram-bot/models/mask_position.rb +274 -0
  354. data/lib/telegram-bot/models/menu_button_commands.rb +223 -0
  355. data/lib/telegram-bot/models/menu_button_default.rb +223 -0
  356. data/lib/telegram-bot/models/menu_button_web_app.rb +257 -0
  357. data/lib/telegram-bot/models/message.rb +1037 -0
  358. data/lib/telegram-bot/models/message_auto_delete_timer_changed.rb +223 -0
  359. data/lib/telegram-bot/models/message_entity.rb +297 -0
  360. data/lib/telegram-bot/models/message_id.rb +223 -0
  361. data/lib/telegram-bot/models/message_origin_channel.rb +284 -0
  362. data/lib/telegram-bot/models/message_origin_chat.rb +267 -0
  363. data/lib/telegram-bot/models/message_origin_hidden_user.rb +257 -0
  364. data/lib/telegram-bot/models/message_origin_user.rb +257 -0
  365. data/lib/telegram-bot/models/message_reaction_count_updated.rb +276 -0
  366. data/lib/telegram-bot/models/message_reaction_updated.rb +315 -0
  367. data/lib/telegram-bot/models/order_info.rb +246 -0
  368. data/lib/telegram-bot/models/passport_data.rb +242 -0
  369. data/lib/telegram-bot/models/passport_element_error_data_field.rb +291 -0
  370. data/lib/telegram-bot/models/passport_element_error_file.rb +274 -0
  371. data/lib/telegram-bot/models/passport_element_error_files.rb +276 -0
  372. data/lib/telegram-bot/models/passport_element_error_front_side.rb +274 -0
  373. data/lib/telegram-bot/models/passport_element_error_reverse_side.rb +274 -0
  374. data/lib/telegram-bot/models/passport_element_error_selfie.rb +274 -0
  375. data/lib/telegram-bot/models/passport_element_error_translation_file.rb +274 -0
  376. data/lib/telegram-bot/models/passport_element_error_translation_files.rb +276 -0
  377. data/lib/telegram-bot/models/passport_element_error_unspecified.rb +274 -0
  378. data/lib/telegram-bot/models/passport_file.rb +274 -0
  379. data/lib/telegram-bot/models/photo_size.rb +284 -0
  380. data/lib/telegram-bot/models/poll.rb +396 -0
  381. data/lib/telegram-bot/models/poll_answer.rb +262 -0
  382. data/lib/telegram-bot/models/poll_option.rb +240 -0
  383. data/lib/telegram-bot/models/pre_checkout_query.rb +311 -0
  384. data/lib/telegram-bot/models/proximity_alert_triggered.rb +257 -0
  385. data/lib/telegram-bot/models/reaction_count.rb +240 -0
  386. data/lib/telegram-bot/models/reaction_type_custom_emoji.rb +240 -0
  387. data/lib/telegram-bot/models/reaction_type_emoji.rb +240 -0
  388. data/lib/telegram-bot/models/reply_keyboard_markup.rb +275 -0
  389. data/lib/telegram-bot/models/reply_keyboard_remove.rb +233 -0
  390. data/lib/telegram-bot/models/reply_parameters.rb +287 -0
  391. data/lib/telegram-bot/models/response_parameters.rb +226 -0
  392. data/lib/telegram-bot/models/send_media_group200_response.rb +225 -0
  393. data/lib/telegram-bot/models/send_media_group_media_parameter_value.rb +107 -0
  394. data/lib/telegram-bot/models/send_message200_response.rb +223 -0
  395. data/lib/telegram-bot/models/send_message_chat_id_parameter_value.rb +105 -0
  396. data/lib/telegram-bot/models/send_message_reply_markup_parameter_value.rb +107 -0
  397. data/lib/telegram-bot/models/send_photo_photo_parameter_value.rb +105 -0
  398. data/lib/telegram-bot/models/sent_web_app_message.rb +216 -0
  399. data/lib/telegram-bot/models/set_webhook200_response.rb +223 -0
  400. data/lib/telegram-bot/models/shared_user.rb +265 -0
  401. data/lib/telegram-bot/models/shipping_address.rb +308 -0
  402. data/lib/telegram-bot/models/shipping_option.rb +259 -0
  403. data/lib/telegram-bot/models/shipping_query.rb +274 -0
  404. data/lib/telegram-bot/models/sticker.rb +405 -0
  405. data/lib/telegram-bot/models/sticker_set.rb +286 -0
  406. data/lib/telegram-bot/models/stop_poll200_response.rb +223 -0
  407. data/lib/telegram-bot/models/story.rb +240 -0
  408. data/lib/telegram-bot/models/successful_payment.rb +311 -0
  409. data/lib/telegram-bot/models/switch_inline_query_chosen_chat.rb +256 -0
  410. data/lib/telegram-bot/models/text_quote.rb +262 -0
  411. data/lib/telegram-bot/models/update.rb +443 -0
  412. data/lib/telegram-bot/models/user.rb +347 -0
  413. data/lib/telegram-bot/models/user_chat_boosts.rb +225 -0
  414. data/lib/telegram-bot/models/user_profile_photos.rb +242 -0
  415. data/lib/telegram-bot/models/users_shared.rb +242 -0
  416. data/lib/telegram-bot/models/venue.rb +297 -0
  417. data/lib/telegram-bot/models/video.rb +331 -0
  418. data/lib/telegram-bot/models/video_chat_ended.rb +223 -0
  419. data/lib/telegram-bot/models/video_chat_participants_invited.rb +225 -0
  420. data/lib/telegram-bot/models/video_chat_scheduled.rb +223 -0
  421. data/lib/telegram-bot/models/video_note.rb +294 -0
  422. data/lib/telegram-bot/models/voice.rb +277 -0
  423. data/lib/telegram-bot/models/web_app_data.rb +240 -0
  424. data/lib/telegram-bot/models/web_app_info.rb +223 -0
  425. data/lib/telegram-bot/models/webhook_info.rb +319 -0
  426. data/lib/telegram-bot/models/write_access_allowed.rb +236 -0
  427. data/lib/telegram-bot/version.rb +15 -0
  428. data/lib/telegram-bot.rb +248 -0
  429. data/spec/api/default_api_spec.rb +1904 -0
  430. data/spec/models/animation_spec.rb +84 -0
  431. data/spec/models/answer_web_app_query200_response_spec.rb +42 -0
  432. data/spec/models/audio_spec.rb +84 -0
  433. data/spec/models/birthdate_spec.rb +48 -0
  434. data/spec/models/bot_command_scope_all_chat_administrators_spec.rb +36 -0
  435. data/spec/models/bot_command_scope_all_group_chats_spec.rb +36 -0
  436. data/spec/models/bot_command_scope_all_private_chats_spec.rb +36 -0
  437. data/spec/models/bot_command_scope_chat_administrators_spec.rb +42 -0
  438. data/spec/models/bot_command_scope_chat_member_spec.rb +48 -0
  439. data/spec/models/bot_command_scope_chat_spec.rb +42 -0
  440. data/spec/models/bot_command_scope_default_spec.rb +36 -0
  441. data/spec/models/bot_command_spec.rb +42 -0
  442. data/spec/models/bot_description_spec.rb +36 -0
  443. data/spec/models/bot_name_spec.rb +36 -0
  444. data/spec/models/bot_short_description_spec.rb +36 -0
  445. data/spec/models/business_connection_spec.rb +66 -0
  446. data/spec/models/business_intro_spec.rb +48 -0
  447. data/spec/models/business_location_spec.rb +42 -0
  448. data/spec/models/business_messages_deleted_spec.rb +48 -0
  449. data/spec/models/business_opening_hours_interval_spec.rb +42 -0
  450. data/spec/models/business_opening_hours_spec.rb +42 -0
  451. data/spec/models/callback_query_spec.rb +72 -0
  452. data/spec/models/chat_administrator_rights_spec.rb +120 -0
  453. data/spec/models/chat_boost_added_spec.rb +36 -0
  454. data/spec/models/chat_boost_removed_spec.rb +54 -0
  455. data/spec/models/chat_boost_source_gift_code_spec.rb +42 -0
  456. data/spec/models/chat_boost_source_giveaway_spec.rb +54 -0
  457. data/spec/models/chat_boost_source_premium_spec.rb +42 -0
  458. data/spec/models/chat_boost_spec.rb +54 -0
  459. data/spec/models/chat_boost_updated_spec.rb +42 -0
  460. data/spec/models/chat_invite_link_spec.rb +84 -0
  461. data/spec/models/chat_join_request_spec.rb +66 -0
  462. data/spec/models/chat_location_spec.rb +42 -0
  463. data/spec/models/chat_member_administrator_spec.rb +144 -0
  464. data/spec/models/chat_member_banned_spec.rb +48 -0
  465. data/spec/models/chat_member_left_spec.rb +42 -0
  466. data/spec/models/chat_member_member_spec.rb +42 -0
  467. data/spec/models/chat_member_owner_spec.rb +54 -0
  468. data/spec/models/chat_member_restricted_spec.rb +138 -0
  469. data/spec/models/chat_member_updated_spec.rb +72 -0
  470. data/spec/models/chat_permissions_spec.rb +114 -0
  471. data/spec/models/chat_photo_spec.rb +54 -0
  472. data/spec/models/chat_shared_spec.rb +60 -0
  473. data/spec/models/chat_spec.rb +282 -0
  474. data/spec/models/chosen_inline_result_spec.rb +60 -0
  475. data/spec/models/contact_spec.rb +60 -0
  476. data/spec/models/copy_message200_response_spec.rb +42 -0
  477. data/spec/models/create_chat_invite_link200_response_spec.rb +42 -0
  478. data/spec/models/create_forum_topic200_response_spec.rb +42 -0
  479. data/spec/models/dice_spec.rb +42 -0
  480. data/spec/models/document_spec.rb +66 -0
  481. data/spec/models/edit_message_text200_response_result_value_spec.rb +32 -0
  482. data/spec/models/edit_message_text200_response_spec.rb +42 -0
  483. data/spec/models/encrypted_credentials_spec.rb +48 -0
  484. data/spec/models/encrypted_passport_element_spec.rb +90 -0
  485. data/spec/models/export_chat_invite_link200_response_spec.rb +42 -0
  486. data/spec/models/external_reply_info_spec.rb +168 -0
  487. data/spec/models/file_spec.rb +54 -0
  488. data/spec/models/force_reply_spec.rb +48 -0
  489. data/spec/models/forum_topic_created_spec.rb +48 -0
  490. data/spec/models/forum_topic_edited_spec.rb +42 -0
  491. data/spec/models/forum_topic_spec.rb +54 -0
  492. data/spec/models/forward_messages200_response_spec.rb +42 -0
  493. data/spec/models/game_high_score_spec.rb +48 -0
  494. data/spec/models/game_spec.rb +66 -0
  495. data/spec/models/get_business_connection200_response_spec.rb +42 -0
  496. data/spec/models/get_chat200_response_spec.rb +42 -0
  497. data/spec/models/get_chat_administrators200_response_spec.rb +42 -0
  498. data/spec/models/get_chat_member200_response_spec.rb +42 -0
  499. data/spec/models/get_chat_member_count200_response_spec.rb +42 -0
  500. data/spec/models/get_chat_menu_button200_response_spec.rb +42 -0
  501. data/spec/models/get_file200_response_spec.rb +42 -0
  502. data/spec/models/get_forum_topic_icon_stickers200_response_spec.rb +42 -0
  503. data/spec/models/get_game_high_scores200_response_spec.rb +42 -0
  504. data/spec/models/get_me200_response_spec.rb +42 -0
  505. data/spec/models/get_my_commands200_response_spec.rb +42 -0
  506. data/spec/models/get_my_default_administrator_rights200_response_spec.rb +42 -0
  507. data/spec/models/get_my_description200_response_spec.rb +42 -0
  508. data/spec/models/get_my_name200_response_spec.rb +42 -0
  509. data/spec/models/get_my_short_description200_response_spec.rb +42 -0
  510. data/spec/models/get_sticker_set200_response_spec.rb +42 -0
  511. data/spec/models/get_updates200_response_spec.rb +42 -0
  512. data/spec/models/get_updates4_xx_response_spec.rb +48 -0
  513. data/spec/models/get_user_chat_boosts200_response_spec.rb +42 -0
  514. data/spec/models/get_user_profile_photos200_response_spec.rb +42 -0
  515. data/spec/models/get_webhook_info200_response_spec.rb +42 -0
  516. data/spec/models/giveaway_completed_spec.rb +48 -0
  517. data/spec/models/giveaway_spec.rb +78 -0
  518. data/spec/models/giveaway_winners_spec.rb +96 -0
  519. data/spec/models/inaccessible_message_spec.rb +48 -0
  520. data/spec/models/inline_keyboard_button_spec.rb +90 -0
  521. data/spec/models/inline_keyboard_markup_spec.rb +36 -0
  522. data/spec/models/inline_query_result_article_spec.rb +96 -0
  523. data/spec/models/inline_query_result_audio_spec.rb +96 -0
  524. data/spec/models/inline_query_result_cached_audio_spec.rb +78 -0
  525. data/spec/models/inline_query_result_cached_document_spec.rb +90 -0
  526. data/spec/models/inline_query_result_cached_gif_spec.rb +84 -0
  527. data/spec/models/inline_query_result_cached_mpeg4_gif_spec.rb +84 -0
  528. data/spec/models/inline_query_result_cached_photo_spec.rb +90 -0
  529. data/spec/models/inline_query_result_cached_sticker_spec.rb +60 -0
  530. data/spec/models/inline_query_result_cached_video_spec.rb +90 -0
  531. data/spec/models/inline_query_result_cached_voice_spec.rb +84 -0
  532. data/spec/models/inline_query_result_contact_spec.rb +96 -0
  533. data/spec/models/inline_query_result_document_spec.rb +114 -0
  534. data/spec/models/inline_query_result_game_spec.rb +54 -0
  535. data/spec/models/inline_query_result_gif_spec.rb +114 -0
  536. data/spec/models/inline_query_result_location_spec.rb +114 -0
  537. data/spec/models/inline_query_result_mpeg4_gif_spec.rb +114 -0
  538. data/spec/models/inline_query_result_photo_spec.rb +108 -0
  539. data/spec/models/inline_query_result_venue_spec.rb +120 -0
  540. data/spec/models/inline_query_result_video_spec.rb +120 -0
  541. data/spec/models/inline_query_result_voice_spec.rb +90 -0
  542. data/spec/models/inline_query_results_button_spec.rb +48 -0
  543. data/spec/models/inline_query_spec.rb +66 -0
  544. data/spec/models/input_contact_message_content_spec.rb +54 -0
  545. data/spec/models/input_invoice_message_content_spec.rb +150 -0
  546. data/spec/models/input_location_message_content_spec.rb +66 -0
  547. data/spec/models/input_media_animation_spec.rb +90 -0
  548. data/spec/models/input_media_audio_spec.rb +84 -0
  549. data/spec/models/input_media_document_spec.rb +72 -0
  550. data/spec/models/input_media_photo_spec.rb +66 -0
  551. data/spec/models/input_media_video_spec.rb +96 -0
  552. data/spec/models/input_sticker_spec.rb +60 -0
  553. data/spec/models/input_text_message_content_spec.rb +54 -0
  554. data/spec/models/input_venue_message_content_spec.rb +78 -0
  555. data/spec/models/invoice_spec.rb +60 -0
  556. data/spec/models/keyboard_button_poll_type_spec.rb +36 -0
  557. data/spec/models/keyboard_button_request_chat_spec.rb +96 -0
  558. data/spec/models/keyboard_button_request_users_spec.rb +72 -0
  559. data/spec/models/keyboard_button_spec.rb +72 -0
  560. data/spec/models/labeled_price_spec.rb +42 -0
  561. data/spec/models/link_preview_options_spec.rb +60 -0
  562. data/spec/models/location_spec.rb +66 -0
  563. data/spec/models/login_url_spec.rb +54 -0
  564. data/spec/models/mask_position_spec.rb +54 -0
  565. data/spec/models/menu_button_commands_spec.rb +36 -0
  566. data/spec/models/menu_button_default_spec.rb +36 -0
  567. data/spec/models/menu_button_web_app_spec.rb +48 -0
  568. data/spec/models/message_auto_delete_timer_changed_spec.rb +36 -0
  569. data/spec/models/message_entity_spec.rb +72 -0
  570. data/spec/models/message_id_spec.rb +36 -0
  571. data/spec/models/message_origin_channel_spec.rb +60 -0
  572. data/spec/models/message_origin_chat_spec.rb +54 -0
  573. data/spec/models/message_origin_hidden_user_spec.rb +48 -0
  574. data/spec/models/message_origin_user_spec.rb +48 -0
  575. data/spec/models/message_reaction_count_updated_spec.rb +54 -0
  576. data/spec/models/message_reaction_updated_spec.rb +72 -0
  577. data/spec/models/message_spec.rb +510 -0
  578. data/spec/models/order_info_spec.rb +54 -0
  579. data/spec/models/passport_data_spec.rb +42 -0
  580. data/spec/models/passport_element_error_data_field_spec.rb +60 -0
  581. data/spec/models/passport_element_error_file_spec.rb +54 -0
  582. data/spec/models/passport_element_error_files_spec.rb +54 -0
  583. data/spec/models/passport_element_error_front_side_spec.rb +54 -0
  584. data/spec/models/passport_element_error_reverse_side_spec.rb +54 -0
  585. data/spec/models/passport_element_error_selfie_spec.rb +54 -0
  586. data/spec/models/passport_element_error_translation_file_spec.rb +54 -0
  587. data/spec/models/passport_element_error_translation_files_spec.rb +54 -0
  588. data/spec/models/passport_element_error_unspecified_spec.rb +54 -0
  589. data/spec/models/passport_file_spec.rb +54 -0
  590. data/spec/models/photo_size_spec.rb +60 -0
  591. data/spec/models/poll_answer_spec.rb +54 -0
  592. data/spec/models/poll_option_spec.rb +42 -0
  593. data/spec/models/poll_spec.rb +108 -0
  594. data/spec/models/pre_checkout_query_spec.rb +72 -0
  595. data/spec/models/proximity_alert_triggered_spec.rb +48 -0
  596. data/spec/models/reaction_count_spec.rb +42 -0
  597. data/spec/models/reaction_type_custom_emoji_spec.rb +42 -0
  598. data/spec/models/reaction_type_emoji_spec.rb +42 -0
  599. data/spec/models/reply_keyboard_markup_spec.rb +66 -0
  600. data/spec/models/reply_keyboard_remove_spec.rb +42 -0
  601. data/spec/models/reply_parameters_spec.rb +72 -0
  602. data/spec/models/response_parameters_spec.rb +42 -0
  603. data/spec/models/send_media_group200_response_spec.rb +42 -0
  604. data/spec/models/send_media_group_media_parameter_value_spec.rb +32 -0
  605. data/spec/models/send_message200_response_spec.rb +42 -0
  606. data/spec/models/send_message_chat_id_parameter_value_spec.rb +32 -0
  607. data/spec/models/send_message_reply_markup_parameter_value_spec.rb +32 -0
  608. data/spec/models/send_photo_photo_parameter_value_spec.rb +32 -0
  609. data/spec/models/sent_web_app_message_spec.rb +36 -0
  610. data/spec/models/set_webhook200_response_spec.rb +42 -0
  611. data/spec/models/shared_user_spec.rb +60 -0
  612. data/spec/models/shipping_address_spec.rb +66 -0
  613. data/spec/models/shipping_option_spec.rb +48 -0
  614. data/spec/models/shipping_query_spec.rb +54 -0
  615. data/spec/models/sticker_set_spec.rb +60 -0
  616. data/spec/models/sticker_spec.rb +120 -0
  617. data/spec/models/stop_poll200_response_spec.rb +42 -0
  618. data/spec/models/story_spec.rb +42 -0
  619. data/spec/models/successful_payment_spec.rb +72 -0
  620. data/spec/models/switch_inline_query_chosen_chat_spec.rb +60 -0
  621. data/spec/models/text_quote_spec.rb +54 -0
  622. data/spec/models/update_spec.rb +168 -0
  623. data/spec/models/user_chat_boosts_spec.rb +36 -0
  624. data/spec/models/user_profile_photos_spec.rb +42 -0
  625. data/spec/models/user_spec.rb +102 -0
  626. data/spec/models/users_shared_spec.rb +42 -0
  627. data/spec/models/venue_spec.rb +72 -0
  628. data/spec/models/video_chat_ended_spec.rb +36 -0
  629. data/spec/models/video_chat_participants_invited_spec.rb +36 -0
  630. data/spec/models/video_chat_scheduled_spec.rb +36 -0
  631. data/spec/models/video_note_spec.rb +66 -0
  632. data/spec/models/video_spec.rb +84 -0
  633. data/spec/models/voice_spec.rb +60 -0
  634. data/spec/models/web_app_data_spec.rb +42 -0
  635. data/spec/models/web_app_info_spec.rb +36 -0
  636. data/spec/models/webhook_info_spec.rb +84 -0
  637. data/spec/models/write_access_allowed_spec.rb +48 -0
  638. data/spec/spec_helper.rb +111 -0
  639. data/telegram-bot-7.2.0.gem +0 -0
  640. data/telegram-bot-openapi-7.2.0.gem +0 -0
  641. data/telegram-bot.gemspec +40 -0
  642. metadata +934 -0
@@ -0,0 +1,283 @@
1
+ =begin
2
+ #telegram-bot-api
3
+
4
+ #Unofficial telegram-bot-api OpenAPI spec. Generated from the Bot API docs at https://core.telegram.org/bots/api
5
+
6
+ The version of the OpenAPI document: Bot API 7.2
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.7.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TelegramBot
17
+ # This object represents one button of the reply keyboard. For simple text buttons, String can be used instead of this object to specify the button text. The optional fields web_app, request_users, request_chat, request_contact, request_location, and request_poll are mutually exclusive. Note: request_users and request_chat options will only work in Telegram versions released after 3 February, 2023. Older clients will display unsupported message.
18
+ class KeyboardButton
19
+ # Text of the button. If none of the optional fields are used, it will be sent as a message when the button is pressed
20
+ attr_accessor :text
21
+
22
+ # Optional. If specified, pressing the button will open a list of suitable users. Identifiers of selected users will be sent to the bot in a \"users_shared\" service message. Available in private chats only.
23
+ attr_accessor :request_users
24
+
25
+ # Optional. If specified, pressing the button will open a list of suitable chats. Tapping on a chat will send its identifier to the bot in a \"chat_shared\" service message. Available in private chats only.
26
+ attr_accessor :request_chat
27
+
28
+ # Optional. If True, the user's phone number will be sent as a contact when the button is pressed. Available in private chats only.
29
+ attr_accessor :request_contact
30
+
31
+ # Optional. If True, the user's current location will be sent when the button is pressed. Available in private chats only.
32
+ attr_accessor :request_location
33
+
34
+ # Optional. If specified, the user will be asked to create a poll and send it to the bot when the button is pressed. Available in private chats only.
35
+ attr_accessor :request_poll
36
+
37
+ # Optional. If specified, the described Web App will be launched when the button is pressed. The Web App will be able to send a \"web_app_data\" service message. Available in private chats only.
38
+ attr_accessor :web_app
39
+
40
+ # Attribute mapping from ruby-style variable name to JSON key.
41
+ def self.attribute_map
42
+ {
43
+ :'text' => :'text',
44
+ :'request_users' => :'request_users',
45
+ :'request_chat' => :'request_chat',
46
+ :'request_contact' => :'request_contact',
47
+ :'request_location' => :'request_location',
48
+ :'request_poll' => :'request_poll',
49
+ :'web_app' => :'web_app'
50
+ }
51
+ end
52
+
53
+ # Returns all the JSON keys this model knows about
54
+ def self.acceptable_attributes
55
+ attribute_map.values
56
+ end
57
+
58
+ # Attribute type mapping.
59
+ def self.openapi_types
60
+ {
61
+ :'text' => :'String',
62
+ :'request_users' => :'KeyboardButtonRequestUsers',
63
+ :'request_chat' => :'KeyboardButtonRequestChat',
64
+ :'request_contact' => :'Boolean',
65
+ :'request_location' => :'Boolean',
66
+ :'request_poll' => :'KeyboardButtonPollType',
67
+ :'web_app' => :'WebAppInfo'
68
+ }
69
+ end
70
+
71
+ # List of attributes with nullable: true
72
+ def self.openapi_nullable
73
+ Set.new([
74
+ ])
75
+ end
76
+
77
+ # Initializes the object
78
+ # @param [Hash] attributes Model attributes in the form of hash
79
+ def initialize(attributes = {})
80
+ if (!attributes.is_a?(Hash))
81
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TelegramBot::KeyboardButton` initialize method"
82
+ end
83
+
84
+ # check to see if the attribute exists and convert string to symbol for hash key
85
+ attributes = attributes.each_with_object({}) { |(k, v), h|
86
+ if (!self.class.attribute_map.key?(k.to_sym))
87
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TelegramBot::KeyboardButton`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
88
+ end
89
+ h[k.to_sym] = v
90
+ }
91
+
92
+ if attributes.key?(:'text')
93
+ self.text = attributes[:'text']
94
+ else
95
+ self.text = nil
96
+ end
97
+
98
+ if attributes.key?(:'request_users')
99
+ self.request_users = attributes[:'request_users']
100
+ end
101
+
102
+ if attributes.key?(:'request_chat')
103
+ self.request_chat = attributes[:'request_chat']
104
+ end
105
+
106
+ if attributes.key?(:'request_contact')
107
+ self.request_contact = attributes[:'request_contact']
108
+ end
109
+
110
+ if attributes.key?(:'request_location')
111
+ self.request_location = attributes[:'request_location']
112
+ end
113
+
114
+ if attributes.key?(:'request_poll')
115
+ self.request_poll = attributes[:'request_poll']
116
+ end
117
+
118
+ if attributes.key?(:'web_app')
119
+ self.web_app = attributes[:'web_app']
120
+ end
121
+ end
122
+
123
+ # Show invalid properties with the reasons. Usually used together with valid?
124
+ # @return Array for valid properties with the reasons
125
+ def list_invalid_properties
126
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
127
+ invalid_properties = Array.new
128
+ if @text.nil?
129
+ invalid_properties.push('invalid value for "text", text cannot be nil.')
130
+ end
131
+
132
+ invalid_properties
133
+ end
134
+
135
+ # Check to see if the all the properties in the model are valid
136
+ # @return true if the model is valid
137
+ def valid?
138
+ warn '[DEPRECATED] the `valid?` method is obsolete'
139
+ return false if @text.nil?
140
+ true
141
+ end
142
+
143
+ # Checks equality by comparing each attribute.
144
+ # @param [Object] Object to be compared
145
+ def ==(o)
146
+ return true if self.equal?(o)
147
+ self.class == o.class &&
148
+ text == o.text &&
149
+ request_users == o.request_users &&
150
+ request_chat == o.request_chat &&
151
+ request_contact == o.request_contact &&
152
+ request_location == o.request_location &&
153
+ request_poll == o.request_poll &&
154
+ web_app == o.web_app
155
+ end
156
+
157
+ # @see the `==` method
158
+ # @param [Object] Object to be compared
159
+ def eql?(o)
160
+ self == o
161
+ end
162
+
163
+ # Calculates hash code according to all attributes.
164
+ # @return [Integer] Hash code
165
+ def hash
166
+ [text, request_users, request_chat, request_contact, request_location, request_poll, web_app].hash
167
+ end
168
+
169
+ # Builds the object from hash
170
+ # @param [Hash] attributes Model attributes in the form of hash
171
+ # @return [Object] Returns the model itself
172
+ def self.build_from_hash(attributes)
173
+ return nil unless attributes.is_a?(Hash)
174
+ attributes = attributes.transform_keys(&:to_sym)
175
+ transformed_hash = {}
176
+ openapi_types.each_pair do |key, type|
177
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
178
+ transformed_hash["#{key}"] = nil
179
+ elsif type =~ /\AArray<(.*)>/i
180
+ # check to ensure the input is an array given that the attribute
181
+ # is documented as an array but the input is not
182
+ if attributes[attribute_map[key]].is_a?(Array)
183
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
184
+ end
185
+ elsif !attributes[attribute_map[key]].nil?
186
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
187
+ end
188
+ end
189
+ new(transformed_hash)
190
+ end
191
+
192
+ # Deserializes the data based on type
193
+ # @param string type Data type
194
+ # @param string value Value to be deserialized
195
+ # @return [Object] Deserialized data
196
+ def self._deserialize(type, value)
197
+ case type.to_sym
198
+ when :Time
199
+ Time.parse(value)
200
+ when :Date
201
+ Date.parse(value)
202
+ when :String
203
+ value.to_s
204
+ when :Integer
205
+ value.to_i
206
+ when :Float
207
+ value.to_f
208
+ when :Boolean
209
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
210
+ true
211
+ else
212
+ false
213
+ end
214
+ when :Object
215
+ # generic object (usually a Hash), return directly
216
+ value
217
+ when /\AArray<(?<inner_type>.+)>\z/
218
+ inner_type = Regexp.last_match[:inner_type]
219
+ value.map { |v| _deserialize(inner_type, v) }
220
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
221
+ k_type = Regexp.last_match[:k_type]
222
+ v_type = Regexp.last_match[:v_type]
223
+ {}.tap do |hash|
224
+ value.each do |k, v|
225
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
226
+ end
227
+ end
228
+ else # model
229
+ # models (e.g. Pet) or oneOf
230
+ klass = TelegramBot.const_get(type)
231
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
232
+ end
233
+ end
234
+
235
+ # Returns the string representation of the object
236
+ # @return [String] String presentation of the object
237
+ def to_s
238
+ to_hash.to_s
239
+ end
240
+
241
+ # to_body is an alias to to_hash (backward compatibility)
242
+ # @return [Hash] Returns the object in the form of hash
243
+ def to_body
244
+ to_hash
245
+ end
246
+
247
+ # Returns the object in the form of hash
248
+ # @return [Hash] Returns the object in the form of hash
249
+ def to_hash
250
+ hash = {}
251
+ self.class.attribute_map.each_pair do |attr, param|
252
+ value = self.send(attr)
253
+ if value.nil?
254
+ is_nullable = self.class.openapi_nullable.include?(attr)
255
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
256
+ end
257
+
258
+ hash[param] = _to_hash(value)
259
+ end
260
+ hash
261
+ end
262
+
263
+ # Outputs non-array value in the form of hash
264
+ # For object, use to_hash. Otherwise, just return the value
265
+ # @param [Object] value Any valid value
266
+ # @return [Hash] Returns the value in the form of hash
267
+ def _to_hash(value)
268
+ if value.is_a?(Array)
269
+ value.compact.map { |v| _to_hash(v) }
270
+ elsif value.is_a?(Hash)
271
+ {}.tap do |hash|
272
+ value.each { |k, v| hash[k] = _to_hash(v) }
273
+ end
274
+ elsif value.respond_to? :to_hash
275
+ value.to_hash
276
+ else
277
+ value
278
+ end
279
+ end
280
+
281
+ end
282
+
283
+ end
@@ -0,0 +1,216 @@
1
+ =begin
2
+ #telegram-bot-api
3
+
4
+ #Unofficial telegram-bot-api OpenAPI spec. Generated from the Bot API docs at https://core.telegram.org/bots/api
5
+
6
+ The version of the OpenAPI document: Bot API 7.2
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.7.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TelegramBot
17
+ # This object represents type of a poll, which is allowed to be created and sent when the corresponding button is pressed.
18
+ class KeyboardButtonPollType
19
+ # Optional. If quiz is passed, the user will be allowed to create only polls in the quiz mode. If regular is passed, only regular polls will be allowed. Otherwise, the user will be allowed to create a poll of any type.
20
+ attr_accessor :type
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'type' => :'type'
26
+ }
27
+ end
28
+
29
+ # Returns all the JSON keys this model knows about
30
+ def self.acceptable_attributes
31
+ attribute_map.values
32
+ end
33
+
34
+ # Attribute type mapping.
35
+ def self.openapi_types
36
+ {
37
+ :'type' => :'String'
38
+ }
39
+ end
40
+
41
+ # List of attributes with nullable: true
42
+ def self.openapi_nullable
43
+ Set.new([
44
+ ])
45
+ end
46
+
47
+ # Initializes the object
48
+ # @param [Hash] attributes Model attributes in the form of hash
49
+ def initialize(attributes = {})
50
+ if (!attributes.is_a?(Hash))
51
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TelegramBot::KeyboardButtonPollType` initialize method"
52
+ end
53
+
54
+ # check to see if the attribute exists and convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h|
56
+ if (!self.class.attribute_map.key?(k.to_sym))
57
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TelegramBot::KeyboardButtonPollType`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
58
+ end
59
+ h[k.to_sym] = v
60
+ }
61
+
62
+ if attributes.key?(:'type')
63
+ self.type = attributes[:'type']
64
+ end
65
+ end
66
+
67
+ # Show invalid properties with the reasons. Usually used together with valid?
68
+ # @return Array for valid properties with the reasons
69
+ def list_invalid_properties
70
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
71
+ invalid_properties = Array.new
72
+ invalid_properties
73
+ end
74
+
75
+ # Check to see if the all the properties in the model are valid
76
+ # @return true if the model is valid
77
+ def valid?
78
+ warn '[DEPRECATED] the `valid?` method is obsolete'
79
+ true
80
+ end
81
+
82
+ # Checks equality by comparing each attribute.
83
+ # @param [Object] Object to be compared
84
+ def ==(o)
85
+ return true if self.equal?(o)
86
+ self.class == o.class &&
87
+ type == o.type
88
+ end
89
+
90
+ # @see the `==` method
91
+ # @param [Object] Object to be compared
92
+ def eql?(o)
93
+ self == o
94
+ end
95
+
96
+ # Calculates hash code according to all attributes.
97
+ # @return [Integer] Hash code
98
+ def hash
99
+ [type].hash
100
+ end
101
+
102
+ # Builds the object from hash
103
+ # @param [Hash] attributes Model attributes in the form of hash
104
+ # @return [Object] Returns the model itself
105
+ def self.build_from_hash(attributes)
106
+ return nil unless attributes.is_a?(Hash)
107
+ attributes = attributes.transform_keys(&:to_sym)
108
+ transformed_hash = {}
109
+ openapi_types.each_pair do |key, type|
110
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
111
+ transformed_hash["#{key}"] = nil
112
+ elsif type =~ /\AArray<(.*)>/i
113
+ # check to ensure the input is an array given that the attribute
114
+ # is documented as an array but the input is not
115
+ if attributes[attribute_map[key]].is_a?(Array)
116
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
117
+ end
118
+ elsif !attributes[attribute_map[key]].nil?
119
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
120
+ end
121
+ end
122
+ new(transformed_hash)
123
+ end
124
+
125
+ # Deserializes the data based on type
126
+ # @param string type Data type
127
+ # @param string value Value to be deserialized
128
+ # @return [Object] Deserialized data
129
+ def self._deserialize(type, value)
130
+ case type.to_sym
131
+ when :Time
132
+ Time.parse(value)
133
+ when :Date
134
+ Date.parse(value)
135
+ when :String
136
+ value.to_s
137
+ when :Integer
138
+ value.to_i
139
+ when :Float
140
+ value.to_f
141
+ when :Boolean
142
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
143
+ true
144
+ else
145
+ false
146
+ end
147
+ when :Object
148
+ # generic object (usually a Hash), return directly
149
+ value
150
+ when /\AArray<(?<inner_type>.+)>\z/
151
+ inner_type = Regexp.last_match[:inner_type]
152
+ value.map { |v| _deserialize(inner_type, v) }
153
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
154
+ k_type = Regexp.last_match[:k_type]
155
+ v_type = Regexp.last_match[:v_type]
156
+ {}.tap do |hash|
157
+ value.each do |k, v|
158
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
159
+ end
160
+ end
161
+ else # model
162
+ # models (e.g. Pet) or oneOf
163
+ klass = TelegramBot.const_get(type)
164
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
165
+ end
166
+ end
167
+
168
+ # Returns the string representation of the object
169
+ # @return [String] String presentation of the object
170
+ def to_s
171
+ to_hash.to_s
172
+ end
173
+
174
+ # to_body is an alias to to_hash (backward compatibility)
175
+ # @return [Hash] Returns the object in the form of hash
176
+ def to_body
177
+ to_hash
178
+ end
179
+
180
+ # Returns the object in the form of hash
181
+ # @return [Hash] Returns the object in the form of hash
182
+ def to_hash
183
+ hash = {}
184
+ self.class.attribute_map.each_pair do |attr, param|
185
+ value = self.send(attr)
186
+ if value.nil?
187
+ is_nullable = self.class.openapi_nullable.include?(attr)
188
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
189
+ end
190
+
191
+ hash[param] = _to_hash(value)
192
+ end
193
+ hash
194
+ end
195
+
196
+ # Outputs non-array value in the form of hash
197
+ # For object, use to_hash. Otherwise, just return the value
198
+ # @param [Object] value Any valid value
199
+ # @return [Hash] Returns the value in the form of hash
200
+ def _to_hash(value)
201
+ if value.is_a?(Array)
202
+ value.compact.map { |v| _to_hash(v) }
203
+ elsif value.is_a?(Hash)
204
+ {}.tap do |hash|
205
+ value.each { |k, v| hash[k] = _to_hash(v) }
206
+ end
207
+ elsif value.respond_to? :to_hash
208
+ value.to_hash
209
+ else
210
+ value
211
+ end
212
+ end
213
+
214
+ end
215
+
216
+ end