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,1037 @@
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 a message.
18
+ class Message
19
+ # Unique message identifier inside this chat
20
+ attr_accessor :message_id
21
+
22
+ # Optional. Unique identifier of a message thread to which the message belongs; for supergroups only
23
+ attr_accessor :message_thread_id
24
+
25
+ # Optional. Sender of the message; empty for messages sent to channels. For backward compatibility, the field contains a fake sender user in non-channel chats, if the message was sent on behalf of a chat.
26
+ attr_accessor :from
27
+
28
+ # Optional. Sender of the message, sent on behalf of a chat. For example, the channel itself for channel posts, the supergroup itself for messages from anonymous group administrators, the linked channel for messages automatically forwarded to the discussion group. For backward compatibility, the field from contains a fake sender user in non-channel chats, if the message was sent on behalf of a chat.
29
+ attr_accessor :sender_chat
30
+
31
+ # Optional. If the sender of the message boosted the chat, the number of boosts added by the user
32
+ attr_accessor :sender_boost_count
33
+
34
+ # Optional. The bot that actually sent the message on behalf of the business account. Available only for outgoing messages sent on behalf of the connected business account.
35
+ attr_accessor :sender_business_bot
36
+
37
+ # Date the message was sent in Unix time. It is always a positive number, representing a valid date.
38
+ attr_accessor :date
39
+
40
+ # Optional. Unique identifier of the business connection from which the message was received. If non-empty, the message belongs to a chat of the corresponding business account that is independent from any potential bot chat which might share the same identifier.
41
+ attr_accessor :business_connection_id
42
+
43
+ # Chat the message belongs to
44
+ attr_accessor :chat
45
+
46
+ # Optional. Information about the original message for forwarded messages
47
+ attr_accessor :forward_origin
48
+
49
+ # Optional. True, if the message is sent to a forum topic
50
+ attr_accessor :is_topic_message
51
+
52
+ # Optional. True, if the message is a channel post that was automatically forwarded to the connected discussion group
53
+ attr_accessor :is_automatic_forward
54
+
55
+ # Optional. For replies in the same chat and message thread, the original message. Note that the Message object in this field will not contain further reply_to_message fields even if it itself is a reply.
56
+ attr_accessor :reply_to_message
57
+
58
+ # Optional. Information about the message that is being replied to, which may come from another chat or forum topic
59
+ attr_accessor :external_reply
60
+
61
+ # Optional. For replies that quote part of the original message, the quoted part of the message
62
+ attr_accessor :quote
63
+
64
+ # Optional. For replies to a story, the original story
65
+ attr_accessor :reply_to_story
66
+
67
+ # Optional. Bot through which the message was sent
68
+ attr_accessor :via_bot
69
+
70
+ # Optional. Date the message was last edited in Unix time
71
+ attr_accessor :edit_date
72
+
73
+ # Optional. True, if the message can't be forwarded
74
+ attr_accessor :has_protected_content
75
+
76
+ # Optional. True, if the message was sent by an implicit action, for example, as an away or a greeting business message, or as a scheduled message
77
+ attr_accessor :is_from_offline
78
+
79
+ # Optional. The unique identifier of a media message group this message belongs to
80
+ attr_accessor :media_group_id
81
+
82
+ # Optional. Signature of the post author for messages in channels, or the custom title of an anonymous group administrator
83
+ attr_accessor :author_signature
84
+
85
+ # Optional. For text messages, the actual UTF-8 text of the message
86
+ attr_accessor :text
87
+
88
+ # Optional. For text messages, special entities like usernames, URLs, bot commands, etc. that appear in the text
89
+ attr_accessor :entities
90
+
91
+ # Optional. Options used for link preview generation for the message, if it is a text message and link preview options were changed
92
+ attr_accessor :link_preview_options
93
+
94
+ # Optional. Message is an animation, information about the animation. For backward compatibility, when this field is set, the document field will also be set
95
+ attr_accessor :animation
96
+
97
+ # Optional. Message is an audio file, information about the file
98
+ attr_accessor :audio
99
+
100
+ # Optional. Message is a general file, information about the file
101
+ attr_accessor :document
102
+
103
+ # Optional. Message is a photo, available sizes of the photo
104
+ attr_accessor :photo
105
+
106
+ # Optional. Message is a sticker, information about the sticker
107
+ attr_accessor :sticker
108
+
109
+ # Optional. Message is a forwarded story
110
+ attr_accessor :story
111
+
112
+ # Optional. Message is a video, information about the video
113
+ attr_accessor :video
114
+
115
+ # Optional. Message is a video note, information about the video message
116
+ attr_accessor :video_note
117
+
118
+ # Optional. Message is a voice message, information about the file
119
+ attr_accessor :voice
120
+
121
+ # Optional. Caption for the animation, audio, document, photo, video or voice
122
+ attr_accessor :caption
123
+
124
+ # Optional. For messages with a caption, special entities like usernames, URLs, bot commands, etc. that appear in the caption
125
+ attr_accessor :caption_entities
126
+
127
+ # Optional. True, if the message media is covered by a spoiler animation
128
+ attr_accessor :has_media_spoiler
129
+
130
+ # Optional. Message is a shared contact, information about the contact
131
+ attr_accessor :contact
132
+
133
+ # Optional. Message is a dice with random value
134
+ attr_accessor :dice
135
+
136
+ # Optional. Message is a game, information about the game. More about games: https://core.telegram.org/bots/api#games
137
+ attr_accessor :game
138
+
139
+ # Optional. Message is a native poll, information about the poll
140
+ attr_accessor :poll
141
+
142
+ # Optional. Message is a venue, information about the venue. For backward compatibility, when this field is set, the location field will also be set
143
+ attr_accessor :venue
144
+
145
+ # Optional. Message is a shared location, information about the location
146
+ attr_accessor :location
147
+
148
+ # Optional. New members that were added to the group or supergroup and information about them (the bot itself may be one of these members)
149
+ attr_accessor :new_chat_members
150
+
151
+ # Optional. A member was removed from the group, information about them (this member may be the bot itself)
152
+ attr_accessor :left_chat_member
153
+
154
+ # Optional. A chat title was changed to this value
155
+ attr_accessor :new_chat_title
156
+
157
+ # Optional. A chat photo was change to this value
158
+ attr_accessor :new_chat_photo
159
+
160
+ # Optional. Service message: the chat photo was deleted
161
+ attr_accessor :delete_chat_photo
162
+
163
+ # Optional. Service message: the group has been created
164
+ attr_accessor :group_chat_created
165
+
166
+ # Optional. Service message: the supergroup has been created. This field can't be received in a message coming through updates, because bot can't be a member of a supergroup when it is created. It can only be found in reply_to_message if someone replies to a very first message in a directly created supergroup.
167
+ attr_accessor :supergroup_chat_created
168
+
169
+ # Optional. Service message: the channel has been created. This field can't be received in a message coming through updates, because bot can't be a member of a channel when it is created. It can only be found in reply_to_message if someone replies to a very first message in a channel.
170
+ attr_accessor :channel_chat_created
171
+
172
+ # Optional. Service message: auto-delete timer settings changed in the chat
173
+ attr_accessor :message_auto_delete_timer_changed
174
+
175
+ # Optional. The group has been migrated to a supergroup with the specified identifier. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for storing this identifier.
176
+ attr_accessor :migrate_to_chat_id
177
+
178
+ # Optional. The supergroup has been migrated from a group with the specified identifier. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for storing this identifier.
179
+ attr_accessor :migrate_from_chat_id
180
+
181
+ # Optional. Specified message was pinned. Note that the Message object in this field will not contain further reply_to_message fields even if it itself is a reply.
182
+ attr_accessor :pinned_message
183
+
184
+ # Optional. Message is an invoice for a payment, information about the invoice. More about payments: https://core.telegram.org/bots/api#payments
185
+ attr_accessor :invoice
186
+
187
+ # Optional. Message is a service message about a successful payment, information about the payment. More about payments: https://core.telegram.org/bots/api#payments
188
+ attr_accessor :successful_payment
189
+
190
+ # Optional. Service message: users were shared with the bot
191
+ attr_accessor :users_shared
192
+
193
+ # Optional. Service message: a chat was shared with the bot
194
+ attr_accessor :chat_shared
195
+
196
+ # Optional. The domain name of the website on which the user has logged in. More about Telegram Login: https://core.telegram.org/widgets/login
197
+ attr_accessor :connected_website
198
+
199
+ # Optional. Service message: the user allowed the bot to write messages after adding it to the attachment or side menu, launching a Web App from a link, or accepting an explicit request from a Web App sent by the method requestWriteAccess
200
+ attr_accessor :write_access_allowed
201
+
202
+ # Optional. Telegram Passport data
203
+ attr_accessor :passport_data
204
+
205
+ # Optional. Service message. A user in the chat triggered another user's proximity alert while sharing Live Location.
206
+ attr_accessor :proximity_alert_triggered
207
+
208
+ # Optional. Service message: user boosted the chat
209
+ attr_accessor :boost_added
210
+
211
+ # Optional. Service message: forum topic created
212
+ attr_accessor :forum_topic_created
213
+
214
+ # Optional. Service message: forum topic edited
215
+ attr_accessor :forum_topic_edited
216
+
217
+ # Optional. Service message: forum topic closed
218
+ attr_accessor :forum_topic_closed
219
+
220
+ # Optional. Service message: forum topic reopened
221
+ attr_accessor :forum_topic_reopened
222
+
223
+ # Optional. Service message: the 'General' forum topic hidden
224
+ attr_accessor :general_forum_topic_hidden
225
+
226
+ # Optional. Service message: the 'General' forum topic unhidden
227
+ attr_accessor :general_forum_topic_unhidden
228
+
229
+ # Optional. Service message: a scheduled giveaway was created
230
+ attr_accessor :giveaway_created
231
+
232
+ # Optional. The message is a scheduled giveaway message
233
+ attr_accessor :giveaway
234
+
235
+ # Optional. A giveaway with public winners was completed
236
+ attr_accessor :giveaway_winners
237
+
238
+ # Optional. Service message: a giveaway without public winners was completed
239
+ attr_accessor :giveaway_completed
240
+
241
+ # Optional. Service message: video chat scheduled
242
+ attr_accessor :video_chat_scheduled
243
+
244
+ # Optional. Service message: video chat started
245
+ attr_accessor :video_chat_started
246
+
247
+ # Optional. Service message: video chat ended
248
+ attr_accessor :video_chat_ended
249
+
250
+ # Optional. Service message: new participants invited to a video chat
251
+ attr_accessor :video_chat_participants_invited
252
+
253
+ # Optional. Service message: data sent by a Web App
254
+ attr_accessor :web_app_data
255
+
256
+ # Optional. Inline keyboard attached to the message. login_url buttons are represented as ordinary url buttons.
257
+ attr_accessor :reply_markup
258
+
259
+ # Attribute mapping from ruby-style variable name to JSON key.
260
+ def self.attribute_map
261
+ {
262
+ :'message_id' => :'message_id',
263
+ :'message_thread_id' => :'message_thread_id',
264
+ :'from' => :'from',
265
+ :'sender_chat' => :'sender_chat',
266
+ :'sender_boost_count' => :'sender_boost_count',
267
+ :'sender_business_bot' => :'sender_business_bot',
268
+ :'date' => :'date',
269
+ :'business_connection_id' => :'business_connection_id',
270
+ :'chat' => :'chat',
271
+ :'forward_origin' => :'forward_origin',
272
+ :'is_topic_message' => :'is_topic_message',
273
+ :'is_automatic_forward' => :'is_automatic_forward',
274
+ :'reply_to_message' => :'reply_to_message',
275
+ :'external_reply' => :'external_reply',
276
+ :'quote' => :'quote',
277
+ :'reply_to_story' => :'reply_to_story',
278
+ :'via_bot' => :'via_bot',
279
+ :'edit_date' => :'edit_date',
280
+ :'has_protected_content' => :'has_protected_content',
281
+ :'is_from_offline' => :'is_from_offline',
282
+ :'media_group_id' => :'media_group_id',
283
+ :'author_signature' => :'author_signature',
284
+ :'text' => :'text',
285
+ :'entities' => :'entities',
286
+ :'link_preview_options' => :'link_preview_options',
287
+ :'animation' => :'animation',
288
+ :'audio' => :'audio',
289
+ :'document' => :'document',
290
+ :'photo' => :'photo',
291
+ :'sticker' => :'sticker',
292
+ :'story' => :'story',
293
+ :'video' => :'video',
294
+ :'video_note' => :'video_note',
295
+ :'voice' => :'voice',
296
+ :'caption' => :'caption',
297
+ :'caption_entities' => :'caption_entities',
298
+ :'has_media_spoiler' => :'has_media_spoiler',
299
+ :'contact' => :'contact',
300
+ :'dice' => :'dice',
301
+ :'game' => :'game',
302
+ :'poll' => :'poll',
303
+ :'venue' => :'venue',
304
+ :'location' => :'location',
305
+ :'new_chat_members' => :'new_chat_members',
306
+ :'left_chat_member' => :'left_chat_member',
307
+ :'new_chat_title' => :'new_chat_title',
308
+ :'new_chat_photo' => :'new_chat_photo',
309
+ :'delete_chat_photo' => :'delete_chat_photo',
310
+ :'group_chat_created' => :'group_chat_created',
311
+ :'supergroup_chat_created' => :'supergroup_chat_created',
312
+ :'channel_chat_created' => :'channel_chat_created',
313
+ :'message_auto_delete_timer_changed' => :'message_auto_delete_timer_changed',
314
+ :'migrate_to_chat_id' => :'migrate_to_chat_id',
315
+ :'migrate_from_chat_id' => :'migrate_from_chat_id',
316
+ :'pinned_message' => :'pinned_message',
317
+ :'invoice' => :'invoice',
318
+ :'successful_payment' => :'successful_payment',
319
+ :'users_shared' => :'users_shared',
320
+ :'chat_shared' => :'chat_shared',
321
+ :'connected_website' => :'connected_website',
322
+ :'write_access_allowed' => :'write_access_allowed',
323
+ :'passport_data' => :'passport_data',
324
+ :'proximity_alert_triggered' => :'proximity_alert_triggered',
325
+ :'boost_added' => :'boost_added',
326
+ :'forum_topic_created' => :'forum_topic_created',
327
+ :'forum_topic_edited' => :'forum_topic_edited',
328
+ :'forum_topic_closed' => :'forum_topic_closed',
329
+ :'forum_topic_reopened' => :'forum_topic_reopened',
330
+ :'general_forum_topic_hidden' => :'general_forum_topic_hidden',
331
+ :'general_forum_topic_unhidden' => :'general_forum_topic_unhidden',
332
+ :'giveaway_created' => :'giveaway_created',
333
+ :'giveaway' => :'giveaway',
334
+ :'giveaway_winners' => :'giveaway_winners',
335
+ :'giveaway_completed' => :'giveaway_completed',
336
+ :'video_chat_scheduled' => :'video_chat_scheduled',
337
+ :'video_chat_started' => :'video_chat_started',
338
+ :'video_chat_ended' => :'video_chat_ended',
339
+ :'video_chat_participants_invited' => :'video_chat_participants_invited',
340
+ :'web_app_data' => :'web_app_data',
341
+ :'reply_markup' => :'reply_markup'
342
+ }
343
+ end
344
+
345
+ # Returns all the JSON keys this model knows about
346
+ def self.acceptable_attributes
347
+ attribute_map.values
348
+ end
349
+
350
+ # Attribute type mapping.
351
+ def self.openapi_types
352
+ {
353
+ :'message_id' => :'Integer',
354
+ :'message_thread_id' => :'Integer',
355
+ :'from' => :'User',
356
+ :'sender_chat' => :'Chat',
357
+ :'sender_boost_count' => :'Integer',
358
+ :'sender_business_bot' => :'User',
359
+ :'date' => :'Integer',
360
+ :'business_connection_id' => :'String',
361
+ :'chat' => :'Chat',
362
+ :'forward_origin' => :'Object',
363
+ :'is_topic_message' => :'Boolean',
364
+ :'is_automatic_forward' => :'Boolean',
365
+ :'reply_to_message' => :'Message',
366
+ :'external_reply' => :'ExternalReplyInfo',
367
+ :'quote' => :'TextQuote',
368
+ :'reply_to_story' => :'Story',
369
+ :'via_bot' => :'User',
370
+ :'edit_date' => :'Integer',
371
+ :'has_protected_content' => :'Boolean',
372
+ :'is_from_offline' => :'Boolean',
373
+ :'media_group_id' => :'String',
374
+ :'author_signature' => :'String',
375
+ :'text' => :'String',
376
+ :'entities' => :'Array<MessageEntity>',
377
+ :'link_preview_options' => :'LinkPreviewOptions',
378
+ :'animation' => :'Animation',
379
+ :'audio' => :'Audio',
380
+ :'document' => :'Document',
381
+ :'photo' => :'Array<PhotoSize>',
382
+ :'sticker' => :'Sticker',
383
+ :'story' => :'Story',
384
+ :'video' => :'Video',
385
+ :'video_note' => :'VideoNote',
386
+ :'voice' => :'Voice',
387
+ :'caption' => :'String',
388
+ :'caption_entities' => :'Array<MessageEntity>',
389
+ :'has_media_spoiler' => :'Boolean',
390
+ :'contact' => :'Contact',
391
+ :'dice' => :'Dice',
392
+ :'game' => :'Game',
393
+ :'poll' => :'Poll',
394
+ :'venue' => :'Venue',
395
+ :'location' => :'Location',
396
+ :'new_chat_members' => :'Array<User>',
397
+ :'left_chat_member' => :'User',
398
+ :'new_chat_title' => :'String',
399
+ :'new_chat_photo' => :'Array<PhotoSize>',
400
+ :'delete_chat_photo' => :'Boolean',
401
+ :'group_chat_created' => :'Boolean',
402
+ :'supergroup_chat_created' => :'Boolean',
403
+ :'channel_chat_created' => :'Boolean',
404
+ :'message_auto_delete_timer_changed' => :'MessageAutoDeleteTimerChanged',
405
+ :'migrate_to_chat_id' => :'Integer',
406
+ :'migrate_from_chat_id' => :'Integer',
407
+ :'pinned_message' => :'Object',
408
+ :'invoice' => :'Invoice',
409
+ :'successful_payment' => :'SuccessfulPayment',
410
+ :'users_shared' => :'UsersShared',
411
+ :'chat_shared' => :'ChatShared',
412
+ :'connected_website' => :'String',
413
+ :'write_access_allowed' => :'WriteAccessAllowed',
414
+ :'passport_data' => :'PassportData',
415
+ :'proximity_alert_triggered' => :'ProximityAlertTriggered',
416
+ :'boost_added' => :'ChatBoostAdded',
417
+ :'forum_topic_created' => :'ForumTopicCreated',
418
+ :'forum_topic_edited' => :'ForumTopicEdited',
419
+ :'forum_topic_closed' => :'Object',
420
+ :'forum_topic_reopened' => :'Object',
421
+ :'general_forum_topic_hidden' => :'Object',
422
+ :'general_forum_topic_unhidden' => :'Object',
423
+ :'giveaway_created' => :'Object',
424
+ :'giveaway' => :'Giveaway',
425
+ :'giveaway_winners' => :'GiveawayWinners',
426
+ :'giveaway_completed' => :'GiveawayCompleted',
427
+ :'video_chat_scheduled' => :'VideoChatScheduled',
428
+ :'video_chat_started' => :'Object',
429
+ :'video_chat_ended' => :'VideoChatEnded',
430
+ :'video_chat_participants_invited' => :'VideoChatParticipantsInvited',
431
+ :'web_app_data' => :'WebAppData',
432
+ :'reply_markup' => :'InlineKeyboardMarkup'
433
+ }
434
+ end
435
+
436
+ # List of attributes with nullable: true
437
+ def self.openapi_nullable
438
+ Set.new([
439
+ ])
440
+ end
441
+
442
+ # Initializes the object
443
+ # @param [Hash] attributes Model attributes in the form of hash
444
+ def initialize(attributes = {})
445
+ if (!attributes.is_a?(Hash))
446
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TelegramBot::Message` initialize method"
447
+ end
448
+
449
+ # check to see if the attribute exists and convert string to symbol for hash key
450
+ attributes = attributes.each_with_object({}) { |(k, v), h|
451
+ if (!self.class.attribute_map.key?(k.to_sym))
452
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TelegramBot::Message`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
453
+ end
454
+ h[k.to_sym] = v
455
+ }
456
+
457
+ if attributes.key?(:'message_id')
458
+ self.message_id = attributes[:'message_id']
459
+ else
460
+ self.message_id = nil
461
+ end
462
+
463
+ if attributes.key?(:'message_thread_id')
464
+ self.message_thread_id = attributes[:'message_thread_id']
465
+ end
466
+
467
+ if attributes.key?(:'from')
468
+ self.from = attributes[:'from']
469
+ end
470
+
471
+ if attributes.key?(:'sender_chat')
472
+ self.sender_chat = attributes[:'sender_chat']
473
+ end
474
+
475
+ if attributes.key?(:'sender_boost_count')
476
+ self.sender_boost_count = attributes[:'sender_boost_count']
477
+ end
478
+
479
+ if attributes.key?(:'sender_business_bot')
480
+ self.sender_business_bot = attributes[:'sender_business_bot']
481
+ end
482
+
483
+ if attributes.key?(:'date')
484
+ self.date = attributes[:'date']
485
+ else
486
+ self.date = nil
487
+ end
488
+
489
+ if attributes.key?(:'business_connection_id')
490
+ self.business_connection_id = attributes[:'business_connection_id']
491
+ end
492
+
493
+ if attributes.key?(:'chat')
494
+ self.chat = attributes[:'chat']
495
+ else
496
+ self.chat = nil
497
+ end
498
+
499
+ if attributes.key?(:'forward_origin')
500
+ self.forward_origin = attributes[:'forward_origin']
501
+ end
502
+
503
+ if attributes.key?(:'is_topic_message')
504
+ self.is_topic_message = attributes[:'is_topic_message']
505
+ end
506
+
507
+ if attributes.key?(:'is_automatic_forward')
508
+ self.is_automatic_forward = attributes[:'is_automatic_forward']
509
+ end
510
+
511
+ if attributes.key?(:'reply_to_message')
512
+ self.reply_to_message = attributes[:'reply_to_message']
513
+ end
514
+
515
+ if attributes.key?(:'external_reply')
516
+ self.external_reply = attributes[:'external_reply']
517
+ end
518
+
519
+ if attributes.key?(:'quote')
520
+ self.quote = attributes[:'quote']
521
+ end
522
+
523
+ if attributes.key?(:'reply_to_story')
524
+ self.reply_to_story = attributes[:'reply_to_story']
525
+ end
526
+
527
+ if attributes.key?(:'via_bot')
528
+ self.via_bot = attributes[:'via_bot']
529
+ end
530
+
531
+ if attributes.key?(:'edit_date')
532
+ self.edit_date = attributes[:'edit_date']
533
+ end
534
+
535
+ if attributes.key?(:'has_protected_content')
536
+ self.has_protected_content = attributes[:'has_protected_content']
537
+ end
538
+
539
+ if attributes.key?(:'is_from_offline')
540
+ self.is_from_offline = attributes[:'is_from_offline']
541
+ end
542
+
543
+ if attributes.key?(:'media_group_id')
544
+ self.media_group_id = attributes[:'media_group_id']
545
+ end
546
+
547
+ if attributes.key?(:'author_signature')
548
+ self.author_signature = attributes[:'author_signature']
549
+ end
550
+
551
+ if attributes.key?(:'text')
552
+ self.text = attributes[:'text']
553
+ end
554
+
555
+ if attributes.key?(:'entities')
556
+ if (value = attributes[:'entities']).is_a?(Array)
557
+ self.entities = value
558
+ end
559
+ end
560
+
561
+ if attributes.key?(:'link_preview_options')
562
+ self.link_preview_options = attributes[:'link_preview_options']
563
+ end
564
+
565
+ if attributes.key?(:'animation')
566
+ self.animation = attributes[:'animation']
567
+ end
568
+
569
+ if attributes.key?(:'audio')
570
+ self.audio = attributes[:'audio']
571
+ end
572
+
573
+ if attributes.key?(:'document')
574
+ self.document = attributes[:'document']
575
+ end
576
+
577
+ if attributes.key?(:'photo')
578
+ if (value = attributes[:'photo']).is_a?(Array)
579
+ self.photo = value
580
+ end
581
+ end
582
+
583
+ if attributes.key?(:'sticker')
584
+ self.sticker = attributes[:'sticker']
585
+ end
586
+
587
+ if attributes.key?(:'story')
588
+ self.story = attributes[:'story']
589
+ end
590
+
591
+ if attributes.key?(:'video')
592
+ self.video = attributes[:'video']
593
+ end
594
+
595
+ if attributes.key?(:'video_note')
596
+ self.video_note = attributes[:'video_note']
597
+ end
598
+
599
+ if attributes.key?(:'voice')
600
+ self.voice = attributes[:'voice']
601
+ end
602
+
603
+ if attributes.key?(:'caption')
604
+ self.caption = attributes[:'caption']
605
+ end
606
+
607
+ if attributes.key?(:'caption_entities')
608
+ if (value = attributes[:'caption_entities']).is_a?(Array)
609
+ self.caption_entities = value
610
+ end
611
+ end
612
+
613
+ if attributes.key?(:'has_media_spoiler')
614
+ self.has_media_spoiler = attributes[:'has_media_spoiler']
615
+ end
616
+
617
+ if attributes.key?(:'contact')
618
+ self.contact = attributes[:'contact']
619
+ end
620
+
621
+ if attributes.key?(:'dice')
622
+ self.dice = attributes[:'dice']
623
+ end
624
+
625
+ if attributes.key?(:'game')
626
+ self.game = attributes[:'game']
627
+ end
628
+
629
+ if attributes.key?(:'poll')
630
+ self.poll = attributes[:'poll']
631
+ end
632
+
633
+ if attributes.key?(:'venue')
634
+ self.venue = attributes[:'venue']
635
+ end
636
+
637
+ if attributes.key?(:'location')
638
+ self.location = attributes[:'location']
639
+ end
640
+
641
+ if attributes.key?(:'new_chat_members')
642
+ if (value = attributes[:'new_chat_members']).is_a?(Array)
643
+ self.new_chat_members = value
644
+ end
645
+ end
646
+
647
+ if attributes.key?(:'left_chat_member')
648
+ self.left_chat_member = attributes[:'left_chat_member']
649
+ end
650
+
651
+ if attributes.key?(:'new_chat_title')
652
+ self.new_chat_title = attributes[:'new_chat_title']
653
+ end
654
+
655
+ if attributes.key?(:'new_chat_photo')
656
+ if (value = attributes[:'new_chat_photo']).is_a?(Array)
657
+ self.new_chat_photo = value
658
+ end
659
+ end
660
+
661
+ if attributes.key?(:'delete_chat_photo')
662
+ self.delete_chat_photo = attributes[:'delete_chat_photo']
663
+ end
664
+
665
+ if attributes.key?(:'group_chat_created')
666
+ self.group_chat_created = attributes[:'group_chat_created']
667
+ end
668
+
669
+ if attributes.key?(:'supergroup_chat_created')
670
+ self.supergroup_chat_created = attributes[:'supergroup_chat_created']
671
+ end
672
+
673
+ if attributes.key?(:'channel_chat_created')
674
+ self.channel_chat_created = attributes[:'channel_chat_created']
675
+ end
676
+
677
+ if attributes.key?(:'message_auto_delete_timer_changed')
678
+ self.message_auto_delete_timer_changed = attributes[:'message_auto_delete_timer_changed']
679
+ end
680
+
681
+ if attributes.key?(:'migrate_to_chat_id')
682
+ self.migrate_to_chat_id = attributes[:'migrate_to_chat_id']
683
+ end
684
+
685
+ if attributes.key?(:'migrate_from_chat_id')
686
+ self.migrate_from_chat_id = attributes[:'migrate_from_chat_id']
687
+ end
688
+
689
+ if attributes.key?(:'pinned_message')
690
+ self.pinned_message = attributes[:'pinned_message']
691
+ end
692
+
693
+ if attributes.key?(:'invoice')
694
+ self.invoice = attributes[:'invoice']
695
+ end
696
+
697
+ if attributes.key?(:'successful_payment')
698
+ self.successful_payment = attributes[:'successful_payment']
699
+ end
700
+
701
+ if attributes.key?(:'users_shared')
702
+ self.users_shared = attributes[:'users_shared']
703
+ end
704
+
705
+ if attributes.key?(:'chat_shared')
706
+ self.chat_shared = attributes[:'chat_shared']
707
+ end
708
+
709
+ if attributes.key?(:'connected_website')
710
+ self.connected_website = attributes[:'connected_website']
711
+ end
712
+
713
+ if attributes.key?(:'write_access_allowed')
714
+ self.write_access_allowed = attributes[:'write_access_allowed']
715
+ end
716
+
717
+ if attributes.key?(:'passport_data')
718
+ self.passport_data = attributes[:'passport_data']
719
+ end
720
+
721
+ if attributes.key?(:'proximity_alert_triggered')
722
+ self.proximity_alert_triggered = attributes[:'proximity_alert_triggered']
723
+ end
724
+
725
+ if attributes.key?(:'boost_added')
726
+ self.boost_added = attributes[:'boost_added']
727
+ end
728
+
729
+ if attributes.key?(:'forum_topic_created')
730
+ self.forum_topic_created = attributes[:'forum_topic_created']
731
+ end
732
+
733
+ if attributes.key?(:'forum_topic_edited')
734
+ self.forum_topic_edited = attributes[:'forum_topic_edited']
735
+ end
736
+
737
+ if attributes.key?(:'forum_topic_closed')
738
+ self.forum_topic_closed = attributes[:'forum_topic_closed']
739
+ end
740
+
741
+ if attributes.key?(:'forum_topic_reopened')
742
+ self.forum_topic_reopened = attributes[:'forum_topic_reopened']
743
+ end
744
+
745
+ if attributes.key?(:'general_forum_topic_hidden')
746
+ self.general_forum_topic_hidden = attributes[:'general_forum_topic_hidden']
747
+ end
748
+
749
+ if attributes.key?(:'general_forum_topic_unhidden')
750
+ self.general_forum_topic_unhidden = attributes[:'general_forum_topic_unhidden']
751
+ end
752
+
753
+ if attributes.key?(:'giveaway_created')
754
+ self.giveaway_created = attributes[:'giveaway_created']
755
+ end
756
+
757
+ if attributes.key?(:'giveaway')
758
+ self.giveaway = attributes[:'giveaway']
759
+ end
760
+
761
+ if attributes.key?(:'giveaway_winners')
762
+ self.giveaway_winners = attributes[:'giveaway_winners']
763
+ end
764
+
765
+ if attributes.key?(:'giveaway_completed')
766
+ self.giveaway_completed = attributes[:'giveaway_completed']
767
+ end
768
+
769
+ if attributes.key?(:'video_chat_scheduled')
770
+ self.video_chat_scheduled = attributes[:'video_chat_scheduled']
771
+ end
772
+
773
+ if attributes.key?(:'video_chat_started')
774
+ self.video_chat_started = attributes[:'video_chat_started']
775
+ end
776
+
777
+ if attributes.key?(:'video_chat_ended')
778
+ self.video_chat_ended = attributes[:'video_chat_ended']
779
+ end
780
+
781
+ if attributes.key?(:'video_chat_participants_invited')
782
+ self.video_chat_participants_invited = attributes[:'video_chat_participants_invited']
783
+ end
784
+
785
+ if attributes.key?(:'web_app_data')
786
+ self.web_app_data = attributes[:'web_app_data']
787
+ end
788
+
789
+ if attributes.key?(:'reply_markup')
790
+ self.reply_markup = attributes[:'reply_markup']
791
+ end
792
+ end
793
+
794
+ # Show invalid properties with the reasons. Usually used together with valid?
795
+ # @return Array for valid properties with the reasons
796
+ def list_invalid_properties
797
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
798
+ invalid_properties = Array.new
799
+ if @message_id.nil?
800
+ invalid_properties.push('invalid value for "message_id", message_id cannot be nil.')
801
+ end
802
+
803
+ if @date.nil?
804
+ invalid_properties.push('invalid value for "date", date cannot be nil.')
805
+ end
806
+
807
+ if @chat.nil?
808
+ invalid_properties.push('invalid value for "chat", chat cannot be nil.')
809
+ end
810
+
811
+ invalid_properties
812
+ end
813
+
814
+ # Check to see if the all the properties in the model are valid
815
+ # @return true if the model is valid
816
+ def valid?
817
+ warn '[DEPRECATED] the `valid?` method is obsolete'
818
+ return false if @message_id.nil?
819
+ return false if @date.nil?
820
+ return false if @chat.nil?
821
+ true
822
+ end
823
+
824
+ # Checks equality by comparing each attribute.
825
+ # @param [Object] Object to be compared
826
+ def ==(o)
827
+ return true if self.equal?(o)
828
+ self.class == o.class &&
829
+ message_id == o.message_id &&
830
+ message_thread_id == o.message_thread_id &&
831
+ from == o.from &&
832
+ sender_chat == o.sender_chat &&
833
+ sender_boost_count == o.sender_boost_count &&
834
+ sender_business_bot == o.sender_business_bot &&
835
+ date == o.date &&
836
+ business_connection_id == o.business_connection_id &&
837
+ chat == o.chat &&
838
+ forward_origin == o.forward_origin &&
839
+ is_topic_message == o.is_topic_message &&
840
+ is_automatic_forward == o.is_automatic_forward &&
841
+ reply_to_message == o.reply_to_message &&
842
+ external_reply == o.external_reply &&
843
+ quote == o.quote &&
844
+ reply_to_story == o.reply_to_story &&
845
+ via_bot == o.via_bot &&
846
+ edit_date == o.edit_date &&
847
+ has_protected_content == o.has_protected_content &&
848
+ is_from_offline == o.is_from_offline &&
849
+ media_group_id == o.media_group_id &&
850
+ author_signature == o.author_signature &&
851
+ text == o.text &&
852
+ entities == o.entities &&
853
+ link_preview_options == o.link_preview_options &&
854
+ animation == o.animation &&
855
+ audio == o.audio &&
856
+ document == o.document &&
857
+ photo == o.photo &&
858
+ sticker == o.sticker &&
859
+ story == o.story &&
860
+ video == o.video &&
861
+ video_note == o.video_note &&
862
+ voice == o.voice &&
863
+ caption == o.caption &&
864
+ caption_entities == o.caption_entities &&
865
+ has_media_spoiler == o.has_media_spoiler &&
866
+ contact == o.contact &&
867
+ dice == o.dice &&
868
+ game == o.game &&
869
+ poll == o.poll &&
870
+ venue == o.venue &&
871
+ location == o.location &&
872
+ new_chat_members == o.new_chat_members &&
873
+ left_chat_member == o.left_chat_member &&
874
+ new_chat_title == o.new_chat_title &&
875
+ new_chat_photo == o.new_chat_photo &&
876
+ delete_chat_photo == o.delete_chat_photo &&
877
+ group_chat_created == o.group_chat_created &&
878
+ supergroup_chat_created == o.supergroup_chat_created &&
879
+ channel_chat_created == o.channel_chat_created &&
880
+ message_auto_delete_timer_changed == o.message_auto_delete_timer_changed &&
881
+ migrate_to_chat_id == o.migrate_to_chat_id &&
882
+ migrate_from_chat_id == o.migrate_from_chat_id &&
883
+ pinned_message == o.pinned_message &&
884
+ invoice == o.invoice &&
885
+ successful_payment == o.successful_payment &&
886
+ users_shared == o.users_shared &&
887
+ chat_shared == o.chat_shared &&
888
+ connected_website == o.connected_website &&
889
+ write_access_allowed == o.write_access_allowed &&
890
+ passport_data == o.passport_data &&
891
+ proximity_alert_triggered == o.proximity_alert_triggered &&
892
+ boost_added == o.boost_added &&
893
+ forum_topic_created == o.forum_topic_created &&
894
+ forum_topic_edited == o.forum_topic_edited &&
895
+ forum_topic_closed == o.forum_topic_closed &&
896
+ forum_topic_reopened == o.forum_topic_reopened &&
897
+ general_forum_topic_hidden == o.general_forum_topic_hidden &&
898
+ general_forum_topic_unhidden == o.general_forum_topic_unhidden &&
899
+ giveaway_created == o.giveaway_created &&
900
+ giveaway == o.giveaway &&
901
+ giveaway_winners == o.giveaway_winners &&
902
+ giveaway_completed == o.giveaway_completed &&
903
+ video_chat_scheduled == o.video_chat_scheduled &&
904
+ video_chat_started == o.video_chat_started &&
905
+ video_chat_ended == o.video_chat_ended &&
906
+ video_chat_participants_invited == o.video_chat_participants_invited &&
907
+ web_app_data == o.web_app_data &&
908
+ reply_markup == o.reply_markup
909
+ end
910
+
911
+ # @see the `==` method
912
+ # @param [Object] Object to be compared
913
+ def eql?(o)
914
+ self == o
915
+ end
916
+
917
+ # Calculates hash code according to all attributes.
918
+ # @return [Integer] Hash code
919
+ def hash
920
+ [message_id, message_thread_id, from, sender_chat, sender_boost_count, sender_business_bot, date, business_connection_id, chat, forward_origin, is_topic_message, is_automatic_forward, reply_to_message, external_reply, quote, reply_to_story, via_bot, edit_date, has_protected_content, is_from_offline, media_group_id, author_signature, text, entities, link_preview_options, animation, audio, document, photo, sticker, story, video, video_note, voice, caption, caption_entities, has_media_spoiler, contact, dice, game, poll, venue, location, new_chat_members, left_chat_member, new_chat_title, new_chat_photo, delete_chat_photo, group_chat_created, supergroup_chat_created, channel_chat_created, message_auto_delete_timer_changed, migrate_to_chat_id, migrate_from_chat_id, pinned_message, invoice, successful_payment, users_shared, chat_shared, connected_website, write_access_allowed, passport_data, proximity_alert_triggered, boost_added, forum_topic_created, forum_topic_edited, forum_topic_closed, forum_topic_reopened, general_forum_topic_hidden, general_forum_topic_unhidden, giveaway_created, giveaway, giveaway_winners, giveaway_completed, video_chat_scheduled, video_chat_started, video_chat_ended, video_chat_participants_invited, web_app_data, reply_markup].hash
921
+ end
922
+
923
+ # Builds the object from hash
924
+ # @param [Hash] attributes Model attributes in the form of hash
925
+ # @return [Object] Returns the model itself
926
+ def self.build_from_hash(attributes)
927
+ return nil unless attributes.is_a?(Hash)
928
+ attributes = attributes.transform_keys(&:to_sym)
929
+ transformed_hash = {}
930
+ openapi_types.each_pair do |key, type|
931
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
932
+ transformed_hash["#{key}"] = nil
933
+ elsif type =~ /\AArray<(.*)>/i
934
+ # check to ensure the input is an array given that the attribute
935
+ # is documented as an array but the input is not
936
+ if attributes[attribute_map[key]].is_a?(Array)
937
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
938
+ end
939
+ elsif !attributes[attribute_map[key]].nil?
940
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
941
+ end
942
+ end
943
+ new(transformed_hash)
944
+ end
945
+
946
+ # Deserializes the data based on type
947
+ # @param string type Data type
948
+ # @param string value Value to be deserialized
949
+ # @return [Object] Deserialized data
950
+ def self._deserialize(type, value)
951
+ case type.to_sym
952
+ when :Time
953
+ Time.parse(value)
954
+ when :Date
955
+ Date.parse(value)
956
+ when :String
957
+ value.to_s
958
+ when :Integer
959
+ value.to_i
960
+ when :Float
961
+ value.to_f
962
+ when :Boolean
963
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
964
+ true
965
+ else
966
+ false
967
+ end
968
+ when :Object
969
+ # generic object (usually a Hash), return directly
970
+ value
971
+ when /\AArray<(?<inner_type>.+)>\z/
972
+ inner_type = Regexp.last_match[:inner_type]
973
+ value.map { |v| _deserialize(inner_type, v) }
974
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
975
+ k_type = Regexp.last_match[:k_type]
976
+ v_type = Regexp.last_match[:v_type]
977
+ {}.tap do |hash|
978
+ value.each do |k, v|
979
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
980
+ end
981
+ end
982
+ else # model
983
+ # models (e.g. Pet) or oneOf
984
+ klass = TelegramBot.const_get(type)
985
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
986
+ end
987
+ end
988
+
989
+ # Returns the string representation of the object
990
+ # @return [String] String presentation of the object
991
+ def to_s
992
+ to_hash.to_s
993
+ end
994
+
995
+ # to_body is an alias to to_hash (backward compatibility)
996
+ # @return [Hash] Returns the object in the form of hash
997
+ def to_body
998
+ to_hash
999
+ end
1000
+
1001
+ # Returns the object in the form of hash
1002
+ # @return [Hash] Returns the object in the form of hash
1003
+ def to_hash
1004
+ hash = {}
1005
+ self.class.attribute_map.each_pair do |attr, param|
1006
+ value = self.send(attr)
1007
+ if value.nil?
1008
+ is_nullable = self.class.openapi_nullable.include?(attr)
1009
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
1010
+ end
1011
+
1012
+ hash[param] = _to_hash(value)
1013
+ end
1014
+ hash
1015
+ end
1016
+
1017
+ # Outputs non-array value in the form of hash
1018
+ # For object, use to_hash. Otherwise, just return the value
1019
+ # @param [Object] value Any valid value
1020
+ # @return [Hash] Returns the value in the form of hash
1021
+ def _to_hash(value)
1022
+ if value.is_a?(Array)
1023
+ value.compact.map { |v| _to_hash(v) }
1024
+ elsif value.is_a?(Hash)
1025
+ {}.tap do |hash|
1026
+ value.each { |k, v| hash[k] = _to_hash(v) }
1027
+ end
1028
+ elsif value.respond_to? :to_hash
1029
+ value.to_hash
1030
+ else
1031
+ value
1032
+ end
1033
+ end
1034
+
1035
+ end
1036
+
1037
+ end