line-bot-api 1.29.1 → 1.30.0

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 (650) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +38 -8
  3. data/README.md +1 -1
  4. data/lib/line/bot/{api → v1/api}/errors.rb +2 -0
  5. data/lib/line/bot/{api → v1/api}/version.rb +3 -1
  6. data/lib/line/bot/{api.rb → v1/api.rb} +3 -1
  7. data/lib/line/bot/{client.rb → v1/client.rb} +563 -3
  8. data/lib/line/bot/{event → v1/event}/account_link.rb +4 -0
  9. data/lib/line/bot/{event → v1/event}/base.rb +6 -0
  10. data/lib/line/bot/{event → v1/event}/beacon.rb +4 -0
  11. data/lib/line/bot/{event → v1/event}/follow.rb +4 -0
  12. data/lib/line/bot/{event → v1/event}/join.rb +4 -0
  13. data/lib/line/bot/{event → v1/event}/leave.rb +4 -0
  14. data/lib/line/bot/{event → v1/event}/member_joined.rb +4 -0
  15. data/lib/line/bot/{event → v1/event}/member_left.rb +4 -0
  16. data/lib/line/bot/{event → v1/event}/message.rb +6 -0
  17. data/lib/line/bot/{event → v1/event}/postback.rb +4 -0
  18. data/lib/line/bot/{event → v1/event}/things.rb +6 -0
  19. data/lib/line/bot/{event → v1/event}/unfollow.rb +4 -0
  20. data/lib/line/bot/{event → v1/event}/unsend.rb +4 -0
  21. data/lib/line/bot/{event → v1/event}/video_play_complete.rb +4 -0
  22. data/lib/line/bot/{event.rb → v1/event.rb} +14 -14
  23. data/lib/line/bot/{httpclient.rb → v1/httpclient.rb} +22 -0
  24. data/lib/line/bot/{util.rb → v1/util.rb} +4 -0
  25. data/lib/line/bot/v2/channel_access_token/api/channel_access_token_client.rb +533 -0
  26. data/lib/line/bot/v2/channel_access_token/core.rb +20 -0
  27. data/lib/line/bot/v2/channel_access_token/model/channel_access_token_key_ids_response.rb +68 -0
  28. data/lib/line/bot/v2/channel_access_token/model/error_response.rb +73 -0
  29. data/lib/line/bot/v2/channel_access_token/model/issue_channel_access_token_response.rb +86 -0
  30. data/lib/line/bot/v2/channel_access_token/model/issue_short_lived_channel_access_token_response.rb +80 -0
  31. data/lib/line/bot/v2/channel_access_token/model/issue_stateless_channel_access_token_response.rb +80 -0
  32. data/lib/line/bot/v2/channel_access_token/model/verify_channel_access_token_response.rb +79 -0
  33. data/lib/line/bot/v2/http_client.rb +165 -0
  34. data/lib/line/bot/v2/insight/api/insight_client.rb +314 -0
  35. data/lib/line/bot/v2/insight/core.rb +32 -0
  36. data/lib/line/bot/v2/insight/model/age_tile.rb +72 -0
  37. data/lib/line/bot/v2/insight/model/app_type_tile.rb +72 -0
  38. data/lib/line/bot/v2/insight/model/area_tile.rb +72 -0
  39. data/lib/line/bot/v2/insight/model/error_detail.rb +72 -0
  40. data/lib/line/bot/v2/insight/model/error_response.rb +79 -0
  41. data/lib/line/bot/v2/insight/model/gender_tile.rb +72 -0
  42. data/lib/line/bot/v2/insight/model/get_friends_demographics_response.rb +128 -0
  43. data/lib/line/bot/v2/insight/model/get_message_event_response.rb +92 -0
  44. data/lib/line/bot/v2/insight/model/get_message_event_response_click.rb +90 -0
  45. data/lib/line/bot/v2/insight/model/get_message_event_response_message.rb +132 -0
  46. data/lib/line/bot/v2/insight/model/get_message_event_response_overview.rb +103 -0
  47. data/lib/line/bot/v2/insight/model/get_number_of_followers_response.rb +86 -0
  48. data/lib/line/bot/v2/insight/model/get_number_of_message_deliveries_response.rb +128 -0
  49. data/lib/line/bot/v2/insight/model/get_statistics_per_unit_response.rb +92 -0
  50. data/lib/line/bot/v2/insight/model/get_statistics_per_unit_response_click.rb +91 -0
  51. data/lib/line/bot/v2/insight/model/get_statistics_per_unit_response_message.rb +139 -0
  52. data/lib/line/bot/v2/insight/model/get_statistics_per_unit_response_overview.rb +86 -0
  53. data/lib/line/bot/v2/insight/model/subscription_period_tile.rb +72 -0
  54. data/lib/line/bot/v2/liff/api/liff_client.rb +273 -0
  55. data/lib/line/bot/v2/liff/core.rb +24 -0
  56. data/lib/line/bot/v2/liff/model/add_liff_app_request.rb +97 -0
  57. data/lib/line/bot/v2/liff/model/add_liff_app_response.rb +66 -0
  58. data/lib/line/bot/v2/liff/model/get_all_liff_apps_response.rb +72 -0
  59. data/lib/line/bot/v2/liff/model/liff_app.rb +102 -0
  60. data/lib/line/bot/v2/liff/model/liff_bot_prompt.rb +21 -0
  61. data/lib/line/bot/v2/liff/model/liff_features.rb +72 -0
  62. data/lib/line/bot/v2/liff/model/liff_scope.rb +21 -0
  63. data/lib/line/bot/v2/liff/model/liff_view.rb +79 -0
  64. data/lib/line/bot/v2/liff/model/update_liff_app_request.rb +97 -0
  65. data/lib/line/bot/v2/liff/model/update_liff_view.rb +79 -0
  66. data/lib/line/bot/v2/manage_audience/api/manage_audience_blob_client.rb +182 -0
  67. data/lib/line/bot/v2/manage_audience/api/manage_audience_client.rb +616 -0
  68. data/lib/line/bot/v2/manage_audience/core.rb +42 -0
  69. data/lib/line/bot/v2/manage_audience/model/adaccount.rb +67 -0
  70. data/lib/line/bot/v2/manage_audience/model/add_audience_to_audience_group_request.rb +86 -0
  71. data/lib/line/bot/v2/manage_audience/model/audience.rb +67 -0
  72. data/lib/line/bot/v2/manage_audience/model/audience_group.rb +133 -0
  73. data/lib/line/bot/v2/manage_audience/model/audience_group_create_route.rb +21 -0
  74. data/lib/line/bot/v2/manage_audience/model/audience_group_failed_type.rb +21 -0
  75. data/lib/line/bot/v2/manage_audience/model/audience_group_job.rb +110 -0
  76. data/lib/line/bot/v2/manage_audience/model/audience_group_job_failed_type.rb +21 -0
  77. data/lib/line/bot/v2/manage_audience/model/audience_group_job_status.rb +21 -0
  78. data/lib/line/bot/v2/manage_audience/model/audience_group_job_type.rb +21 -0
  79. data/lib/line/bot/v2/manage_audience/model/audience_group_permission.rb +21 -0
  80. data/lib/line/bot/v2/manage_audience/model/audience_group_status.rb +21 -0
  81. data/lib/line/bot/v2/manage_audience/model/audience_group_type.rb +21 -0
  82. data/lib/line/bot/v2/manage_audience/model/create_audience_group_request.rb +92 -0
  83. data/lib/line/bot/v2/manage_audience/model/create_audience_group_response.rb +110 -0
  84. data/lib/line/bot/v2/manage_audience/model/create_click_based_audience_group_request.rb +80 -0
  85. data/lib/line/bot/v2/manage_audience/model/create_click_based_audience_group_response.rb +122 -0
  86. data/lib/line/bot/v2/manage_audience/model/create_imp_based_audience_group_request.rb +74 -0
  87. data/lib/line/bot/v2/manage_audience/model/create_imp_based_audience_group_response.rb +92 -0
  88. data/lib/line/bot/v2/manage_audience/model/detailed_owner.rb +79 -0
  89. data/lib/line/bot/v2/manage_audience/model/error_detail.rb +72 -0
  90. data/lib/line/bot/v2/manage_audience/model/error_response.rb +79 -0
  91. data/lib/line/bot/v2/manage_audience/model/get_audience_data_response.rb +86 -0
  92. data/lib/line/bot/v2/manage_audience/model/get_audience_groups_response.rb +104 -0
  93. data/lib/line/bot/v2/manage_audience/model/get_shared_audience_data_response.rb +86 -0
  94. data/lib/line/bot/v2/manage_audience/model/get_shared_audience_groups_response.rb +104 -0
  95. data/lib/line/bot/v2/manage_audience/model/update_audience_group_description_request.rb +68 -0
  96. data/lib/line/bot/v2/messaging_api/api/messaging_api_blob_client.rb +282 -0
  97. data/lib/line/bot/v2/messaging_api/api/messaging_api_client.rb +3354 -0
  98. data/lib/line/bot/v2/messaging_api/core.rb +173 -0
  99. data/lib/line/bot/v2/messaging_api/model/action.rb +92 -0
  100. data/lib/line/bot/v2/messaging_api/model/age_demographic.rb +20 -0
  101. data/lib/line/bot/v2/messaging_api/model/age_demographic_filter.rb +78 -0
  102. data/lib/line/bot/v2/messaging_api/model/all_mention_target.rb +67 -0
  103. data/lib/line/bot/v2/messaging_api/model/alt_uri.rb +66 -0
  104. data/lib/line/bot/v2/messaging_api/model/app_type_demographic.rb +20 -0
  105. data/lib/line/bot/v2/messaging_api/model/app_type_demographic_filter.rb +72 -0
  106. data/lib/line/bot/v2/messaging_api/model/area_demographic.rb +21 -0
  107. data/lib/line/bot/v2/messaging_api/model/area_demographic_filter.rb +72 -0
  108. data/lib/line/bot/v2/messaging_api/model/audience_recipient.rb +72 -0
  109. data/lib/line/bot/v2/messaging_api/model/audio_message.rb +91 -0
  110. data/lib/line/bot/v2/messaging_api/model/bot_info_response.rb +103 -0
  111. data/lib/line/bot/v2/messaging_api/model/broadcast_request.rb +79 -0
  112. data/lib/line/bot/v2/messaging_api/model/buttons_template.rb +120 -0
  113. data/lib/line/bot/v2/messaging_api/model/camera_action.rb +72 -0
  114. data/lib/line/bot/v2/messaging_api/model/camera_roll_action.rb +72 -0
  115. data/lib/line/bot/v2/messaging_api/model/carousel_column.rb +103 -0
  116. data/lib/line/bot/v2/messaging_api/model/carousel_template.rb +90 -0
  117. data/lib/line/bot/v2/messaging_api/model/chat_reference.rb +68 -0
  118. data/lib/line/bot/v2/messaging_api/model/clipboard_action.rb +79 -0
  119. data/lib/line/bot/v2/messaging_api/model/clipboard_imagemap_action.rb +85 -0
  120. data/lib/line/bot/v2/messaging_api/model/confirm_template.rb +84 -0
  121. data/lib/line/bot/v2/messaging_api/model/create_rich_menu_alias_request.rb +73 -0
  122. data/lib/line/bot/v2/messaging_api/model/datetime_picker_action.rb +103 -0
  123. data/lib/line/bot/v2/messaging_api/model/demographic_filter.rb +82 -0
  124. data/lib/line/bot/v2/messaging_api/model/emoji.rb +78 -0
  125. data/lib/line/bot/v2/messaging_api/model/emoji_substitution_object.rb +80 -0
  126. data/lib/line/bot/v2/messaging_api/model/error_detail.rb +72 -0
  127. data/lib/line/bot/v2/messaging_api/model/error_response.rb +91 -0
  128. data/lib/line/bot/v2/messaging_api/model/filter.rb +67 -0
  129. data/lib/line/bot/v2/messaging_api/model/flex_block_style.rb +78 -0
  130. data/lib/line/bot/v2/messaging_api/model/flex_box.rb +234 -0
  131. data/lib/line/bot/v2/messaging_api/model/flex_box_background.rb +76 -0
  132. data/lib/line/bot/v2/messaging_api/model/flex_box_border_width.rb +21 -0
  133. data/lib/line/bot/v2/messaging_api/model/flex_box_corner_radius.rb +21 -0
  134. data/lib/line/bot/v2/messaging_api/model/flex_box_linear_gradient.rb +96 -0
  135. data/lib/line/bot/v2/messaging_api/model/flex_box_padding.rb +21 -0
  136. data/lib/line/bot/v2/messaging_api/model/flex_box_spacing.rb +21 -0
  137. data/lib/line/bot/v2/messaging_api/model/flex_bubble.rb +114 -0
  138. data/lib/line/bot/v2/messaging_api/model/flex_bubble_styles.rb +84 -0
  139. data/lib/line/bot/v2/messaging_api/model/flex_button.rb +150 -0
  140. data/lib/line/bot/v2/messaging_api/model/flex_carousel.rb +78 -0
  141. data/lib/line/bot/v2/messaging_api/model/flex_component.rb +84 -0
  142. data/lib/line/bot/v2/messaging_api/model/flex_container.rb +77 -0
  143. data/lib/line/bot/v2/messaging_api/model/flex_filler.rb +72 -0
  144. data/lib/line/bot/v2/messaging_api/model/flex_icon.rb +127 -0
  145. data/lib/line/bot/v2/messaging_api/model/flex_icon_size.rb +21 -0
  146. data/lib/line/bot/v2/messaging_api/model/flex_image.rb +163 -0
  147. data/lib/line/bot/v2/messaging_api/model/flex_image_size.rb +21 -0
  148. data/lib/line/bot/v2/messaging_api/model/flex_margin.rb +21 -0
  149. data/lib/line/bot/v2/messaging_api/model/flex_message.rb +91 -0
  150. data/lib/line/bot/v2/messaging_api/model/flex_offset.rb +21 -0
  151. data/lib/line/bot/v2/messaging_api/model/flex_separator.rb +78 -0
  152. data/lib/line/bot/v2/messaging_api/model/flex_span.rb +102 -0
  153. data/lib/line/bot/v2/messaging_api/model/flex_span_size.rb +21 -0
  154. data/lib/line/bot/v2/messaging_api/model/flex_text.rb +204 -0
  155. data/lib/line/bot/v2/messaging_api/model/flex_text_font_size.rb +21 -0
  156. data/lib/line/bot/v2/messaging_api/model/flex_video.rb +96 -0
  157. data/lib/line/bot/v2/messaging_api/model/gender_demographic.rb +20 -0
  158. data/lib/line/bot/v2/messaging_api/model/gender_demographic_filter.rb +72 -0
  159. data/lib/line/bot/v2/messaging_api/model/get_aggregation_unit_name_list_response.rb +73 -0
  160. data/lib/line/bot/v2/messaging_api/model/get_aggregation_unit_usage_response.rb +67 -0
  161. data/lib/line/bot/v2/messaging_api/model/get_followers_response.rb +73 -0
  162. data/lib/line/bot/v2/messaging_api/model/get_joined_membership_users_response.rb +74 -0
  163. data/lib/line/bot/v2/messaging_api/model/get_membership_subscription_response.rb +74 -0
  164. data/lib/line/bot/v2/messaging_api/model/get_message_content_transcoding_response.rb +68 -0
  165. data/lib/line/bot/v2/messaging_api/model/get_webhook_endpoint_response.rb +73 -0
  166. data/lib/line/bot/v2/messaging_api/model/group_member_count_response.rb +67 -0
  167. data/lib/line/bot/v2/messaging_api/model/group_summary_response.rb +79 -0
  168. data/lib/line/bot/v2/messaging_api/model/group_user_profile_response.rb +79 -0
  169. data/lib/line/bot/v2/messaging_api/model/image_carousel_column.rb +72 -0
  170. data/lib/line/bot/v2/messaging_api/model/image_carousel_template.rb +78 -0
  171. data/lib/line/bot/v2/messaging_api/model/image_message.rb +91 -0
  172. data/lib/line/bot/v2/messaging_api/model/imagemap_action.rb +85 -0
  173. data/lib/line/bot/v2/messaging_api/model/imagemap_area.rb +84 -0
  174. data/lib/line/bot/v2/messaging_api/model/imagemap_base_size.rb +72 -0
  175. data/lib/line/bot/v2/messaging_api/model/imagemap_external_link.rb +72 -0
  176. data/lib/line/bot/v2/messaging_api/model/imagemap_message.rb +115 -0
  177. data/lib/line/bot/v2/messaging_api/model/imagemap_video.rb +84 -0
  178. data/lib/line/bot/v2/messaging_api/model/issue_link_token_response.rb +67 -0
  179. data/lib/line/bot/v2/messaging_api/model/limit.rb +74 -0
  180. data/lib/line/bot/v2/messaging_api/model/location_action.rb +72 -0
  181. data/lib/line/bot/v2/messaging_api/model/location_message.rb +103 -0
  182. data/lib/line/bot/v2/messaging_api/model/mark_messages_as_read_request.rb +67 -0
  183. data/lib/line/bot/v2/messaging_api/model/members_ids_response.rb +72 -0
  184. data/lib/line/bot/v2/messaging_api/model/membership.rb +120 -0
  185. data/lib/line/bot/v2/messaging_api/model/membership_list_response.rb +73 -0
  186. data/lib/line/bot/v2/messaging_api/model/mention_substitution_object.rb +74 -0
  187. data/lib/line/bot/v2/messaging_api/model/mention_target.rb +77 -0
  188. data/lib/line/bot/v2/messaging_api/model/message.rb +98 -0
  189. data/lib/line/bot/v2/messaging_api/model/message_action.rb +78 -0
  190. data/lib/line/bot/v2/messaging_api/model/message_imagemap_action.rb +84 -0
  191. data/lib/line/bot/v2/messaging_api/model/message_quota_response.rb +73 -0
  192. data/lib/line/bot/v2/messaging_api/model/multicast_request.rb +91 -0
  193. data/lib/line/bot/v2/messaging_api/model/narrowcast_progress_response.rb +109 -0
  194. data/lib/line/bot/v2/messaging_api/model/narrowcast_request.rb +97 -0
  195. data/lib/line/bot/v2/messaging_api/model/number_of_messages_response.rb +72 -0
  196. data/lib/line/bot/v2/messaging_api/model/operator_demographic_filter.rb +96 -0
  197. data/lib/line/bot/v2/messaging_api/model/operator_recipient.rb +96 -0
  198. data/lib/line/bot/v2/messaging_api/model/pnp_messages_request.rb +85 -0
  199. data/lib/line/bot/v2/messaging_api/model/postback_action.rb +102 -0
  200. data/lib/line/bot/v2/messaging_api/model/push_message_request.rb +91 -0
  201. data/lib/line/bot/v2/messaging_api/model/push_message_response.rb +73 -0
  202. data/lib/line/bot/v2/messaging_api/model/quick_reply.rb +74 -0
  203. data/lib/line/bot/v2/messaging_api/model/quick_reply_item.rb +79 -0
  204. data/lib/line/bot/v2/messaging_api/model/quota_consumption_response.rb +67 -0
  205. data/lib/line/bot/v2/messaging_api/model/quota_type.rb +22 -0
  206. data/lib/line/bot/v2/messaging_api/model/recipient.rb +79 -0
  207. data/lib/line/bot/v2/messaging_api/model/redelivery_recipient.rb +72 -0
  208. data/lib/line/bot/v2/messaging_api/model/reply_message_request.rb +85 -0
  209. data/lib/line/bot/v2/messaging_api/model/reply_message_response.rb +73 -0
  210. data/lib/line/bot/v2/messaging_api/model/rich_menu_alias_list_response.rb +73 -0
  211. data/lib/line/bot/v2/messaging_api/model/rich_menu_alias_response.rb +72 -0
  212. data/lib/line/bot/v2/messaging_api/model/rich_menu_area.rb +73 -0
  213. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_link_operation.rb +79 -0
  214. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_operation.rb +80 -0
  215. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_progress_phase.rb +21 -0
  216. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_progress_response.rb +79 -0
  217. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_request.rb +78 -0
  218. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_unlink_all_operation.rb +67 -0
  219. data/lib/line/bot/v2/messaging_api/model/rich_menu_batch_unlink_operation.rb +73 -0
  220. data/lib/line/bot/v2/messaging_api/model/rich_menu_bounds.rb +86 -0
  221. data/lib/line/bot/v2/messaging_api/model/rich_menu_bulk_link_request.rb +73 -0
  222. data/lib/line/bot/v2/messaging_api/model/rich_menu_bulk_unlink_request.rb +67 -0
  223. data/lib/line/bot/v2/messaging_api/model/rich_menu_id_response.rb +66 -0
  224. data/lib/line/bot/v2/messaging_api/model/rich_menu_list_response.rb +73 -0
  225. data/lib/line/bot/v2/messaging_api/model/rich_menu_request.rb +96 -0
  226. data/lib/line/bot/v2/messaging_api/model/rich_menu_response.rb +102 -0
  227. data/lib/line/bot/v2/messaging_api/model/rich_menu_size.rb +73 -0
  228. data/lib/line/bot/v2/messaging_api/model/rich_menu_switch_action.rb +84 -0
  229. data/lib/line/bot/v2/messaging_api/model/room_member_count_response.rb +67 -0
  230. data/lib/line/bot/v2/messaging_api/model/room_user_profile_response.rb +79 -0
  231. data/lib/line/bot/v2/messaging_api/model/sender.rb +73 -0
  232. data/lib/line/bot/v2/messaging_api/model/sent_message.rb +72 -0
  233. data/lib/line/bot/v2/messaging_api/model/set_webhook_endpoint_request.rb +67 -0
  234. data/lib/line/bot/v2/messaging_api/model/show_loading_animation_request.rb +73 -0
  235. data/lib/line/bot/v2/messaging_api/model/sticker_message.rb +97 -0
  236. data/lib/line/bot/v2/messaging_api/model/subscribed_membership_plan.rb +97 -0
  237. data/lib/line/bot/v2/messaging_api/model/subscribed_membership_user.rb +85 -0
  238. data/lib/line/bot/v2/messaging_api/model/subscription.rb +73 -0
  239. data/lib/line/bot/v2/messaging_api/model/subscription_period_demographic.rb +20 -0
  240. data/lib/line/bot/v2/messaging_api/model/subscription_period_demographic_filter.rb +78 -0
  241. data/lib/line/bot/v2/messaging_api/model/substitution_object.rb +78 -0
  242. data/lib/line/bot/v2/messaging_api/model/template.rb +79 -0
  243. data/lib/line/bot/v2/messaging_api/model/template_image_aspect_ratio.rb +21 -0
  244. data/lib/line/bot/v2/messaging_api/model/template_image_size.rb +21 -0
  245. data/lib/line/bot/v2/messaging_api/model/template_message.rb +91 -0
  246. data/lib/line/bot/v2/messaging_api/model/test_webhook_endpoint_request.rb +67 -0
  247. data/lib/line/bot/v2/messaging_api/model/test_webhook_endpoint_response.rb +91 -0
  248. data/lib/line/bot/v2/messaging_api/model/text_message.rb +103 -0
  249. data/lib/line/bot/v2/messaging_api/model/text_message_v2.rb +97 -0
  250. data/lib/line/bot/v2/messaging_api/model/update_rich_menu_alias_request.rb +67 -0
  251. data/lib/line/bot/v2/messaging_api/model/uri_action.rb +84 -0
  252. data/lib/line/bot/v2/messaging_api/model/uri_imagemap_action.rb +84 -0
  253. data/lib/line/bot/v2/messaging_api/model/user_mention_target.rb +73 -0
  254. data/lib/line/bot/v2/messaging_api/model/user_profile_response.rb +91 -0
  255. data/lib/line/bot/v2/messaging_api/model/validate_message_request.rb +72 -0
  256. data/lib/line/bot/v2/messaging_api/model/video_message.rb +97 -0
  257. data/lib/line/bot/v2/module/api/line_module_client.rb +247 -0
  258. data/lib/line/bot/v2/module/core.rb +18 -0
  259. data/lib/line/bot/v2/module/model/acquire_chat_control_request.rb +74 -0
  260. data/lib/line/bot/v2/module/model/detach_module_request.rb +68 -0
  261. data/lib/line/bot/v2/module/model/get_modules_response.rb +80 -0
  262. data/lib/line/bot/v2/module/model/module_bot.rb +92 -0
  263. data/lib/line/bot/v2/module_attach/api/line_module_attach_client.rb +160 -0
  264. data/lib/line/bot/v2/module_attach/core.rb +15 -0
  265. data/lib/line/bot/v2/module_attach/model/attach_module_response.rb +73 -0
  266. data/lib/line/bot/v2/reserved_words.rb +50 -0
  267. data/lib/line/bot/v2/shop/api/shop_client.rb +95 -0
  268. data/lib/line/bot/v2/shop/core.rb +16 -0
  269. data/lib/line/bot/v2/shop/model/error_response.rb +67 -0
  270. data/lib/line/bot/v2/shop/model/mission_sticker_request.rb +86 -0
  271. data/lib/line/bot/v2/utils.rb +143 -0
  272. data/lib/line/bot/v2/webhook/core.rb +77 -0
  273. data/lib/line/bot/v2/webhook/model/account_link_event.rb +109 -0
  274. data/lib/line/bot/v2/webhook/model/action_result.rb +72 -0
  275. data/lib/line/bot/v2/webhook/model/activated_event.rb +103 -0
  276. data/lib/line/bot/v2/webhook/model/all_mentionee.rb +79 -0
  277. data/lib/line/bot/v2/webhook/model/attached_module_content.rb +78 -0
  278. data/lib/line/bot/v2/webhook/model/audio_message_content.rb +84 -0
  279. data/lib/line/bot/v2/webhook/model/beacon_content.rb +78 -0
  280. data/lib/line/bot/v2/webhook/model/beacon_event.rb +109 -0
  281. data/lib/line/bot/v2/webhook/model/bot_resumed_event.rb +97 -0
  282. data/lib/line/bot/v2/webhook/model/bot_suspended_event.rb +97 -0
  283. data/lib/line/bot/v2/webhook/model/callback_request.rb +80 -0
  284. data/lib/line/bot/v2/webhook/model/chat_control.rb +66 -0
  285. data/lib/line/bot/v2/webhook/model/content_provider.rb +79 -0
  286. data/lib/line/bot/v2/webhook/model/deactivated_event.rb +97 -0
  287. data/lib/line/bot/v2/webhook/model/delivery_context.rb +67 -0
  288. data/lib/line/bot/v2/webhook/model/detached_module_content.rb +78 -0
  289. data/lib/line/bot/v2/webhook/model/emoji.rb +84 -0
  290. data/lib/line/bot/v2/webhook/model/event.rb +126 -0
  291. data/lib/line/bot/v2/webhook/model/event_mode.rb +21 -0
  292. data/lib/line/bot/v2/webhook/model/file_message_content.rb +84 -0
  293. data/lib/line/bot/v2/webhook/model/follow_detail.rb +66 -0
  294. data/lib/line/bot/v2/webhook/model/follow_event.rb +109 -0
  295. data/lib/line/bot/v2/webhook/model/group_source.rb +78 -0
  296. data/lib/line/bot/v2/webhook/model/image_message_content.rb +90 -0
  297. data/lib/line/bot/v2/webhook/model/image_set.rb +78 -0
  298. data/lib/line/bot/v2/webhook/model/join_event.rb +103 -0
  299. data/lib/line/bot/v2/webhook/model/joined_members.rb +72 -0
  300. data/lib/line/bot/v2/webhook/model/joined_membership_content.rb +72 -0
  301. data/lib/line/bot/v2/webhook/model/leave_event.rb +97 -0
  302. data/lib/line/bot/v2/webhook/model/left_members.rb +72 -0
  303. data/lib/line/bot/v2/webhook/model/left_membership_content.rb +72 -0
  304. data/lib/line/bot/v2/webhook/model/link_content.rb +73 -0
  305. data/lib/line/bot/v2/webhook/model/link_things_content.rb +72 -0
  306. data/lib/line/bot/v2/webhook/model/location_message_content.rb +96 -0
  307. data/lib/line/bot/v2/webhook/model/member_joined_event.rb +109 -0
  308. data/lib/line/bot/v2/webhook/model/member_left_event.rb +103 -0
  309. data/lib/line/bot/v2/webhook/model/membership_content.rb +79 -0
  310. data/lib/line/bot/v2/webhook/model/membership_event.rb +109 -0
  311. data/lib/line/bot/v2/webhook/model/mention.rb +72 -0
  312. data/lib/line/bot/v2/webhook/model/mentionee.rb +90 -0
  313. data/lib/line/bot/v2/webhook/model/message_content.rb +89 -0
  314. data/lib/line/bot/v2/webhook/model/message_event.rb +109 -0
  315. data/lib/line/bot/v2/webhook/model/module_content.rb +77 -0
  316. data/lib/line/bot/v2/webhook/model/module_event.rb +103 -0
  317. data/lib/line/bot/v2/webhook/model/pnp_delivery.rb +67 -0
  318. data/lib/line/bot/v2/webhook/model/pnp_delivery_completion_event.rb +103 -0
  319. data/lib/line/bot/v2/webhook/model/postback_content.rb +72 -0
  320. data/lib/line/bot/v2/webhook/model/postback_event.rb +109 -0
  321. data/lib/line/bot/v2/webhook/model/renewed_membership_content.rb +72 -0
  322. data/lib/line/bot/v2/webhook/model/room_source.rb +78 -0
  323. data/lib/line/bot/v2/webhook/model/scenario_result.rb +115 -0
  324. data/lib/line/bot/v2/webhook/model/scenario_result_things_content.rb +78 -0
  325. data/lib/line/bot/v2/webhook/model/source.rb +80 -0
  326. data/lib/line/bot/v2/webhook/model/sticker_message_content.rb +115 -0
  327. data/lib/line/bot/v2/webhook/model/text_message_content.rb +108 -0
  328. data/lib/line/bot/v2/webhook/model/things_content.rb +78 -0
  329. data/lib/line/bot/v2/webhook/model/things_event.rb +109 -0
  330. data/lib/line/bot/v2/webhook/model/unfollow_event.rb +97 -0
  331. data/lib/line/bot/v2/webhook/model/unlink_things_content.rb +72 -0
  332. data/lib/line/bot/v2/webhook/model/unsend_detail.rb +66 -0
  333. data/lib/line/bot/v2/webhook/model/unsend_event.rb +103 -0
  334. data/lib/line/bot/v2/webhook/model/user_mentionee.rb +91 -0
  335. data/lib/line/bot/v2/webhook/model/user_source.rb +72 -0
  336. data/lib/line/bot/v2/webhook/model/video_message_content.rb +90 -0
  337. data/lib/line/bot/v2/webhook/model/video_play_complete.rb +66 -0
  338. data/lib/line/bot/v2/webhook/model/video_play_complete_event.rb +109 -0
  339. data/lib/line/bot/v2/webhook_parser.rb +94 -0
  340. data/lib/line/bot/version.rb +7 -0
  341. data/lib/line/bot.rb +24 -9
  342. data/line-bot-api.gemspec +23 -18
  343. data/sig/line/bot/v2/channel_access_token/api/channel_access_token_client.rbs +327 -0
  344. data/sig/line/bot/v2/channel_access_token/model/channel_access_token_key_ids_response.rbs +41 -0
  345. data/sig/line/bot/v2/channel_access_token/model/error_response.rbs +43 -0
  346. data/sig/line/bot/v2/channel_access_token/model/issue_channel_access_token_response.rbs +50 -0
  347. data/sig/line/bot/v2/channel_access_token/model/issue_short_lived_channel_access_token_response.rbs +47 -0
  348. data/sig/line/bot/v2/channel_access_token/model/issue_stateless_channel_access_token_response.rbs +47 -0
  349. data/sig/line/bot/v2/channel_access_token/model/verify_channel_access_token_response.rbs +46 -0
  350. data/sig/line/bot/v2/http_client.rbs +111 -0
  351. data/sig/line/bot/v2/insight/api/insight_client.rbs +196 -0
  352. data/sig/line/bot/v2/insight/model/age_tile.rbs +42 -0
  353. data/sig/line/bot/v2/insight/model/app_type_tile.rbs +42 -0
  354. data/sig/line/bot/v2/insight/model/area_tile.rbs +42 -0
  355. data/sig/line/bot/v2/insight/model/error_detail.rbs +42 -0
  356. data/sig/line/bot/v2/insight/model/error_response.rbs +43 -0
  357. data/sig/line/bot/v2/insight/model/gender_tile.rbs +42 -0
  358. data/sig/line/bot/v2/insight/model/get_friends_demographics_response.rbs +56 -0
  359. data/sig/line/bot/v2/insight/model/get_message_event_response.rbs +47 -0
  360. data/sig/line/bot/v2/insight/model/get_message_event_response_click.rbs +51 -0
  361. data/sig/line/bot/v2/insight/model/get_message_event_response_message.rbs +72 -0
  362. data/sig/line/bot/v2/insight/model/get_message_event_response_overview.rbs +58 -0
  363. data/sig/line/bot/v2/insight/model/get_number_of_followers_response.rbs +50 -0
  364. data/sig/line/bot/v2/insight/model/get_number_of_message_deliveries_response.rbs +71 -0
  365. data/sig/line/bot/v2/insight/model/get_statistics_per_unit_response.rbs +47 -0
  366. data/sig/line/bot/v2/insight/model/get_statistics_per_unit_response_click.rbs +52 -0
  367. data/sig/line/bot/v2/insight/model/get_statistics_per_unit_response_message.rbs +76 -0
  368. data/sig/line/bot/v2/insight/model/get_statistics_per_unit_response_overview.rbs +50 -0
  369. data/sig/line/bot/v2/insight/model/subscription_period_tile.rbs +42 -0
  370. data/sig/line/bot/v2/liff/api/liff_client.rbs +198 -0
  371. data/sig/line/bot/v2/liff/model/add_liff_app_request.rbs +55 -0
  372. data/sig/line/bot/v2/liff/model/add_liff_app_response.rbs +39 -0
  373. data/sig/line/bot/v2/liff/model/get_all_liff_apps_response.rbs +39 -0
  374. data/sig/line/bot/v2/liff/model/liff_app.rbs +57 -0
  375. data/sig/line/bot/v2/liff/model/liff_bot_prompt.rbs +21 -0
  376. data/sig/line/bot/v2/liff/model/liff_features.rbs +42 -0
  377. data/sig/line/bot/v2/liff/model/liff_scope.rbs +21 -0
  378. data/sig/line/bot/v2/liff/model/liff_view.rbs +46 -0
  379. data/sig/line/bot/v2/liff/model/update_liff_app_request.rbs +55 -0
  380. data/sig/line/bot/v2/liff/model/update_liff_view.rbs +46 -0
  381. data/sig/line/bot/v2/manage_audience/api/manage_audience_blob_client.rbs +122 -0
  382. data/sig/line/bot/v2/manage_audience/api/manage_audience_client.rbs +394 -0
  383. data/sig/line/bot/v2/manage_audience/model/adaccount.rbs +40 -0
  384. data/sig/line/bot/v2/manage_audience/model/add_audience_to_audience_group_request.rbs +47 -0
  385. data/sig/line/bot/v2/manage_audience/model/audience.rbs +40 -0
  386. data/sig/line/bot/v2/manage_audience/model/audience_group.rbs +73 -0
  387. data/sig/line/bot/v2/manage_audience/model/audience_group_create_route.rbs +21 -0
  388. data/sig/line/bot/v2/manage_audience/model/audience_group_failed_type.rbs +21 -0
  389. data/sig/line/bot/v2/manage_audience/model/audience_group_job.rbs +62 -0
  390. data/sig/line/bot/v2/manage_audience/model/audience_group_job_failed_type.rbs +21 -0
  391. data/sig/line/bot/v2/manage_audience/model/audience_group_job_status.rbs +21 -0
  392. data/sig/line/bot/v2/manage_audience/model/audience_group_job_type.rbs +21 -0
  393. data/sig/line/bot/v2/manage_audience/model/audience_group_permission.rbs +21 -0
  394. data/sig/line/bot/v2/manage_audience/model/audience_group_status.rbs +21 -0
  395. data/sig/line/bot/v2/manage_audience/model/audience_group_type.rbs +21 -0
  396. data/sig/line/bot/v2/manage_audience/model/create_audience_group_request.rbs +50 -0
  397. data/sig/line/bot/v2/manage_audience/model/create_audience_group_response.rbs +62 -0
  398. data/sig/line/bot/v2/manage_audience/model/create_click_based_audience_group_request.rbs +47 -0
  399. data/sig/line/bot/v2/manage_audience/model/create_click_based_audience_group_response.rbs +68 -0
  400. data/sig/line/bot/v2/manage_audience/model/create_imp_based_audience_group_request.rbs +44 -0
  401. data/sig/line/bot/v2/manage_audience/model/create_imp_based_audience_group_response.rbs +53 -0
  402. data/sig/line/bot/v2/manage_audience/model/detailed_owner.rbs +46 -0
  403. data/sig/line/bot/v2/manage_audience/model/error_detail.rbs +42 -0
  404. data/sig/line/bot/v2/manage_audience/model/error_response.rbs +43 -0
  405. data/sig/line/bot/v2/manage_audience/model/get_audience_data_response.rbs +47 -0
  406. data/sig/line/bot/v2/manage_audience/model/get_audience_groups_response.rbs +56 -0
  407. data/sig/line/bot/v2/manage_audience/model/get_shared_audience_data_response.rbs +47 -0
  408. data/sig/line/bot/v2/manage_audience/model/get_shared_audience_groups_response.rbs +56 -0
  409. data/sig/line/bot/v2/manage_audience/model/update_audience_group_description_request.rbs +41 -0
  410. data/sig/line/bot/v2/messaging_api/api/messaging_api_blob_client.rbs +196 -0
  411. data/sig/line/bot/v2/messaging_api/api/messaging_api_client.rbs +2072 -0
  412. data/sig/line/bot/v2/messaging_api/model/action.rbs +48 -0
  413. data/sig/line/bot/v2/messaging_api/model/age_demographic.rbs +20 -0
  414. data/sig/line/bot/v2/messaging_api/model/age_demographic_filter.rbs +43 -0
  415. data/sig/line/bot/v2/messaging_api/model/all_mention_target.rbs +38 -0
  416. data/sig/line/bot/v2/messaging_api/model/alt_uri.rbs +39 -0
  417. data/sig/line/bot/v2/messaging_api/model/app_type_demographic.rbs +20 -0
  418. data/sig/line/bot/v2/messaging_api/model/app_type_demographic_filter.rbs +40 -0
  419. data/sig/line/bot/v2/messaging_api/model/area_demographic.rbs +21 -0
  420. data/sig/line/bot/v2/messaging_api/model/area_demographic_filter.rbs +40 -0
  421. data/sig/line/bot/v2/messaging_api/model/audience_recipient.rbs +40 -0
  422. data/sig/line/bot/v2/messaging_api/model/audio_message.rbs +50 -0
  423. data/sig/line/bot/v2/messaging_api/model/bot_info_response.rbs +58 -0
  424. data/sig/line/bot/v2/messaging_api/model/broadcast_request.rbs +43 -0
  425. data/sig/line/bot/v2/messaging_api/model/buttons_template.rbs +61 -0
  426. data/sig/line/bot/v2/messaging_api/model/camera_action.rbs +40 -0
  427. data/sig/line/bot/v2/messaging_api/model/camera_roll_action.rbs +40 -0
  428. data/sig/line/bot/v2/messaging_api/model/carousel_column.rbs +55 -0
  429. data/sig/line/bot/v2/messaging_api/model/carousel_template.rbs +46 -0
  430. data/sig/line/bot/v2/messaging_api/model/chat_reference.rbs +41 -0
  431. data/sig/line/bot/v2/messaging_api/model/clipboard_action.rbs +44 -0
  432. data/sig/line/bot/v2/messaging_api/model/clipboard_imagemap_action.rbs +47 -0
  433. data/sig/line/bot/v2/messaging_api/model/confirm_template.rbs +43 -0
  434. data/sig/line/bot/v2/messaging_api/model/create_rich_menu_alias_request.rbs +43 -0
  435. data/sig/line/bot/v2/messaging_api/model/datetime_picker_action.rbs +56 -0
  436. data/sig/line/bot/v2/messaging_api/model/demographic_filter.rbs +44 -0
  437. data/sig/line/bot/v2/messaging_api/model/emoji.rbs +45 -0
  438. data/sig/line/bot/v2/messaging_api/model/emoji_substitution_object.rbs +45 -0
  439. data/sig/line/bot/v2/messaging_api/model/error_detail.rbs +42 -0
  440. data/sig/line/bot/v2/messaging_api/model/error_response.rbs +46 -0
  441. data/sig/line/bot/v2/messaging_api/model/filter.rbs +40 -0
  442. data/sig/line/bot/v2/messaging_api/model/flex_block_style.rbs +45 -0
  443. data/sig/line/bot/v2/messaging_api/model/flex_box.rbs +118 -0
  444. data/sig/line/bot/v2/messaging_api/model/flex_box_background.rbs +43 -0
  445. data/sig/line/bot/v2/messaging_api/model/flex_box_border_width.rbs +21 -0
  446. data/sig/line/bot/v2/messaging_api/model/flex_box_corner_radius.rbs +21 -0
  447. data/sig/line/bot/v2/messaging_api/model/flex_box_linear_gradient.rbs +52 -0
  448. data/sig/line/bot/v2/messaging_api/model/flex_box_padding.rbs +21 -0
  449. data/sig/line/bot/v2/messaging_api/model/flex_box_spacing.rbs +21 -0
  450. data/sig/line/bot/v2/messaging_api/model/flex_bubble.rbs +61 -0
  451. data/sig/line/bot/v2/messaging_api/model/flex_bubble_styles.rbs +48 -0
  452. data/sig/line/bot/v2/messaging_api/model/flex_button.rbs +79 -0
  453. data/sig/line/bot/v2/messaging_api/model/flex_carousel.rbs +40 -0
  454. data/sig/line/bot/v2/messaging_api/model/flex_component.rbs +43 -0
  455. data/sig/line/bot/v2/messaging_api/model/flex_container.rbs +43 -0
  456. data/sig/line/bot/v2/messaging_api/model/flex_filler.rbs +40 -0
  457. data/sig/line/bot/v2/messaging_api/model/flex_icon.rbs +68 -0
  458. data/sig/line/bot/v2/messaging_api/model/flex_icon_size.rbs +21 -0
  459. data/sig/line/bot/v2/messaging_api/model/flex_image.rbs +86 -0
  460. data/sig/line/bot/v2/messaging_api/model/flex_image_size.rbs +21 -0
  461. data/sig/line/bot/v2/messaging_api/model/flex_margin.rbs +21 -0
  462. data/sig/line/bot/v2/messaging_api/model/flex_message.rbs +50 -0
  463. data/sig/line/bot/v2/messaging_api/model/flex_offset.rbs +21 -0
  464. data/sig/line/bot/v2/messaging_api/model/flex_separator.rbs +43 -0
  465. data/sig/line/bot/v2/messaging_api/model/flex_span.rbs +55 -0
  466. data/sig/line/bot/v2/messaging_api/model/flex_span_size.rbs +21 -0
  467. data/sig/line/bot/v2/messaging_api/model/flex_text.rbs +103 -0
  468. data/sig/line/bot/v2/messaging_api/model/flex_text_font_size.rbs +21 -0
  469. data/sig/line/bot/v2/messaging_api/model/flex_video.rbs +52 -0
  470. data/sig/line/bot/v2/messaging_api/model/gender_demographic.rbs +20 -0
  471. data/sig/line/bot/v2/messaging_api/model/gender_demographic_filter.rbs +40 -0
  472. data/sig/line/bot/v2/messaging_api/model/get_aggregation_unit_name_list_response.rbs +43 -0
  473. data/sig/line/bot/v2/messaging_api/model/get_aggregation_unit_usage_response.rbs +40 -0
  474. data/sig/line/bot/v2/messaging_api/model/get_followers_response.rbs +43 -0
  475. data/sig/line/bot/v2/messaging_api/model/get_joined_membership_users_response.rbs +44 -0
  476. data/sig/line/bot/v2/messaging_api/model/get_membership_subscription_response.rbs +41 -0
  477. data/sig/line/bot/v2/messaging_api/model/get_message_content_transcoding_response.rbs +41 -0
  478. data/sig/line/bot/v2/messaging_api/model/get_webhook_endpoint_response.rbs +43 -0
  479. data/sig/line/bot/v2/messaging_api/model/group_member_count_response.rbs +40 -0
  480. data/sig/line/bot/v2/messaging_api/model/group_summary_response.rbs +46 -0
  481. data/sig/line/bot/v2/messaging_api/model/group_user_profile_response.rbs +46 -0
  482. data/sig/line/bot/v2/messaging_api/model/image_carousel_column.rbs +42 -0
  483. data/sig/line/bot/v2/messaging_api/model/image_carousel_template.rbs +40 -0
  484. data/sig/line/bot/v2/messaging_api/model/image_message.rbs +50 -0
  485. data/sig/line/bot/v2/messaging_api/model/imagemap_action.rbs +47 -0
  486. data/sig/line/bot/v2/messaging_api/model/imagemap_area.rbs +48 -0
  487. data/sig/line/bot/v2/messaging_api/model/imagemap_base_size.rbs +42 -0
  488. data/sig/line/bot/v2/messaging_api/model/imagemap_external_link.rbs +42 -0
  489. data/sig/line/bot/v2/messaging_api/model/imagemap_message.rbs +59 -0
  490. data/sig/line/bot/v2/messaging_api/model/imagemap_video.rbs +48 -0
  491. data/sig/line/bot/v2/messaging_api/model/issue_link_token_response.rbs +40 -0
  492. data/sig/line/bot/v2/messaging_api/model/limit.rbs +44 -0
  493. data/sig/line/bot/v2/messaging_api/model/location_action.rbs +40 -0
  494. data/sig/line/bot/v2/messaging_api/model/location_message.rbs +56 -0
  495. data/sig/line/bot/v2/messaging_api/model/mark_messages_as_read_request.rbs +40 -0
  496. data/sig/line/bot/v2/messaging_api/model/members_ids_response.rbs +42 -0
  497. data/sig/line/bot/v2/messaging_api/model/membership.rbs +66 -0
  498. data/sig/line/bot/v2/messaging_api/model/membership_list_response.rbs +40 -0
  499. data/sig/line/bot/v2/messaging_api/model/mention_substitution_object.rbs +42 -0
  500. data/sig/line/bot/v2/messaging_api/model/mention_target.rbs +43 -0
  501. data/sig/line/bot/v2/messaging_api/model/message.rbs +50 -0
  502. data/sig/line/bot/v2/messaging_api/model/message_action.rbs +43 -0
  503. data/sig/line/bot/v2/messaging_api/model/message_imagemap_action.rbs +46 -0
  504. data/sig/line/bot/v2/messaging_api/model/message_quota_response.rbs +43 -0
  505. data/sig/line/bot/v2/messaging_api/model/multicast_request.rbs +49 -0
  506. data/sig/line/bot/v2/messaging_api/model/narrowcast_progress_response.rbs +61 -0
  507. data/sig/line/bot/v2/messaging_api/model/narrowcast_request.rbs +52 -0
  508. data/sig/line/bot/v2/messaging_api/model/number_of_messages_response.rbs +42 -0
  509. data/sig/line/bot/v2/messaging_api/model/operator_demographic_filter.rbs +46 -0
  510. data/sig/line/bot/v2/messaging_api/model/operator_recipient.rbs +46 -0
  511. data/sig/line/bot/v2/messaging_api/model/pnp_messages_request.rbs +46 -0
  512. data/sig/line/bot/v2/messaging_api/model/postback_action.rbs +55 -0
  513. data/sig/line/bot/v2/messaging_api/model/push_message_request.rbs +49 -0
  514. data/sig/line/bot/v2/messaging_api/model/push_message_response.rbs +40 -0
  515. data/sig/line/bot/v2/messaging_api/model/quick_reply.rbs +41 -0
  516. data/sig/line/bot/v2/messaging_api/model/quick_reply_item.rbs +46 -0
  517. data/sig/line/bot/v2/messaging_api/model/quota_consumption_response.rbs +40 -0
  518. data/sig/line/bot/v2/messaging_api/model/quota_type.rbs +22 -0
  519. data/sig/line/bot/v2/messaging_api/model/recipient.rbs +44 -0
  520. data/sig/line/bot/v2/messaging_api/model/redelivery_recipient.rbs +40 -0
  521. data/sig/line/bot/v2/messaging_api/model/reply_message_request.rbs +46 -0
  522. data/sig/line/bot/v2/messaging_api/model/reply_message_response.rbs +40 -0
  523. data/sig/line/bot/v2/messaging_api/model/rich_menu_alias_list_response.rbs +40 -0
  524. data/sig/line/bot/v2/messaging_api/model/rich_menu_alias_response.rbs +42 -0
  525. data/sig/line/bot/v2/messaging_api/model/rich_menu_area.rbs +43 -0
  526. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_link_operation.rbs +44 -0
  527. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_operation.rbs +45 -0
  528. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_progress_phase.rbs +21 -0
  529. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_progress_response.rbs +46 -0
  530. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_request.rbs +42 -0
  531. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_unlink_all_operation.rbs +38 -0
  532. data/sig/line/bot/v2/messaging_api/model/rich_menu_batch_unlink_operation.rbs +41 -0
  533. data/sig/line/bot/v2/messaging_api/model/rich_menu_bounds.rbs +50 -0
  534. data/sig/line/bot/v2/messaging_api/model/rich_menu_bulk_link_request.rbs +43 -0
  535. data/sig/line/bot/v2/messaging_api/model/rich_menu_bulk_unlink_request.rbs +40 -0
  536. data/sig/line/bot/v2/messaging_api/model/rich_menu_id_response.rbs +39 -0
  537. data/sig/line/bot/v2/messaging_api/model/rich_menu_list_response.rbs +40 -0
  538. data/sig/line/bot/v2/messaging_api/model/rich_menu_request.rbs +51 -0
  539. data/sig/line/bot/v2/messaging_api/model/rich_menu_response.rbs +54 -0
  540. data/sig/line/bot/v2/messaging_api/model/rich_menu_size.rbs +43 -0
  541. data/sig/line/bot/v2/messaging_api/model/rich_menu_switch_action.rbs +46 -0
  542. data/sig/line/bot/v2/messaging_api/model/room_member_count_response.rbs +40 -0
  543. data/sig/line/bot/v2/messaging_api/model/room_user_profile_response.rbs +46 -0
  544. data/sig/line/bot/v2/messaging_api/model/sender.rbs +43 -0
  545. data/sig/line/bot/v2/messaging_api/model/sent_message.rbs +42 -0
  546. data/sig/line/bot/v2/messaging_api/model/set_webhook_endpoint_request.rbs +40 -0
  547. data/sig/line/bot/v2/messaging_api/model/show_loading_animation_request.rbs +43 -0
  548. data/sig/line/bot/v2/messaging_api/model/sticker_message.rbs +53 -0
  549. data/sig/line/bot/v2/messaging_api/model/subscribed_membership_plan.rbs +55 -0
  550. data/sig/line/bot/v2/messaging_api/model/subscribed_membership_user.rbs +49 -0
  551. data/sig/line/bot/v2/messaging_api/model/subscription.rbs +43 -0
  552. data/sig/line/bot/v2/messaging_api/model/subscription_period_demographic.rbs +20 -0
  553. data/sig/line/bot/v2/messaging_api/model/subscription_period_demographic_filter.rbs +43 -0
  554. data/sig/line/bot/v2/messaging_api/model/substitution_object.rbs +44 -0
  555. data/sig/line/bot/v2/messaging_api/model/template.rbs +43 -0
  556. data/sig/line/bot/v2/messaging_api/model/template_image_aspect_ratio.rbs +21 -0
  557. data/sig/line/bot/v2/messaging_api/model/template_image_size.rbs +21 -0
  558. data/sig/line/bot/v2/messaging_api/model/template_message.rbs +50 -0
  559. data/sig/line/bot/v2/messaging_api/model/test_webhook_endpoint_request.rbs +40 -0
  560. data/sig/line/bot/v2/messaging_api/model/test_webhook_endpoint_response.rbs +52 -0
  561. data/sig/line/bot/v2/messaging_api/model/text_message.rbs +53 -0
  562. data/sig/line/bot/v2/messaging_api/model/text_message_v2.rbs +53 -0
  563. data/sig/line/bot/v2/messaging_api/model/update_rich_menu_alias_request.rbs +40 -0
  564. data/sig/line/bot/v2/messaging_api/model/uri_action.rbs +46 -0
  565. data/sig/line/bot/v2/messaging_api/model/uri_imagemap_action.rbs +46 -0
  566. data/sig/line/bot/v2/messaging_api/model/user_mention_target.rbs +41 -0
  567. data/sig/line/bot/v2/messaging_api/model/user_profile_response.rbs +52 -0
  568. data/sig/line/bot/v2/messaging_api/model/validate_message_request.rbs +39 -0
  569. data/sig/line/bot/v2/messaging_api/model/video_message.rbs +53 -0
  570. data/sig/line/bot/v2/module/api/line_module_client.rbs +170 -0
  571. data/sig/line/bot/v2/module/model/acquire_chat_control_request.rbs +44 -0
  572. data/sig/line/bot/v2/module/model/detach_module_request.rbs +41 -0
  573. data/sig/line/bot/v2/module/model/get_modules_response.rbs +44 -0
  574. data/sig/line/bot/v2/module/model/module_bot.rbs +53 -0
  575. data/sig/line/bot/v2/module_attach/api/line_module_attach_client.rbs +111 -0
  576. data/sig/line/bot/v2/module_attach/model/attach_module_response.rbs +43 -0
  577. data/sig/line/bot/v2/reserved_words.rbs +7 -0
  578. data/sig/line/bot/v2/shop/api/shop_client.rbs +72 -0
  579. data/sig/line/bot/v2/shop/model/error_response.rbs +40 -0
  580. data/sig/line/bot/v2/shop/model/mission_sticker_request.rbs +50 -0
  581. data/sig/line/bot/v2/utils.rbs +25 -0
  582. data/sig/line/bot/v2/webhook/model/account_link_event.rbs +59 -0
  583. data/sig/line/bot/v2/webhook/model/action_result.rbs +42 -0
  584. data/sig/line/bot/v2/webhook/model/activated_event.rbs +56 -0
  585. data/sig/line/bot/v2/webhook/model/all_mentionee.rbs +44 -0
  586. data/sig/line/bot/v2/webhook/model/attached_module_content.rbs +43 -0
  587. data/sig/line/bot/v2/webhook/model/audio_message_content.rbs +46 -0
  588. data/sig/line/bot/v2/webhook/model/beacon_content.rbs +45 -0
  589. data/sig/line/bot/v2/webhook/model/beacon_event.rbs +59 -0
  590. data/sig/line/bot/v2/webhook/model/bot_resumed_event.rbs +53 -0
  591. data/sig/line/bot/v2/webhook/model/bot_suspended_event.rbs +53 -0
  592. data/sig/line/bot/v2/webhook/model/callback_request.rbs +44 -0
  593. data/sig/line/bot/v2/webhook/model/chat_control.rbs +39 -0
  594. data/sig/line/bot/v2/webhook/model/content_provider.rbs +46 -0
  595. data/sig/line/bot/v2/webhook/model/deactivated_event.rbs +53 -0
  596. data/sig/line/bot/v2/webhook/model/delivery_context.rbs +40 -0
  597. data/sig/line/bot/v2/webhook/model/detached_module_content.rbs +43 -0
  598. data/sig/line/bot/v2/webhook/model/emoji.rbs +48 -0
  599. data/sig/line/bot/v2/webhook/model/event.rbs +59 -0
  600. data/sig/line/bot/v2/webhook/model/event_mode.rbs +21 -0
  601. data/sig/line/bot/v2/webhook/model/file_message_content.rbs +46 -0
  602. data/sig/line/bot/v2/webhook/model/follow_detail.rbs +39 -0
  603. data/sig/line/bot/v2/webhook/model/follow_event.rbs +59 -0
  604. data/sig/line/bot/v2/webhook/model/group_source.rbs +43 -0
  605. data/sig/line/bot/v2/webhook/model/image_message_content.rbs +49 -0
  606. data/sig/line/bot/v2/webhook/model/image_set.rbs +45 -0
  607. data/sig/line/bot/v2/webhook/model/join_event.rbs +56 -0
  608. data/sig/line/bot/v2/webhook/model/joined_members.rbs +39 -0
  609. data/sig/line/bot/v2/webhook/model/joined_membership_content.rbs +40 -0
  610. data/sig/line/bot/v2/webhook/model/leave_event.rbs +53 -0
  611. data/sig/line/bot/v2/webhook/model/left_members.rbs +39 -0
  612. data/sig/line/bot/v2/webhook/model/left_membership_content.rbs +40 -0
  613. data/sig/line/bot/v2/webhook/model/link_content.rbs +43 -0
  614. data/sig/line/bot/v2/webhook/model/link_things_content.rbs +40 -0
  615. data/sig/line/bot/v2/webhook/model/location_message_content.rbs +52 -0
  616. data/sig/line/bot/v2/webhook/model/member_joined_event.rbs +59 -0
  617. data/sig/line/bot/v2/webhook/model/member_left_event.rbs +56 -0
  618. data/sig/line/bot/v2/webhook/model/membership_content.rbs +44 -0
  619. data/sig/line/bot/v2/webhook/model/membership_event.rbs +59 -0
  620. data/sig/line/bot/v2/webhook/model/mention.rbs +39 -0
  621. data/sig/line/bot/v2/webhook/model/mentionee.rbs +50 -0
  622. data/sig/line/bot/v2/webhook/model/message_content.rbs +47 -0
  623. data/sig/line/bot/v2/webhook/model/message_event.rbs +59 -0
  624. data/sig/line/bot/v2/webhook/model/module_content.rbs +43 -0
  625. data/sig/line/bot/v2/webhook/model/module_event.rbs +56 -0
  626. data/sig/line/bot/v2/webhook/model/pnp_delivery.rbs +40 -0
  627. data/sig/line/bot/v2/webhook/model/pnp_delivery_completion_event.rbs +56 -0
  628. data/sig/line/bot/v2/webhook/model/postback_content.rbs +42 -0
  629. data/sig/line/bot/v2/webhook/model/postback_event.rbs +59 -0
  630. data/sig/line/bot/v2/webhook/model/renewed_membership_content.rbs +40 -0
  631. data/sig/line/bot/v2/webhook/model/room_source.rbs +43 -0
  632. data/sig/line/bot/v2/webhook/model/scenario_result.rbs +61 -0
  633. data/sig/line/bot/v2/webhook/model/scenario_result_things_content.rbs +43 -0
  634. data/sig/line/bot/v2/webhook/model/source.rbs +45 -0
  635. data/sig/line/bot/v2/webhook/model/sticker_message_content.rbs +62 -0
  636. data/sig/line/bot/v2/webhook/model/text_message_content.rbs +55 -0
  637. data/sig/line/bot/v2/webhook/model/things_content.rbs +43 -0
  638. data/sig/line/bot/v2/webhook/model/things_event.rbs +59 -0
  639. data/sig/line/bot/v2/webhook/model/unfollow_event.rbs +53 -0
  640. data/sig/line/bot/v2/webhook/model/unlink_things_content.rbs +40 -0
  641. data/sig/line/bot/v2/webhook/model/unsend_detail.rbs +39 -0
  642. data/sig/line/bot/v2/webhook/model/unsend_event.rbs +56 -0
  643. data/sig/line/bot/v2/webhook/model/user_mentionee.rbs +50 -0
  644. data/sig/line/bot/v2/webhook/model/user_source.rbs +40 -0
  645. data/sig/line/bot/v2/webhook/model/video_message_content.rbs +49 -0
  646. data/sig/line/bot/v2/webhook/model/video_play_complete.rbs +39 -0
  647. data/sig/line/bot/v2/webhook/model/video_play_complete_event.rbs +59 -0
  648. data/sig/line/bot/v2/webhook_parser.rbs +26 -0
  649. data/sig/line/bot/version.rbs +5 -0
  650. metadata +666 -69
@@ -0,0 +1,73 @@
1
+ # Channel Access Token API
2
+ # This document describes Channel Access Token API.
3
+ #
4
+ # The version of the OpenAPI document: 0.0.1
5
+ #
6
+ # NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
7
+ # https://openapi-generator.tech
8
+ # Do not edit the class manually.
9
+
10
+ module Line
11
+ module Bot
12
+ module V2
13
+ module ChannelAccessToken
14
+ # Error response of the Channel access token
15
+ class ErrorResponse
16
+ # @!attribute [rw] error
17
+ # @return [String,nil] Error summary
18
+ attr_accessor :error
19
+ # @!attribute [rw] error_description
20
+ # @return [String,nil] Details of the error. Not returned in certain situations.
21
+ attr_accessor :error_description
22
+
23
+ # @param error [String,nil] Error summary
24
+ # @param error_description [String,nil] Details of the error. Not returned in certain situations.
25
+ def initialize(
26
+ error: nil,
27
+ error_description: nil,
28
+ **dynamic_attributes
29
+ )
30
+
31
+ @error = error
32
+ @error_description = error_description
33
+
34
+ dynamic_attributes.each do |key, value|
35
+ self.class.attr_accessor key
36
+
37
+ if value.is_a?(Hash)
38
+ struct_klass = Struct.new(*value.keys.map(&:to_sym))
39
+ struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v }
40
+ instance_variable_set("@#{key}", struct_klass.new(*struct_values))
41
+ else
42
+ instance_variable_set("@#{key}", value)
43
+ end
44
+ end
45
+ end
46
+
47
+ # Create an instance of the class from a hash
48
+ # @param args [Hash] Hash containing all the required attributes
49
+ # @return [Line::Bot::V2::ChannelAccessToken::ErrorResponse] Instance of the class
50
+ def self.create(args) # steep:ignore
51
+ symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args)
52
+ return new(**symbolized_args) # steep:ignore
53
+ end
54
+
55
+ # @param other [Object] Object to compare
56
+ # @return [Boolean] true if the objects are equal, false otherwise
57
+ def ==(other)
58
+ return false unless self.class == other.class
59
+
60
+ instance_variables.all? do |var|
61
+ instance_variable_get(var) == other.instance_variable_get(var)
62
+ end
63
+ end
64
+
65
+ # @return [Integer] Hash code of the object
66
+ def hash
67
+ [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,86 @@
1
+ # Channel Access Token API
2
+ # This document describes Channel Access Token API.
3
+ #
4
+ # The version of the OpenAPI document: 0.0.1
5
+ #
6
+ # NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
7
+ # https://openapi-generator.tech
8
+ # Do not edit the class manually.
9
+
10
+ module Line
11
+ module Bot
12
+ module V2
13
+ module ChannelAccessToken
14
+ # Issued channel access token
15
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-channel-access-token-v2-1
16
+ class IssueChannelAccessTokenResponse
17
+ # @!attribute [rw] access_token
18
+ # @return [String] Channel access token.
19
+ attr_accessor :access_token
20
+ # @!attribute [rw] expires_in
21
+ # @return [Integer] Amount of time in seconds from issue to expiration of the channel access token
22
+ attr_accessor :expires_in
23
+ # @!attribute [rw] token_type
24
+ # @return [String] A token type.
25
+ attr_accessor :token_type
26
+ # @!attribute [rw] key_id
27
+ # @return [String] Unique key ID for identifying the channel access token.
28
+ attr_accessor :key_id
29
+
30
+ # @param access_token [String] Channel access token.
31
+ # @param expires_in [Integer] Amount of time in seconds from issue to expiration of the channel access token
32
+ # @param token_type [String] A token type.
33
+ # @param key_id [String] Unique key ID for identifying the channel access token.
34
+ def initialize(
35
+ access_token:,
36
+ expires_in:,
37
+ token_type: 'Bearer',
38
+ key_id:,
39
+ **dynamic_attributes
40
+ )
41
+
42
+ @access_token = access_token
43
+ @expires_in = expires_in
44
+ @token_type = token_type
45
+ @key_id = key_id
46
+
47
+ dynamic_attributes.each do |key, value|
48
+ self.class.attr_accessor key
49
+
50
+ if value.is_a?(Hash)
51
+ struct_klass = Struct.new(*value.keys.map(&:to_sym))
52
+ struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v }
53
+ instance_variable_set("@#{key}", struct_klass.new(*struct_values))
54
+ else
55
+ instance_variable_set("@#{key}", value)
56
+ end
57
+ end
58
+ end
59
+
60
+ # Create an instance of the class from a hash
61
+ # @param args [Hash] Hash containing all the required attributes
62
+ # @return [Line::Bot::V2::ChannelAccessToken::IssueChannelAccessTokenResponse] Instance of the class
63
+ def self.create(args) # steep:ignore
64
+ symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args)
65
+ return new(**symbolized_args) # steep:ignore
66
+ end
67
+
68
+ # @param other [Object] Object to compare
69
+ # @return [Boolean] true if the objects are equal, false otherwise
70
+ def ==(other)
71
+ return false unless self.class == other.class
72
+
73
+ instance_variables.all? do |var|
74
+ instance_variable_get(var) == other.instance_variable_get(var)
75
+ end
76
+ end
77
+
78
+ # @return [Integer] Hash code of the object
79
+ def hash
80
+ [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,80 @@
1
+ # Channel Access Token API
2
+ # This document describes Channel Access Token API.
3
+ #
4
+ # The version of the OpenAPI document: 0.0.1
5
+ #
6
+ # NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
7
+ # https://openapi-generator.tech
8
+ # Do not edit the class manually.
9
+
10
+ module Line
11
+ module Bot
12
+ module V2
13
+ module ChannelAccessToken
14
+ # Issued short-lived channel access token
15
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-shortlived-channel-access-token
16
+ class IssueShortLivedChannelAccessTokenResponse
17
+ # @!attribute [rw] access_token
18
+ # @return [String] A short-lived channel access token. Valid for 30 days. Note: Channel access tokens cannot be refreshed.
19
+ attr_accessor :access_token
20
+ # @!attribute [rw] expires_in
21
+ # @return [Integer] Time until channel access token expires in seconds from time the token is issued.
22
+ attr_accessor :expires_in
23
+ # @!attribute [rw] token_type
24
+ # @return [String] Token type. The value is always `Bearer`.
25
+ attr_accessor :token_type
26
+
27
+ # @param access_token [String] A short-lived channel access token. Valid for 30 days. Note: Channel access tokens cannot be refreshed.
28
+ # @param expires_in [Integer] Time until channel access token expires in seconds from time the token is issued.
29
+ # @param token_type [String] Token type. The value is always `Bearer`.
30
+ def initialize(
31
+ access_token:,
32
+ expires_in:,
33
+ token_type: 'Bearer',
34
+ **dynamic_attributes
35
+ )
36
+
37
+ @access_token = access_token
38
+ @expires_in = expires_in
39
+ @token_type = token_type
40
+
41
+ dynamic_attributes.each do |key, value|
42
+ self.class.attr_accessor key
43
+
44
+ if value.is_a?(Hash)
45
+ struct_klass = Struct.new(*value.keys.map(&:to_sym))
46
+ struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v }
47
+ instance_variable_set("@#{key}", struct_klass.new(*struct_values))
48
+ else
49
+ instance_variable_set("@#{key}", value)
50
+ end
51
+ end
52
+ end
53
+
54
+ # Create an instance of the class from a hash
55
+ # @param args [Hash] Hash containing all the required attributes
56
+ # @return [Line::Bot::V2::ChannelAccessToken::IssueShortLivedChannelAccessTokenResponse] Instance of the class
57
+ def self.create(args) # steep:ignore
58
+ symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args)
59
+ return new(**symbolized_args) # steep:ignore
60
+ end
61
+
62
+ # @param other [Object] Object to compare
63
+ # @return [Boolean] true if the objects are equal, false otherwise
64
+ def ==(other)
65
+ return false unless self.class == other.class
66
+
67
+ instance_variables.all? do |var|
68
+ instance_variable_get(var) == other.instance_variable_get(var)
69
+ end
70
+ end
71
+
72
+ # @return [Integer] Hash code of the object
73
+ def hash
74
+ [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,80 @@
1
+ # Channel Access Token API
2
+ # This document describes Channel Access Token API.
3
+ #
4
+ # The version of the OpenAPI document: 0.0.1
5
+ #
6
+ # NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
7
+ # https://openapi-generator.tech
8
+ # Do not edit the class manually.
9
+
10
+ module Line
11
+ module Bot
12
+ module V2
13
+ module ChannelAccessToken
14
+ # Issued stateless channel access token
15
+ # @see https://developers.line.biz/en/reference/messaging-api/#issue-stateless-channel-access-token
16
+ class IssueStatelessChannelAccessTokenResponse
17
+ # @!attribute [rw] access_token
18
+ # @return [String] A stateless channel access token. The token is an opaque string which means its format is an implementation detail and the consumer of this token should never try to use the data parsed from the token.
19
+ attr_accessor :access_token
20
+ # @!attribute [rw] expires_in
21
+ # @return [Integer] Duration in seconds after which the issued access token expires
22
+ attr_accessor :expires_in
23
+ # @!attribute [rw] token_type
24
+ # @return [String] Token type. The value is always `Bearer`.
25
+ attr_accessor :token_type
26
+
27
+ # @param access_token [String] A stateless channel access token. The token is an opaque string which means its format is an implementation detail and the consumer of this token should never try to use the data parsed from the token.
28
+ # @param expires_in [Integer] Duration in seconds after which the issued access token expires
29
+ # @param token_type [String] Token type. The value is always `Bearer`.
30
+ def initialize(
31
+ access_token:,
32
+ expires_in:,
33
+ token_type: 'Bearer',
34
+ **dynamic_attributes
35
+ )
36
+
37
+ @access_token = access_token
38
+ @expires_in = expires_in
39
+ @token_type = token_type
40
+
41
+ dynamic_attributes.each do |key, value|
42
+ self.class.attr_accessor key
43
+
44
+ if value.is_a?(Hash)
45
+ struct_klass = Struct.new(*value.keys.map(&:to_sym))
46
+ struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v }
47
+ instance_variable_set("@#{key}", struct_klass.new(*struct_values))
48
+ else
49
+ instance_variable_set("@#{key}", value)
50
+ end
51
+ end
52
+ end
53
+
54
+ # Create an instance of the class from a hash
55
+ # @param args [Hash] Hash containing all the required attributes
56
+ # @return [Line::Bot::V2::ChannelAccessToken::IssueStatelessChannelAccessTokenResponse] Instance of the class
57
+ def self.create(args) # steep:ignore
58
+ symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args)
59
+ return new(**symbolized_args) # steep:ignore
60
+ end
61
+
62
+ # @param other [Object] Object to compare
63
+ # @return [Boolean] true if the objects are equal, false otherwise
64
+ def ==(other)
65
+ return false unless self.class == other.class
66
+
67
+ instance_variables.all? do |var|
68
+ instance_variable_get(var) == other.instance_variable_get(var)
69
+ end
70
+ end
71
+
72
+ # @return [Integer] Hash code of the object
73
+ def hash
74
+ [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,79 @@
1
+ # Channel Access Token API
2
+ # This document describes Channel Access Token API.
3
+ #
4
+ # The version of the OpenAPI document: 0.0.1
5
+ #
6
+ # NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
7
+ # https://openapi-generator.tech
8
+ # Do not edit the class manually.
9
+
10
+ module Line
11
+ module Bot
12
+ module V2
13
+ module ChannelAccessToken
14
+ # Verification result
15
+ class VerifyChannelAccessTokenResponse
16
+ # @!attribute [rw] client_id
17
+ # @return [String] The channel ID for which the channel access token was issued.
18
+ attr_accessor :client_id
19
+ # @!attribute [rw] expires_in
20
+ # @return [Integer] Number of seconds before the channel access token expires.
21
+ attr_accessor :expires_in
22
+ # @!attribute [rw] scope
23
+ # @return [String,nil] Permissions granted to the channel access token.
24
+ attr_accessor :scope
25
+
26
+ # @param client_id [String] The channel ID for which the channel access token was issued.
27
+ # @param expires_in [Integer] Number of seconds before the channel access token expires.
28
+ # @param scope [String,nil] Permissions granted to the channel access token.
29
+ def initialize(
30
+ client_id:,
31
+ expires_in:,
32
+ scope: nil,
33
+ **dynamic_attributes
34
+ )
35
+
36
+ @client_id = client_id
37
+ @expires_in = expires_in
38
+ @scope = scope
39
+
40
+ dynamic_attributes.each do |key, value|
41
+ self.class.attr_accessor key
42
+
43
+ if value.is_a?(Hash)
44
+ struct_klass = Struct.new(*value.keys.map(&:to_sym))
45
+ struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v }
46
+ instance_variable_set("@#{key}", struct_klass.new(*struct_values))
47
+ else
48
+ instance_variable_set("@#{key}", value)
49
+ end
50
+ end
51
+ end
52
+
53
+ # Create an instance of the class from a hash
54
+ # @param args [Hash] Hash containing all the required attributes
55
+ # @return [Line::Bot::V2::ChannelAccessToken::VerifyChannelAccessTokenResponse] Instance of the class
56
+ def self.create(args) # steep:ignore
57
+ symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args)
58
+ return new(**symbolized_args) # steep:ignore
59
+ end
60
+
61
+ # @param other [Object] Object to compare
62
+ # @return [Boolean] true if the objects are equal, false otherwise
63
+ def ==(other)
64
+ return false unless self.class == other.class
65
+
66
+ instance_variables.all? do |var|
67
+ instance_variable_get(var) == other.instance_variable_get(var)
68
+ end
69
+ end
70
+
71
+ # @return [Integer] Hash code of the object
72
+ def hash
73
+ [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash
74
+ end
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,165 @@
1
+ require 'net/http'
2
+ require 'uri'
3
+ require 'json'
4
+ require 'net/http/post/multipart'
5
+ require 'line/bot/version'
6
+
7
+ module Line
8
+ module Bot
9
+ module V2
10
+ # This class is not intended for line-bot-sdk-ruby users. Breaking changes may occur; use at your own risk.
11
+
12
+ class HttpClient
13
+ # Initializes a new HttpClient instance.
14
+ #
15
+ # @param base_url [String] The base URL for requests.
16
+ # @param http_headers [Hash] The default HTTP headers.
17
+ # @param http_options [Hash] The HTTP options (same as Net::HTTP options).
18
+ # https://docs.ruby-lang.org/en/3.4/Net/HTTP.html#method-i-options
19
+ #
20
+ # NOTE: line-bot-sdk-ruby users should not use this. Breaking changes may occur, so use at your own risk.
21
+ def initialize(base_url:, http_headers: {}, http_options: {})
22
+ @base_url = base_url
23
+ @http_headers = { 'User-Agent': "LINE-BotSDK-Ruby/#{Line::Bot::VERSION}" }.merge(normalize_headers(headers: http_headers))
24
+ @http_options = http_options
25
+ end
26
+
27
+ # NOTE: line-bot-sdk-ruby users should not use this. Breaking changes may occur, so use at your own risk.
28
+ def get(path:, query_params: nil, headers: nil)
29
+ request = build_request(http_class: Net::HTTP::Get, path: path, query_params: query_params, headers: headers)
30
+ perform_request(request: request)
31
+ end
32
+
33
+ # NOTE: line-bot-sdk-ruby users should not use this. Breaking changes may occur, so use at your own risk.
34
+ def post(path:, query_params: nil, body_params: nil, headers: nil)
35
+ request = build_request(http_class: Net::HTTP::Post, path: path, query_params: query_params, headers: headers, body_params: body_params)
36
+ perform_request(request: request)
37
+ end
38
+
39
+ # NOTE: line-bot-sdk-ruby users should not use this. Breaking changes may occur, so use at your own risk.
40
+ def put(path:, query_params: nil, body_params: nil, headers: nil)
41
+ request = build_request(http_class: Net::HTTP::Put, path: path, query_params: query_params, headers: headers, body_params: body_params)
42
+ perform_request(request: request)
43
+ end
44
+
45
+ # NOTE: line-bot-sdk-ruby users should not use this. Breaking changes may occur, so use at your own risk.
46
+ def delete(path:, query_params: nil, headers: nil)
47
+ request = build_request(http_class: Net::HTTP::Delete, path: path, query_params: query_params, headers: headers)
48
+ perform_request(request: request)
49
+ end
50
+
51
+ # NOTE: line-bot-sdk-ruby users should not use this. Breaking changes may occur, so use at your own risk.
52
+ def post_form(path:, query_params: nil, form_params: nil, headers: nil)
53
+ request = build_form_request(http_class: Net::HTTP::Post, path: path, query_params: query_params, form_params: form_params, headers: headers)
54
+ perform_request(request: request)
55
+ end
56
+
57
+ # NOTE: line-bot-sdk-ruby users should not use this. Breaking changes may occur, so use at your own risk.
58
+ def post_form_multipart(path:, query_params: nil, form_params: nil, headers: nil)
59
+ request = build_multipart_request(http_class: Net::HTTP::Post::Multipart, path: path, query_params: query_params, form_params: form_params, headers: headers)
60
+ perform_request(request: request)
61
+ end
62
+
63
+ # NOTE: line-bot-sdk-ruby users should not use this. Breaking changes may occur, so use at your own risk.
64
+ def put_form_multipart(path:, query_params: nil, form_params: nil, headers: nil)
65
+ request = build_multipart_request(http_class: Net::HTTP::Put::Multipart, path: path, query_params: query_params, form_params: form_params, headers: headers)
66
+ perform_request(request: request)
67
+ end
68
+
69
+ private
70
+
71
+ def build_request(http_class:, path:, query_params:, headers:, body_params: nil)
72
+ request_url = build_url(path: path, query_params: query_params)
73
+ request_headers = build_headers(headers: headers)
74
+ request = http_class.new(request_url, request_headers)
75
+
76
+ if body_params
77
+ if body_params.is_a?(File)
78
+ request['Content-Type'] = determine_content_type(file: body_params)
79
+ request.body = body_params.read
80
+ else
81
+ request['Content-Type'] = 'application/json'
82
+ request.body = Line::Bot::V2::Utils.deep_compact(
83
+ Line::Bot::V2::Utils.deep_camelize(
84
+ Line::Bot::V2::Utils.deep_to_hash(body_params)
85
+ )
86
+ ).to_json
87
+ end
88
+ end
89
+
90
+ request
91
+ end
92
+
93
+ def build_form_request(http_class:, path:, query_params:, form_params:, headers:)
94
+ request_url = build_url(path: path, query_params: query_params)
95
+ request_headers = build_headers(headers: headers)
96
+ request = http_class.new(request_url, request_headers)
97
+
98
+ if form_params
99
+ request['Content-Type'] = 'application/x-www-form-urlencoded'
100
+ request.body = URI.encode_www_form(Line::Bot::V2::Utils.deep_to_hash(form_params))
101
+ end
102
+
103
+ request
104
+ end
105
+
106
+ def build_multipart_request(http_class:, path:, query_params:, form_params:, headers:)
107
+ request_url = build_url(path: path, query_params: query_params)
108
+ request_headers = build_headers(headers: headers)
109
+
110
+ file_params, non_file_params = form_params.partition { |_, value| value.is_a?(File) }.map(&:to_h) # steep:ignore NoMethod
111
+ params = Line::Bot::V2::Utils.deep_to_hash(non_file_params).merge(
112
+ file_params.transform_values { |value| UploadIO.new(value, 'text/plain', File.basename(value.path)) }
113
+ )
114
+
115
+ http_class.new(request_url, params, request_headers)
116
+ end
117
+
118
+ def build_url(path:, query_params:)
119
+ uri = URI.join(@base_url, path)
120
+ uri.query = URI.encode_www_form(query_params) unless query_params.nil?
121
+ uri
122
+ end
123
+
124
+ def build_headers(headers: nil)
125
+ return @http_headers if headers.nil?
126
+
127
+ @http_headers.merge(normalize_headers(headers: headers))
128
+ end
129
+
130
+ def perform_request(request:)
131
+ Net::HTTP.start(request.uri.hostname, request.uri.port, use_ssl: request.uri.scheme == 'https') do |http| # steep:ignore ArgumentTypeMismatch
132
+ @http_options.each do |key, value|
133
+ http.send("#{key}=", value)
134
+ end if @http_options
135
+
136
+ http.request(request)
137
+ end
138
+ end
139
+
140
+ def determine_content_type(file:)
141
+ case File.extname(path=file.path).downcase
142
+ when '.txt'
143
+ 'text/plain'
144
+ when '.jpg', '.jpeg'
145
+ 'image/jpeg'
146
+ when '.png'
147
+ 'image/png'
148
+ when '.gif'
149
+ 'image/gif'
150
+ else
151
+ 'application/octet-stream'
152
+ end
153
+ end
154
+
155
+ def normalize_headers(headers:)
156
+ return {} if headers.nil?
157
+
158
+ headers
159
+ .transform_keys(&:to_sym)
160
+ .transform_values(&:to_s)
161
+ end
162
+ end
163
+ end
164
+ end
165
+ end