pingram 1.0.16 → 1.0.18

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 (179) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/lib/pingram/api/account_api.rb +95 -26
  4. data/lib/pingram/api/members_api.rb +10 -10
  5. data/lib/pingram/api/numbers_api.rb +2 -2
  6. data/lib/pingram/api/profile_api.rb +66 -0
  7. data/lib/pingram/api/voice_api.rb +733 -0
  8. data/lib/pingram/api_client.rb +1 -1
  9. data/lib/pingram/client_wrapper.rb +10 -10
  10. data/lib/pingram/models/account_get_response.rb +216 -29
  11. data/lib/pingram/models/api_error_body.rb +4 -24
  12. data/lib/pingram/models/auto_join_get_response.rb +16 -16
  13. data/lib/pingram/models/auto_join_post_response.rb +16 -16
  14. data/lib/pingram/models/billing_post_request_body.rb +2 -12
  15. data/lib/pingram/models/billing_post_response_body.rb +56 -68
  16. data/lib/pingram/models/bind_number_request.rb +164 -0
  17. data/lib/pingram/models/bind_number_response.rb +164 -0
  18. data/lib/pingram/models/bind_number_response_agent.rb +342 -0
  19. data/lib/pingram/models/bind_number_response_agent_spec.rb +376 -0
  20. data/lib/pingram/models/bind_number_response_agent_spec_compliance.rb +164 -0
  21. data/lib/pingram/models/bind_number_response_agent_spec_conversation.rb +328 -0
  22. data/lib/pingram/models/bind_number_response_agent_spec_inbound.rb +214 -0
  23. data/lib/pingram/models/bind_number_response_agent_spec_model.rb +105 -0
  24. data/lib/pingram/models/bind_number_response_agent_spec_outbound.rb +251 -0
  25. data/lib/pingram/models/bind_number_response_agent_spec_tools_inner.rb +107 -0
  26. data/lib/pingram/models/bind_number_response_agent_spec_variables_inner.rb +182 -0
  27. data/lib/pingram/models/brand_webhook_response.rb +165 -0
  28. data/lib/pingram/models/chained.rb +401 -0
  29. data/lib/pingram/models/channels_enum.rb +2 -1
  30. data/lib/pingram/models/create_voice_agent_request.rb +164 -0
  31. data/lib/pingram/models/create_voice_agent_response.rb +164 -0
  32. data/lib/pingram/models/custom.rb +278 -0
  33. data/lib/pingram/models/delete_account_request.rb +147 -0
  34. data/lib/pingram/models/delete_voice_agent_response.rb +164 -0
  35. data/lib/pingram/models/dtmf.rb +188 -0
  36. data/lib/pingram/models/get_members_response_inner.rb +1 -27
  37. data/lib/pingram/models/get_notifications_response_inner_options.rb +10 -1
  38. data/lib/pingram/models/get_senders_response_inner.rb +13 -4
  39. data/lib/pingram/models/get_senders_response_inner_verification_records.rb +184 -0
  40. data/lib/pingram/models/get_senders_response_inner_verification_records_dkim.rb +287 -0
  41. data/lib/pingram/models/get_usage_history_query.rb +1 -1
  42. data/lib/pingram/models/{organization_usage_history.rb → get_usage_history_response.rb} +5 -5
  43. data/lib/pingram/models/get_usage_history_response_items_inner.rb +192 -0
  44. data/lib/pingram/models/get_usage_history_response_items_inner_counts.rb +346 -0
  45. data/lib/pingram/models/{organization_usage.rb → get_usage_response.rb} +17 -163
  46. data/lib/pingram/models/get_usage_response_costs.rb +148 -0
  47. data/lib/pingram/models/get_usage_response_counts.rb +347 -0
  48. data/lib/pingram/models/get_voice_agent_response.rb +164 -0
  49. data/lib/pingram/models/get_voice_call_response.rb +164 -0
  50. data/lib/pingram/models/get_voice_call_response_call.rb +521 -0
  51. data/lib/pingram/models/{a2p_registration_update_request.rb → get_voice_call_response_call_cost.rb} +53 -80
  52. data/lib/pingram/models/get_voice_call_response_call_cost_lines_inner.rb +245 -0
  53. data/lib/pingram/models/get_voice_call_response_call_timeline_inner.rb +247 -0
  54. data/lib/pingram/models/get_voice_call_response_call_timeline_inner_latency.rb +191 -0
  55. data/lib/pingram/models/inbound_response_body_results_inner.rb +4 -4
  56. data/lib/pingram/models/knowledge.rb +216 -0
  57. data/lib/pingram/models/{create_organization_response.rb → knowledge_documents_inner.rb} +50 -49
  58. data/lib/pingram/models/list_phone_numbers_response_numbers_inner.rb +14 -4
  59. data/lib/pingram/models/list_voice_agents_response.rb +166 -0
  60. data/lib/pingram/models/list_voice_calls_response.rb +176 -0
  61. data/lib/pingram/models/list_voice_calls_response_calls_inner.rb +463 -0
  62. data/lib/pingram/models/logs_get_response_logs_inner.rb +4 -4
  63. data/lib/pingram/models/mcp.rb +223 -0
  64. data/lib/pingram/models/phone_verify_confirm_request.rb +16 -4
  65. data/lib/pingram/models/s2s.rb +295 -0
  66. data/lib/pingram/models/send_email_api_response_any_of1_error.rb +4 -24
  67. data/lib/pingram/models/send_email_request.rb +1 -1
  68. data/lib/pingram/models/send_sms_response_any_of1_error.rb +4 -24
  69. data/lib/pingram/models/sender_post_body_options_email.rb +5 -15
  70. data/lib/pingram/models/{a2p_registration_create_request.rb → ten_dlc_brand_create_request.rb} +56 -28
  71. data/lib/pingram/models/{a2p_registration.rb → ten_dlc_brand_registration.rb} +72 -22
  72. data/lib/pingram/models/ten_dlc_brand_registration_details.rb +599 -0
  73. data/lib/pingram/models/ten_dlc_brand_update_request.rb +338 -0
  74. data/lib/pingram/models/transfer.rb +251 -0
  75. data/lib/pingram/models/unbind_number_response.rb +164 -0
  76. data/lib/pingram/models/update_voice_agent_request.rb +164 -0
  77. data/lib/pingram/models/update_voice_agent_response.rb +164 -0
  78. data/lib/pingram/models/voice_browser_call_request.rb +186 -0
  79. data/lib/pingram/models/voice_browser_call_response.rb +216 -0
  80. data/lib/pingram/models/voice_call_request.rb +212 -0
  81. data/lib/pingram/models/voice_call_response.rb +217 -0
  82. data/lib/pingram/models/webhook_event.rb +2 -2
  83. data/lib/pingram/version.rb +1 -1
  84. data/lib/pingram.rb +54 -9
  85. data/vendor/bundle/ruby/3.2.0/cache/parser-3.3.12.0.gem +0 -0
  86. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-13.0.0/gem_make.out +5 -5
  87. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem_make.out +5 -5
  88. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/gem_make.out +5 -5
  89. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/mkmf.log +3 -3
  90. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  91. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.4.0/gem_make.out +5 -5
  92. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem_make.out +5 -5
  93. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem_make.out +5 -5
  94. data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/current.rb +1 -1
  95. data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/version.rb +1 -1
  96. data/vendor/bundle/ruby/3.2.0/specifications/{parser-3.3.11.1.gemspec → parser-3.3.12.0.gemspec} +4 -4
  97. metadata +138 -93
  98. data/lib/pingram/api/organization_api.rb +0 -201
  99. data/lib/pingram/models/organization.rb +0 -442
  100. data/lib/pingram/models/organization_usage_history_items_inner.rb +0 -330
  101. data/vendor/bundle/ruby/3.2.0/cache/parser-3.3.11.1.gem +0 -0
  102. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/LICENSE.txt +0 -0
  103. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/bin/ruby-parse +0 -0
  104. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/bin/ruby-rewrite +0 -0
  105. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/gauntlet_parser.rb +0 -0
  106. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/all.rb +0 -0
  107. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ast/node.rb +0 -0
  108. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ast/processor.rb +0 -0
  109. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/base.rb +0 -0
  110. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/builders/default.rb +0 -0
  111. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/clobbering_error.rb +0 -0
  112. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/color.rb +0 -0
  113. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/context.rb +0 -0
  114. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/current_arg_stack.rb +0 -0
  115. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/deprecation.rb +0 -0
  116. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/diagnostic/engine.rb +0 -0
  117. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/diagnostic.rb +0 -0
  118. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/lexer/dedenter.rb +0 -0
  119. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/lexer/explanation.rb +0 -0
  120. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/lexer/literal.rb +0 -0
  121. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/lexer/stack_state.rb +0 -0
  122. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/lexer-F0.rb +0 -0
  123. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/lexer-F1.rb +0 -0
  124. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/lexer-strings.rb +0 -0
  125. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/macruby.rb +0 -0
  126. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/max_numparam_stack.rb +0 -0
  127. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/messages.rb +0 -0
  128. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/meta.rb +0 -0
  129. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/rewriter.rb +0 -0
  130. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby18.rb +0 -0
  131. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby19.rb +0 -0
  132. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby20.rb +0 -0
  133. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby21.rb +0 -0
  134. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby22.rb +0 -0
  135. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby23.rb +0 -0
  136. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby24.rb +0 -0
  137. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby25.rb +0 -0
  138. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby26.rb +0 -0
  139. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby27.rb +0 -0
  140. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby30.rb +0 -0
  141. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby31.rb +0 -0
  142. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby32.rb +0 -0
  143. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby33.rb +0 -0
  144. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/ruby34.rb +0 -0
  145. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/rubymotion.rb +0 -0
  146. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/runner/ruby_parse.rb +0 -0
  147. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/runner/ruby_rewrite.rb +0 -0
  148. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/runner.rb +0 -0
  149. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/buffer.rb +0 -0
  150. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/comment/associator.rb +0 -0
  151. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/comment.rb +0 -0
  152. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/collection.rb +0 -0
  153. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/condition.rb +0 -0
  154. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/constant.rb +0 -0
  155. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/definition.rb +0 -0
  156. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/for.rb +0 -0
  157. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/heredoc.rb +0 -0
  158. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/index.rb +0 -0
  159. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/keyword.rb +0 -0
  160. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/method_definition.rb +0 -0
  161. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/objc_kwarg.rb +0 -0
  162. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/operator.rb +0 -0
  163. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/rescue_body.rb +0 -0
  164. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/send.rb +0 -0
  165. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/ternary.rb +0 -0
  166. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map/variable.rb +0 -0
  167. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/map.rb +0 -0
  168. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/range.rb +0 -0
  169. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/rewriter/action.rb +0 -0
  170. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/rewriter.rb +0 -0
  171. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/tree_rewriter/action.rb +0 -0
  172. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/source/tree_rewriter.rb +0 -0
  173. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/static_environment.rb +0 -0
  174. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/syntax_error.rb +0 -0
  175. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/tree_rewriter.rb +0 -0
  176. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/unknown_encoding_in_magic_comment_error.rb +0 -0
  177. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser/variables_stack.rb +0 -0
  178. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/lib/parser.rb +0 -0
  179. /data/vendor/bundle/ruby/3.2.0/gems/{parser-3.3.11.1 → parser-3.3.12.0}/parser.gemspec +0 -0
@@ -1,330 +0,0 @@
1
- =begin
2
- #Pingram
3
-
4
- #Internal API for notification delivery and management
5
-
6
- The version of the OpenAPI document: 1.0.0
7
-
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.19.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module Pingram
17
- # Single usage item in historical response
18
- class OrganizationUsageHistoryItemsInner < ApiModelBase
19
- # Year-month (YYYY-MM) for this usage period
20
- attr_accessor :year_month
21
-
22
- # Total message usage (EMAIL + INAPP_WEB + WEB_PUSH + PUSH + SLACK)
23
- attr_accessor :message_usage
24
-
25
- # Total budget usage in USD (cost_SMS + cost_CALL + cost_NUMBER)
26
- attr_accessor :budget_usage
27
-
28
- # SMS cost in USD
29
- attr_accessor :cost_sms
30
-
31
- # Call cost in USD
32
- attr_accessor :cost_call
33
-
34
- # Phone number rent in USD
35
- attr_accessor :cost_number
36
-
37
- # Per-channel usage breakdown
38
- attr_accessor :channel_usages
39
-
40
- # Attribute mapping from ruby-style variable name to JSON key.
41
- def self.attribute_map
42
- {
43
- :'year_month' => :'yearMonth',
44
- :'message_usage' => :'messageUsage',
45
- :'budget_usage' => :'budgetUsage',
46
- :'cost_sms' => :'costSms',
47
- :'cost_call' => :'costCall',
48
- :'cost_number' => :'costNumber',
49
- :'channel_usages' => :'channelUsages'
50
- }
51
- end
52
-
53
- # Returns attribute mapping this model knows about
54
- def self.acceptable_attribute_map
55
- attribute_map
56
- end
57
-
58
- # Returns all the JSON keys this model knows about
59
- def self.acceptable_attributes
60
- acceptable_attribute_map.values
61
- end
62
-
63
- # Attribute type mapping.
64
- def self.openapi_types
65
- {
66
- :'year_month' => :'String',
67
- :'message_usage' => :'Float',
68
- :'budget_usage' => :'Float',
69
- :'cost_sms' => :'Float',
70
- :'cost_call' => :'Float',
71
- :'cost_number' => :'Float',
72
- :'channel_usages' => :'Hash<String, Float>'
73
- }
74
- end
75
-
76
- # List of attributes with nullable: true
77
- def self.openapi_nullable
78
- Set.new([
79
- ])
80
- end
81
-
82
- # Initializes the object
83
- # @param [Hash] attributes Model attributes in the form of hash
84
- def initialize(attributes = {})
85
- if (!attributes.is_a?(Hash))
86
- fail ArgumentError, "The input argument (attributes) must be a hash in `Pingram::OrganizationUsageHistoryItemsInner` initialize method"
87
- end
88
-
89
- # check to see if the attribute exists and convert string to symbol for hash key
90
- acceptable_attribute_map = self.class.acceptable_attribute_map
91
- attributes = attributes.each_with_object({}) { |(k, v), h|
92
- if (!acceptable_attribute_map.key?(k.to_sym))
93
- fail ArgumentError, "`#{k}` is not a valid attribute in `Pingram::OrganizationUsageHistoryItemsInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
94
- end
95
- h[k.to_sym] = v
96
- }
97
-
98
- if attributes.key?(:'year_month')
99
- self.year_month = attributes[:'year_month']
100
- else
101
- self.year_month = nil
102
- end
103
-
104
- if attributes.key?(:'message_usage')
105
- self.message_usage = attributes[:'message_usage']
106
- else
107
- self.message_usage = nil
108
- end
109
-
110
- if attributes.key?(:'budget_usage')
111
- self.budget_usage = attributes[:'budget_usage']
112
- else
113
- self.budget_usage = nil
114
- end
115
-
116
- if attributes.key?(:'cost_sms')
117
- self.cost_sms = attributes[:'cost_sms']
118
- else
119
- self.cost_sms = nil
120
- end
121
-
122
- if attributes.key?(:'cost_call')
123
- self.cost_call = attributes[:'cost_call']
124
- else
125
- self.cost_call = nil
126
- end
127
-
128
- if attributes.key?(:'cost_number')
129
- self.cost_number = attributes[:'cost_number']
130
- else
131
- self.cost_number = nil
132
- end
133
-
134
- if attributes.key?(:'channel_usages')
135
- if (value = attributes[:'channel_usages']).is_a?(Hash)
136
- self.channel_usages = value
137
- end
138
- else
139
- self.channel_usages = nil
140
- end
141
- end
142
-
143
- # Show invalid properties with the reasons. Usually used together with valid?
144
- # @return Array for valid properties with the reasons
145
- def list_invalid_properties
146
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
147
- invalid_properties = Array.new
148
- if @year_month.nil?
149
- invalid_properties.push('invalid value for "year_month", year_month cannot be nil.')
150
- end
151
-
152
- if @message_usage.nil?
153
- invalid_properties.push('invalid value for "message_usage", message_usage cannot be nil.')
154
- end
155
-
156
- if @budget_usage.nil?
157
- invalid_properties.push('invalid value for "budget_usage", budget_usage cannot be nil.')
158
- end
159
-
160
- if @cost_sms.nil?
161
- invalid_properties.push('invalid value for "cost_sms", cost_sms cannot be nil.')
162
- end
163
-
164
- if @cost_call.nil?
165
- invalid_properties.push('invalid value for "cost_call", cost_call cannot be nil.')
166
- end
167
-
168
- if @cost_number.nil?
169
- invalid_properties.push('invalid value for "cost_number", cost_number cannot be nil.')
170
- end
171
-
172
- if @channel_usages.nil?
173
- invalid_properties.push('invalid value for "channel_usages", channel_usages cannot be nil.')
174
- end
175
-
176
- invalid_properties
177
- end
178
-
179
- # Check to see if the all the properties in the model are valid
180
- # @return true if the model is valid
181
- def valid?
182
- warn '[DEPRECATED] the `valid?` method is obsolete'
183
- return false if @year_month.nil?
184
- return false if @message_usage.nil?
185
- return false if @budget_usage.nil?
186
- return false if @cost_sms.nil?
187
- return false if @cost_call.nil?
188
- return false if @cost_number.nil?
189
- return false if @channel_usages.nil?
190
- true
191
- end
192
-
193
- # Custom attribute writer method with validation
194
- # @param [Object] year_month Value to be assigned
195
- def year_month=(year_month)
196
- if year_month.nil?
197
- fail ArgumentError, 'year_month cannot be nil'
198
- end
199
-
200
- @year_month = year_month
201
- end
202
-
203
- # Custom attribute writer method with validation
204
- # @param [Object] message_usage Value to be assigned
205
- def message_usage=(message_usage)
206
- if message_usage.nil?
207
- fail ArgumentError, 'message_usage cannot be nil'
208
- end
209
-
210
- @message_usage = message_usage
211
- end
212
-
213
- # Custom attribute writer method with validation
214
- # @param [Object] budget_usage Value to be assigned
215
- def budget_usage=(budget_usage)
216
- if budget_usage.nil?
217
- fail ArgumentError, 'budget_usage cannot be nil'
218
- end
219
-
220
- @budget_usage = budget_usage
221
- end
222
-
223
- # Custom attribute writer method with validation
224
- # @param [Object] cost_sms Value to be assigned
225
- def cost_sms=(cost_sms)
226
- if cost_sms.nil?
227
- fail ArgumentError, 'cost_sms cannot be nil'
228
- end
229
-
230
- @cost_sms = cost_sms
231
- end
232
-
233
- # Custom attribute writer method with validation
234
- # @param [Object] cost_call Value to be assigned
235
- def cost_call=(cost_call)
236
- if cost_call.nil?
237
- fail ArgumentError, 'cost_call cannot be nil'
238
- end
239
-
240
- @cost_call = cost_call
241
- end
242
-
243
- # Custom attribute writer method with validation
244
- # @param [Object] cost_number Value to be assigned
245
- def cost_number=(cost_number)
246
- if cost_number.nil?
247
- fail ArgumentError, 'cost_number cannot be nil'
248
- end
249
-
250
- @cost_number = cost_number
251
- end
252
-
253
- # Custom attribute writer method with validation
254
- # @param [Object] channel_usages Value to be assigned
255
- def channel_usages=(channel_usages)
256
- if channel_usages.nil?
257
- fail ArgumentError, 'channel_usages cannot be nil'
258
- end
259
-
260
- @channel_usages = channel_usages
261
- end
262
-
263
- # Checks equality by comparing each attribute.
264
- # @param [Object] Object to be compared
265
- def ==(o)
266
- return true if self.equal?(o)
267
- self.class == o.class &&
268
- year_month == o.year_month &&
269
- message_usage == o.message_usage &&
270
- budget_usage == o.budget_usage &&
271
- cost_sms == o.cost_sms &&
272
- cost_call == o.cost_call &&
273
- cost_number == o.cost_number &&
274
- channel_usages == o.channel_usages
275
- end
276
-
277
- # @see the `==` method
278
- # @param [Object] Object to be compared
279
- def eql?(o)
280
- self == o
281
- end
282
-
283
- # Calculates hash code according to all attributes.
284
- # @return [Integer] Hash code
285
- def hash
286
- [year_month, message_usage, budget_usage, cost_sms, cost_call, cost_number, channel_usages].hash
287
- end
288
-
289
- # Builds the object from hash
290
- # @param [Hash] attributes Model attributes in the form of hash
291
- # @return [Object] Returns the model itself
292
- def self.build_from_hash(attributes)
293
- return nil unless attributes.is_a?(Hash)
294
- attributes = attributes.transform_keys(&:to_sym)
295
- transformed_hash = {}
296
- openapi_types.each_pair do |key, type|
297
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
298
- transformed_hash["#{key}"] = nil
299
- elsif type =~ /\AArray<(.*)>/i
300
- # check to ensure the input is an array given that the attribute
301
- # is documented as an array but the input is not
302
- if attributes[attribute_map[key]].is_a?(Array)
303
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
304
- end
305
- elsif !attributes[attribute_map[key]].nil?
306
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
307
- end
308
- end
309
- new(transformed_hash)
310
- end
311
-
312
- # Returns the object in the form of hash
313
- # @return [Hash] Returns the object in the form of hash
314
- def to_hash
315
- hash = {}
316
- self.class.attribute_map.each_pair do |attr, param|
317
- value = self.send(attr)
318
- if value.nil?
319
- is_nullable = self.class.openapi_nullable.include?(attr)
320
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
321
- end
322
-
323
- hash[param] = _to_hash(value)
324
- end
325
- hash
326
- end
327
-
328
- end
329
-
330
- end