revox 0.0.2

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 (161) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +10 -0
  4. data/README.md +234 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/revox/client.rb +86 -0
  7. data/lib/revox/errors.rb +228 -0
  8. data/lib/revox/file_part.rb +58 -0
  9. data/lib/revox/internal/transport/base_client.rb +570 -0
  10. data/lib/revox/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/revox/internal/type/array_of.rb +168 -0
  12. data/lib/revox/internal/type/base_model.rb +529 -0
  13. data/lib/revox/internal/type/base_page.rb +55 -0
  14. data/lib/revox/internal/type/boolean.rb +77 -0
  15. data/lib/revox/internal/type/converter.rb +327 -0
  16. data/lib/revox/internal/type/enum.rb +131 -0
  17. data/lib/revox/internal/type/file_input.rb +110 -0
  18. data/lib/revox/internal/type/hash_of.rb +188 -0
  19. data/lib/revox/internal/type/request_parameters.rb +42 -0
  20. data/lib/revox/internal/type/union.rb +237 -0
  21. data/lib/revox/internal/type/unknown.rb +81 -0
  22. data/lib/revox/internal/util.rb +920 -0
  23. data/lib/revox/internal.rb +20 -0
  24. data/lib/revox/models/assistant_create_params.rb +467 -0
  25. data/lib/revox/models/assistant_create_response.rb +535 -0
  26. data/lib/revox/models/assistant_delete_params.rb +14 -0
  27. data/lib/revox/models/assistant_delete_response.rb +16 -0
  28. data/lib/revox/models/assistant_list_params.rb +14 -0
  29. data/lib/revox/models/assistant_list_response.rb +533 -0
  30. data/lib/revox/models/assistant_retrieve_params.rb +14 -0
  31. data/lib/revox/models/assistant_retrieve_response.rb +518 -0
  32. data/lib/revox/models/assistant_update_params.rb +467 -0
  33. data/lib/revox/models/assistant_update_response.rb +535 -0
  34. data/lib/revox/models/call_create_params.rb +592 -0
  35. data/lib/revox/models/call_create_response.rb +684 -0
  36. data/lib/revox/models/call_list_params.rb +29 -0
  37. data/lib/revox/models/call_list_response.rb +197 -0
  38. data/lib/revox/models/call_retrieve_params.rb +14 -0
  39. data/lib/revox/models/call_retrieve_response.rb +684 -0
  40. data/lib/revox/models/users/me_retrieve_params.rb +16 -0
  41. data/lib/revox/models/users/me_retrieve_response.rb +89 -0
  42. data/lib/revox/models/users/me_update_params.rb +22 -0
  43. data/lib/revox/models/users/me_update_response.rb +89 -0
  44. data/lib/revox/models/voice_list_params.rb +14 -0
  45. data/lib/revox/models/voice_list_response.rb +91 -0
  46. data/lib/revox/models/voice_preview_params.rb +49 -0
  47. data/lib/revox/models/voice_retrieve_params.rb +30 -0
  48. data/lib/revox/models/voice_retrieve_response.rb +39 -0
  49. data/lib/revox/models.rb +65 -0
  50. data/lib/revox/request_options.rb +77 -0
  51. data/lib/revox/resources/assistants.rb +180 -0
  52. data/lib/revox/resources/call.rb +100 -0
  53. data/lib/revox/resources/users/me.rb +55 -0
  54. data/lib/revox/resources/users.rb +18 -0
  55. data/lib/revox/resources/voices.rb +83 -0
  56. data/lib/revox/version.rb +5 -0
  57. data/lib/revox.rb +85 -0
  58. data/manifest.yaml +17 -0
  59. data/rbi/revox/client.rbi +58 -0
  60. data/rbi/revox/errors.rbi +205 -0
  61. data/rbi/revox/file_part.rbi +37 -0
  62. data/rbi/revox/internal/transport/base_client.rbi +297 -0
  63. data/rbi/revox/internal/transport/pooled_net_requester.rbi +82 -0
  64. data/rbi/revox/internal/type/array_of.rbi +104 -0
  65. data/rbi/revox/internal/type/base_model.rbi +299 -0
  66. data/rbi/revox/internal/type/base_page.rbi +42 -0
  67. data/rbi/revox/internal/type/boolean.rbi +58 -0
  68. data/rbi/revox/internal/type/converter.rbi +204 -0
  69. data/rbi/revox/internal/type/enum.rbi +82 -0
  70. data/rbi/revox/internal/type/file_input.rbi +58 -0
  71. data/rbi/revox/internal/type/hash_of.rbi +104 -0
  72. data/rbi/revox/internal/type/request_parameters.rbi +29 -0
  73. data/rbi/revox/internal/type/union.rbi +126 -0
  74. data/rbi/revox/internal/type/unknown.rbi +58 -0
  75. data/rbi/revox/internal/util.rbi +478 -0
  76. data/rbi/revox/internal.rbi +16 -0
  77. data/rbi/revox/models/assistant_create_params.rbi +929 -0
  78. data/rbi/revox/models/assistant_create_response.rbi +1089 -0
  79. data/rbi/revox/models/assistant_delete_params.rbi +27 -0
  80. data/rbi/revox/models/assistant_delete_response.rbi +26 -0
  81. data/rbi/revox/models/assistant_list_params.rbi +27 -0
  82. data/rbi/revox/models/assistant_list_response.rbi +1079 -0
  83. data/rbi/revox/models/assistant_retrieve_params.rbi +27 -0
  84. data/rbi/revox/models/assistant_retrieve_response.rbi +1024 -0
  85. data/rbi/revox/models/assistant_update_params.rbi +935 -0
  86. data/rbi/revox/models/assistant_update_response.rbi +1089 -0
  87. data/rbi/revox/models/call_create_params.rbi +1147 -0
  88. data/rbi/revox/models/call_create_response.rbi +1335 -0
  89. data/rbi/revox/models/call_list_params.rbi +47 -0
  90. data/rbi/revox/models/call_list_response.rbi +401 -0
  91. data/rbi/revox/models/call_retrieve_params.rbi +27 -0
  92. data/rbi/revox/models/call_retrieve_response.rbi +1346 -0
  93. data/rbi/revox/models/users/me_retrieve_params.rbi +29 -0
  94. data/rbi/revox/models/users/me_retrieve_response.rbi +139 -0
  95. data/rbi/revox/models/users/me_update_params.rbi +43 -0
  96. data/rbi/revox/models/users/me_update_response.rbi +139 -0
  97. data/rbi/revox/models/voice_list_params.rbi +25 -0
  98. data/rbi/revox/models/voice_list_response.rbi +204 -0
  99. data/rbi/revox/models/voice_preview_params.rbi +84 -0
  100. data/rbi/revox/models/voice_retrieve_params.rbi +59 -0
  101. data/rbi/revox/models/voice_retrieve_response.rbi +70 -0
  102. data/rbi/revox/models.rbi +27 -0
  103. data/rbi/revox/request_options.rbi +55 -0
  104. data/rbi/revox/resources/assistants.rbi +206 -0
  105. data/rbi/revox/resources/call.rbi +86 -0
  106. data/rbi/revox/resources/users/me.rbi +33 -0
  107. data/rbi/revox/resources/users.rbi +15 -0
  108. data/rbi/revox/resources/voices.rbi +58 -0
  109. data/rbi/revox/version.rbi +5 -0
  110. data/sig/revox/client.rbs +32 -0
  111. data/sig/revox/errors.rbs +117 -0
  112. data/sig/revox/file_part.rbs +21 -0
  113. data/sig/revox/internal/transport/base_client.rbs +133 -0
  114. data/sig/revox/internal/transport/pooled_net_requester.rbs +48 -0
  115. data/sig/revox/internal/type/array_of.rbs +48 -0
  116. data/sig/revox/internal/type/base_model.rbs +102 -0
  117. data/sig/revox/internal/type/base_page.rbs +24 -0
  118. data/sig/revox/internal/type/boolean.rbs +26 -0
  119. data/sig/revox/internal/type/converter.rbs +79 -0
  120. data/sig/revox/internal/type/enum.rbs +32 -0
  121. data/sig/revox/internal/type/file_input.rbs +25 -0
  122. data/sig/revox/internal/type/hash_of.rbs +48 -0
  123. data/sig/revox/internal/type/request_parameters.rbs +17 -0
  124. data/sig/revox/internal/type/union.rbs +52 -0
  125. data/sig/revox/internal/type/unknown.rbs +26 -0
  126. data/sig/revox/internal/util.rbs +185 -0
  127. data/sig/revox/internal.rbs +9 -0
  128. data/sig/revox/models/assistant_create_params.rbs +413 -0
  129. data/sig/revox/models/assistant_create_response.rbs +461 -0
  130. data/sig/revox/models/assistant_delete_params.rbs +15 -0
  131. data/sig/revox/models/assistant_delete_response.rbs +13 -0
  132. data/sig/revox/models/assistant_list_params.rbs +15 -0
  133. data/sig/revox/models/assistant_list_response.rbs +461 -0
  134. data/sig/revox/models/assistant_retrieve_params.rbs +15 -0
  135. data/sig/revox/models/assistant_retrieve_response.rbs +446 -0
  136. data/sig/revox/models/assistant_update_params.rbs +417 -0
  137. data/sig/revox/models/assistant_update_response.rbs +461 -0
  138. data/sig/revox/models/call_create_params.rbs +507 -0
  139. data/sig/revox/models/call_create_response.rbs +551 -0
  140. data/sig/revox/models/call_list_params.rbs +28 -0
  141. data/sig/revox/models/call_list_response.rbs +171 -0
  142. data/sig/revox/models/call_retrieve_params.rbs +14 -0
  143. data/sig/revox/models/call_retrieve_response.rbs +551 -0
  144. data/sig/revox/models/users/me_retrieve_params.rbs +16 -0
  145. data/sig/revox/models/users/me_retrieve_response.rbs +70 -0
  146. data/sig/revox/models/users/me_update_params.rbs +28 -0
  147. data/sig/revox/models/users/me_update_response.rbs +70 -0
  148. data/sig/revox/models/voice_list_params.rbs +14 -0
  149. data/sig/revox/models/voice_list_response.rbs +83 -0
  150. data/sig/revox/models/voice_preview_params.rbs +49 -0
  151. data/sig/revox/models/voice_retrieve_params.rbs +35 -0
  152. data/sig/revox/models/voice_retrieve_response.rbs +32 -0
  153. data/sig/revox/models.rbs +25 -0
  154. data/sig/revox/request_options.rbs +34 -0
  155. data/sig/revox/resources/assistants.rbs +66 -0
  156. data/sig/revox/resources/call.rbs +31 -0
  157. data/sig/revox/resources/users/me.rbs +18 -0
  158. data/sig/revox/resources/users.rbs +9 -0
  159. data/sig/revox/resources/voices.rbs +24 -0
  160. data/sig/revox/version.rbs +3 -0
  161. metadata +232 -0
@@ -0,0 +1,171 @@
1
+ module Revox
2
+ module Models
3
+ type call_list_response =
4
+ { calls: ::Array[Revox::Models::CallListResponse::Call] }
5
+
6
+ class CallListResponse < Revox::Internal::Type::BaseModel
7
+ attr_accessor calls: ::Array[Revox::Models::CallListResponse::Call]
8
+
9
+ def initialize: (
10
+ calls: ::Array[Revox::Models::CallListResponse::Call]
11
+ ) -> void
12
+
13
+ def to_hash: -> { calls: ::Array[Revox::Models::CallListResponse::Call] }
14
+
15
+ type call =
16
+ {
17
+ id: String,
18
+ answered_at: top,
19
+ ended_at: top,
20
+ phone_number: String,
21
+ recording_url: String?,
22
+ result: Revox::Models::CallListResponse::Call::result?,
23
+ started_at: top,
24
+ status: Revox::Models::CallListResponse::Call::status,
25
+ structured_output: ::Hash[Symbol, top]?,
26
+ transcript: ::Array[Revox::Models::CallListResponse::Call::Transcript]?
27
+ }
28
+
29
+ class Call < Revox::Internal::Type::BaseModel
30
+ attr_accessor id: String
31
+
32
+ attr_accessor answered_at: top
33
+
34
+ attr_accessor ended_at: top
35
+
36
+ attr_accessor phone_number: String
37
+
38
+ attr_accessor recording_url: String?
39
+
40
+ attr_accessor result: Revox::Models::CallListResponse::Call::result?
41
+
42
+ attr_accessor started_at: top
43
+
44
+ attr_accessor status: Revox::Models::CallListResponse::Call::status
45
+
46
+ attr_accessor structured_output: ::Hash[Symbol, top]?
47
+
48
+ attr_accessor transcript: ::Array[Revox::Models::CallListResponse::Call::Transcript]?
49
+
50
+ def initialize: (
51
+ id: String,
52
+ answered_at: top,
53
+ ended_at: top,
54
+ phone_number: String,
55
+ recording_url: String?,
56
+ result: Revox::Models::CallListResponse::Call::result?,
57
+ started_at: top,
58
+ status: Revox::Models::CallListResponse::Call::status,
59
+ ?structured_output: ::Hash[Symbol, top]?,
60
+ ?transcript: ::Array[Revox::Models::CallListResponse::Call::Transcript]?
61
+ ) -> void
62
+
63
+ def to_hash: -> {
64
+ id: String,
65
+ answered_at: top,
66
+ ended_at: top,
67
+ phone_number: String,
68
+ recording_url: String?,
69
+ result: Revox::Models::CallListResponse::Call::result?,
70
+ started_at: top,
71
+ status: Revox::Models::CallListResponse::Call::status,
72
+ structured_output: ::Hash[Symbol, top]?,
73
+ transcript: ::Array[Revox::Models::CallListResponse::Call::Transcript]?
74
+ }
75
+
76
+ type result = :IVR | :voicemail | :human | :unknown
77
+
78
+ module Result
79
+ extend Revox::Internal::Type::Enum
80
+
81
+ IVR: :IVR
82
+ VOICEMAIL: :voicemail
83
+ HUMAN: :human
84
+ UNKNOWN: :unknown
85
+
86
+ def self?.values: -> ::Array[Revox::Models::CallListResponse::Call::result]
87
+ end
88
+
89
+ type status = :queued | :ringing | :ongoing | :completed
90
+
91
+ module Status
92
+ extend Revox::Internal::Type::Enum
93
+
94
+ QUEUED: :queued
95
+ RINGING: :ringing
96
+ ONGOING: :ongoing
97
+ COMPLETED: :completed
98
+
99
+ def self?.values: -> ::Array[Revox::Models::CallListResponse::Call::status]
100
+ end
101
+
102
+ type transcript =
103
+ {
104
+ content: String,
105
+ role: Revox::Models::CallListResponse::Call::Transcript::role,
106
+ tool_arguments: Revox::Models::CallListResponse::Call::Transcript::tool_arguments,
107
+ tool_is_error: bool,
108
+ tool_name: String
109
+ }
110
+
111
+ class Transcript < Revox::Internal::Type::BaseModel
112
+ attr_accessor content: String
113
+
114
+ attr_accessor role: Revox::Models::CallListResponse::Call::Transcript::role
115
+
116
+ attr_reader tool_arguments: Revox::Models::CallListResponse::Call::Transcript::tool_arguments?
117
+
118
+ def tool_arguments=: (
119
+ Revox::Models::CallListResponse::Call::Transcript::tool_arguments
120
+ ) -> Revox::Models::CallListResponse::Call::Transcript::tool_arguments
121
+
122
+ attr_reader tool_is_error: bool?
123
+
124
+ def tool_is_error=: (bool) -> bool
125
+
126
+ attr_reader tool_name: String?
127
+
128
+ def tool_name=: (String) -> String
129
+
130
+ def initialize: (
131
+ content: String,
132
+ role: Revox::Models::CallListResponse::Call::Transcript::role,
133
+ ?tool_arguments: Revox::Models::CallListResponse::Call::Transcript::tool_arguments,
134
+ ?tool_is_error: bool,
135
+ ?tool_name: String
136
+ ) -> void
137
+
138
+ def to_hash: -> {
139
+ content: String,
140
+ role: Revox::Models::CallListResponse::Call::Transcript::role,
141
+ tool_arguments: Revox::Models::CallListResponse::Call::Transcript::tool_arguments,
142
+ tool_is_error: bool,
143
+ tool_name: String
144
+ }
145
+
146
+ type role = :user | :assistant | :tool
147
+
148
+ module Role
149
+ extend Revox::Internal::Type::Enum
150
+
151
+ USER: :user
152
+ ASSISTANT: :assistant
153
+ TOOL: :tool
154
+
155
+ def self?.values: -> ::Array[Revox::Models::CallListResponse::Call::Transcript::role]
156
+ end
157
+
158
+ type tool_arguments = ::Hash[Symbol, top] | String
159
+
160
+ module ToolArguments
161
+ extend Revox::Internal::Type::Union
162
+
163
+ def self?.variants: -> ::Array[Revox::Models::CallListResponse::Call::Transcript::tool_arguments]
164
+
165
+ UnionMember0Map: Revox::Internal::Type::Converter
166
+ end
167
+ end
168
+ end
169
+ end
170
+ end
171
+ end
@@ -0,0 +1,14 @@
1
+ module Revox
2
+ module Models
3
+ type call_retrieve_params = { } & Revox::Internal::Type::request_parameters
4
+
5
+ class CallRetrieveParams < Revox::Internal::Type::BaseModel
6
+ extend Revox::Internal::Type::RequestParameters::Converter
7
+ include Revox::Internal::Type::RequestParameters
8
+
9
+ def initialize: (?request_options: Revox::request_opts) -> void
10
+
11
+ def to_hash: -> { request_options: Revox::RequestOptions }
12
+ end
13
+ end
14
+ end