zavudev 0.5.0 → 0.7.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +22 -0
- data/README.md +1 -1
- data/lib/zavudev/internal/util.rb +3 -1
- data/lib/zavudev/models/contact.rb +3 -153
- data/lib/zavudev/models/contact_channel.rb +155 -0
- data/lib/zavudev/models/message_send_params.rb +4 -3
- data/lib/zavudev/models/senders/agent/agent_flow.rb +6 -101
- data/lib/zavudev/models/senders/agent/agent_tool.rb +3 -53
- data/lib/zavudev/models/senders/agent/flow_create_params.rb +6 -100
- data/lib/zavudev/models/senders/agent/flow_step.rb +61 -0
- data/lib/zavudev/models/senders/agent/flow_trigger.rb +51 -0
- data/lib/zavudev/models/senders/agent/flow_update_params.rb +6 -100
- data/lib/zavudev/models/senders/agent/tool_create_params.rb +3 -52
- data/lib/zavudev/models/senders/agent/tool_parameters.rb +58 -0
- data/lib/zavudev/models/senders/agent/tool_update_params.rb +3 -52
- data/lib/zavudev/models/template.rb +33 -5
- data/lib/zavudev/models/template_create_params.rb +64 -2
- data/lib/zavudev/models.rb +2 -0
- data/lib/zavudev/resources/messages.rb +1 -1
- data/lib/zavudev/resources/senders/agent/flows.rb +4 -4
- data/lib/zavudev/resources/senders/agent/tools.rb +2 -2
- data/lib/zavudev/resources/templates.rb +14 -2
- data/lib/zavudev/version.rb +1 -1
- data/lib/zavudev.rb +4 -0
- data/rbi/zavudev/models/contact.rbi +4 -235
- data/rbi/zavudev/models/contact_channel.rbi +231 -0
- data/rbi/zavudev/models/message_send_params.rbi +6 -4
- data/rbi/zavudev/models/senders/agent/agent_flow.rbi +7 -233
- data/rbi/zavudev/models/senders/agent/agent_tool.rbi +4 -130
- data/rbi/zavudev/models/senders/agent/flow_create_params.rbi +7 -245
- data/rbi/zavudev/models/senders/agent/flow_step.rbi +115 -0
- data/rbi/zavudev/models/senders/agent/flow_trigger.rbi +108 -0
- data/rbi/zavudev/models/senders/agent/flow_update_params.rbi +8 -255
- data/rbi/zavudev/models/senders/agent/tool_create_params.rbi +4 -132
- data/rbi/zavudev/models/senders/agent/tool_parameters.rbi +124 -0
- data/rbi/zavudev/models/senders/agent/tool_update_params.rbi +4 -136
- data/rbi/zavudev/models/template.rbi +39 -4
- data/rbi/zavudev/models/template_create_params.rbi +105 -0
- data/rbi/zavudev/models.rbi +2 -0
- data/rbi/zavudev/resources/messages.rbi +3 -3
- data/rbi/zavudev/resources/senders/agent/flows.rbi +4 -12
- data/rbi/zavudev/resources/senders/agent/tools.rbi +2 -4
- data/rbi/zavudev/resources/templates.rbi +19 -0
- data/sig/zavudev/models/contact.rbs +6 -153
- data/sig/zavudev/models/contact_channel.rbs +150 -0
- data/sig/zavudev/models/senders/agent/agent_flow.rbs +8 -100
- data/sig/zavudev/models/senders/agent/agent_tool.rbs +4 -57
- data/sig/zavudev/models/senders/agent/flow_create_params.rbs +8 -100
- data/sig/zavudev/models/senders/agent/flow_step.rbs +55 -0
- data/sig/zavudev/models/senders/agent/flow_trigger.rbs +51 -0
- data/sig/zavudev/models/senders/agent/flow_update_params.rbs +12 -104
- data/sig/zavudev/models/senders/agent/tool_create_params.rbs +4 -57
- data/sig/zavudev/models/senders/agent/tool_parameters.rbs +60 -0
- data/sig/zavudev/models/senders/agent/tool_update_params.rbs +6 -59
- data/sig/zavudev/models/template.rbs +21 -0
- data/sig/zavudev/models/template_create_params.rbs +57 -0
- data/sig/zavudev/models.rbs +2 -0
- data/sig/zavudev/resources/senders/agent/flows.rbs +4 -4
- data/sig/zavudev/resources/senders/agent/tools.rbs +2 -2
- data/sig/zavudev/resources/templates.rbs +6 -0
- metadata +14 -2
|
@@ -22,19 +22,14 @@ module Zavudev
|
|
|
22
22
|
sig { returns(String) }
|
|
23
23
|
attr_accessor :name
|
|
24
24
|
|
|
25
|
-
sig
|
|
26
|
-
returns(T::Array[Zavudev::Senders::Agent::FlowCreateParams::Step])
|
|
27
|
-
end
|
|
25
|
+
sig { returns(T::Array[Zavudev::Senders::Agent::FlowStep]) }
|
|
28
26
|
attr_accessor :steps
|
|
29
27
|
|
|
30
|
-
sig { returns(Zavudev::Senders::Agent::
|
|
28
|
+
sig { returns(Zavudev::Senders::Agent::FlowTrigger) }
|
|
31
29
|
attr_reader :trigger
|
|
32
30
|
|
|
33
31
|
sig do
|
|
34
|
-
params(
|
|
35
|
-
trigger:
|
|
36
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::OrHash
|
|
37
|
-
).void
|
|
32
|
+
params(trigger: Zavudev::Senders::Agent::FlowTrigger::OrHash).void
|
|
38
33
|
end
|
|
39
34
|
attr_writer :trigger
|
|
40
35
|
|
|
@@ -60,12 +55,8 @@ module Zavudev
|
|
|
60
55
|
params(
|
|
61
56
|
sender_id: String,
|
|
62
57
|
name: String,
|
|
63
|
-
steps:
|
|
64
|
-
|
|
65
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::OrHash
|
|
66
|
-
],
|
|
67
|
-
trigger:
|
|
68
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::OrHash,
|
|
58
|
+
steps: T::Array[Zavudev::Senders::Agent::FlowStep::OrHash],
|
|
59
|
+
trigger: Zavudev::Senders::Agent::FlowTrigger::OrHash,
|
|
69
60
|
description: String,
|
|
70
61
|
enabled: T::Boolean,
|
|
71
62
|
priority: Integer,
|
|
@@ -89,9 +80,8 @@ module Zavudev
|
|
|
89
80
|
{
|
|
90
81
|
sender_id: String,
|
|
91
82
|
name: String,
|
|
92
|
-
steps:
|
|
93
|
-
|
|
94
|
-
trigger: Zavudev::Senders::Agent::FlowCreateParams::Trigger,
|
|
83
|
+
steps: T::Array[Zavudev::Senders::Agent::FlowStep],
|
|
84
|
+
trigger: Zavudev::Senders::Agent::FlowTrigger,
|
|
95
85
|
description: String,
|
|
96
86
|
enabled: T::Boolean,
|
|
97
87
|
priority: Integer,
|
|
@@ -101,234 +91,6 @@ module Zavudev
|
|
|
101
91
|
end
|
|
102
92
|
def to_hash
|
|
103
93
|
end
|
|
104
|
-
|
|
105
|
-
class Step < Zavudev::Internal::Type::BaseModel
|
|
106
|
-
OrHash =
|
|
107
|
-
T.type_alias do
|
|
108
|
-
T.any(
|
|
109
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step,
|
|
110
|
-
Zavudev::Internal::AnyHash
|
|
111
|
-
)
|
|
112
|
-
end
|
|
113
|
-
|
|
114
|
-
# Unique step identifier.
|
|
115
|
-
sig { returns(String) }
|
|
116
|
-
attr_accessor :id
|
|
117
|
-
|
|
118
|
-
# Step configuration (varies by type).
|
|
119
|
-
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
120
|
-
attr_accessor :config
|
|
121
|
-
|
|
122
|
-
# Type of flow step.
|
|
123
|
-
sig do
|
|
124
|
-
returns(
|
|
125
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::OrSymbol
|
|
126
|
-
)
|
|
127
|
-
end
|
|
128
|
-
attr_accessor :type
|
|
129
|
-
|
|
130
|
-
# ID of the next step to execute.
|
|
131
|
-
sig { returns(T.nilable(String)) }
|
|
132
|
-
attr_accessor :next_step_id
|
|
133
|
-
|
|
134
|
-
sig do
|
|
135
|
-
params(
|
|
136
|
-
id: String,
|
|
137
|
-
config: T::Hash[Symbol, T.anything],
|
|
138
|
-
type:
|
|
139
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::OrSymbol,
|
|
140
|
-
next_step_id: T.nilable(String)
|
|
141
|
-
).returns(T.attached_class)
|
|
142
|
-
end
|
|
143
|
-
def self.new(
|
|
144
|
-
# Unique step identifier.
|
|
145
|
-
id:,
|
|
146
|
-
# Step configuration (varies by type).
|
|
147
|
-
config:,
|
|
148
|
-
# Type of flow step.
|
|
149
|
-
type:,
|
|
150
|
-
# ID of the next step to execute.
|
|
151
|
-
next_step_id: nil
|
|
152
|
-
)
|
|
153
|
-
end
|
|
154
|
-
|
|
155
|
-
sig do
|
|
156
|
-
override.returns(
|
|
157
|
-
{
|
|
158
|
-
id: String,
|
|
159
|
-
config: T::Hash[Symbol, T.anything],
|
|
160
|
-
type:
|
|
161
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::OrSymbol,
|
|
162
|
-
next_step_id: T.nilable(String)
|
|
163
|
-
}
|
|
164
|
-
)
|
|
165
|
-
end
|
|
166
|
-
def to_hash
|
|
167
|
-
end
|
|
168
|
-
|
|
169
|
-
# Type of flow step.
|
|
170
|
-
module Type
|
|
171
|
-
extend Zavudev::Internal::Type::Enum
|
|
172
|
-
|
|
173
|
-
TaggedSymbol =
|
|
174
|
-
T.type_alias do
|
|
175
|
-
T.all(
|
|
176
|
-
Symbol,
|
|
177
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type
|
|
178
|
-
)
|
|
179
|
-
end
|
|
180
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
181
|
-
|
|
182
|
-
MESSAGE =
|
|
183
|
-
T.let(
|
|
184
|
-
:message,
|
|
185
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::TaggedSymbol
|
|
186
|
-
)
|
|
187
|
-
COLLECT =
|
|
188
|
-
T.let(
|
|
189
|
-
:collect,
|
|
190
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::TaggedSymbol
|
|
191
|
-
)
|
|
192
|
-
CONDITION =
|
|
193
|
-
T.let(
|
|
194
|
-
:condition,
|
|
195
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::TaggedSymbol
|
|
196
|
-
)
|
|
197
|
-
TOOL =
|
|
198
|
-
T.let(
|
|
199
|
-
:tool,
|
|
200
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::TaggedSymbol
|
|
201
|
-
)
|
|
202
|
-
LLM =
|
|
203
|
-
T.let(
|
|
204
|
-
:llm,
|
|
205
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::TaggedSymbol
|
|
206
|
-
)
|
|
207
|
-
TRANSFER =
|
|
208
|
-
T.let(
|
|
209
|
-
:transfer,
|
|
210
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::TaggedSymbol
|
|
211
|
-
)
|
|
212
|
-
|
|
213
|
-
sig do
|
|
214
|
-
override.returns(
|
|
215
|
-
T::Array[
|
|
216
|
-
Zavudev::Senders::Agent::FlowCreateParams::Step::Type::TaggedSymbol
|
|
217
|
-
]
|
|
218
|
-
)
|
|
219
|
-
end
|
|
220
|
-
def self.values
|
|
221
|
-
end
|
|
222
|
-
end
|
|
223
|
-
end
|
|
224
|
-
|
|
225
|
-
class Trigger < Zavudev::Internal::Type::BaseModel
|
|
226
|
-
OrHash =
|
|
227
|
-
T.type_alias do
|
|
228
|
-
T.any(
|
|
229
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger,
|
|
230
|
-
Zavudev::Internal::AnyHash
|
|
231
|
-
)
|
|
232
|
-
end
|
|
233
|
-
|
|
234
|
-
# Type of trigger for a flow.
|
|
235
|
-
sig do
|
|
236
|
-
returns(
|
|
237
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type::OrSymbol
|
|
238
|
-
)
|
|
239
|
-
end
|
|
240
|
-
attr_accessor :type
|
|
241
|
-
|
|
242
|
-
# Intent that triggers the flow (for intent type).
|
|
243
|
-
sig { returns(T.nilable(String)) }
|
|
244
|
-
attr_reader :intent
|
|
245
|
-
|
|
246
|
-
sig { params(intent: String).void }
|
|
247
|
-
attr_writer :intent
|
|
248
|
-
|
|
249
|
-
# Keywords that trigger the flow (for keyword type).
|
|
250
|
-
sig { returns(T.nilable(T::Array[String])) }
|
|
251
|
-
attr_reader :keywords
|
|
252
|
-
|
|
253
|
-
sig { params(keywords: T::Array[String]).void }
|
|
254
|
-
attr_writer :keywords
|
|
255
|
-
|
|
256
|
-
sig do
|
|
257
|
-
params(
|
|
258
|
-
type:
|
|
259
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type::OrSymbol,
|
|
260
|
-
intent: String,
|
|
261
|
-
keywords: T::Array[String]
|
|
262
|
-
).returns(T.attached_class)
|
|
263
|
-
end
|
|
264
|
-
def self.new(
|
|
265
|
-
# Type of trigger for a flow.
|
|
266
|
-
type:,
|
|
267
|
-
# Intent that triggers the flow (for intent type).
|
|
268
|
-
intent: nil,
|
|
269
|
-
# Keywords that trigger the flow (for keyword type).
|
|
270
|
-
keywords: nil
|
|
271
|
-
)
|
|
272
|
-
end
|
|
273
|
-
|
|
274
|
-
sig do
|
|
275
|
-
override.returns(
|
|
276
|
-
{
|
|
277
|
-
type:
|
|
278
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type::OrSymbol,
|
|
279
|
-
intent: String,
|
|
280
|
-
keywords: T::Array[String]
|
|
281
|
-
}
|
|
282
|
-
)
|
|
283
|
-
end
|
|
284
|
-
def to_hash
|
|
285
|
-
end
|
|
286
|
-
|
|
287
|
-
# Type of trigger for a flow.
|
|
288
|
-
module Type
|
|
289
|
-
extend Zavudev::Internal::Type::Enum
|
|
290
|
-
|
|
291
|
-
TaggedSymbol =
|
|
292
|
-
T.type_alias do
|
|
293
|
-
T.all(
|
|
294
|
-
Symbol,
|
|
295
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type
|
|
296
|
-
)
|
|
297
|
-
end
|
|
298
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
299
|
-
|
|
300
|
-
KEYWORD =
|
|
301
|
-
T.let(
|
|
302
|
-
:keyword,
|
|
303
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type::TaggedSymbol
|
|
304
|
-
)
|
|
305
|
-
INTENT =
|
|
306
|
-
T.let(
|
|
307
|
-
:intent,
|
|
308
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type::TaggedSymbol
|
|
309
|
-
)
|
|
310
|
-
ALWAYS =
|
|
311
|
-
T.let(
|
|
312
|
-
:always,
|
|
313
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type::TaggedSymbol
|
|
314
|
-
)
|
|
315
|
-
MANUAL =
|
|
316
|
-
T.let(
|
|
317
|
-
:manual,
|
|
318
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type::TaggedSymbol
|
|
319
|
-
)
|
|
320
|
-
|
|
321
|
-
sig do
|
|
322
|
-
override.returns(
|
|
323
|
-
T::Array[
|
|
324
|
-
Zavudev::Senders::Agent::FlowCreateParams::Trigger::Type::TaggedSymbol
|
|
325
|
-
]
|
|
326
|
-
)
|
|
327
|
-
end
|
|
328
|
-
def self.values
|
|
329
|
-
end
|
|
330
|
-
end
|
|
331
|
-
end
|
|
332
94
|
end
|
|
333
95
|
end
|
|
334
96
|
end
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Zavudev
|
|
4
|
+
module Models
|
|
5
|
+
module Senders
|
|
6
|
+
module Agent
|
|
7
|
+
class FlowStep < Zavudev::Internal::Type::BaseModel
|
|
8
|
+
OrHash =
|
|
9
|
+
T.type_alias do
|
|
10
|
+
T.any(
|
|
11
|
+
Zavudev::Senders::Agent::FlowStep,
|
|
12
|
+
Zavudev::Internal::AnyHash
|
|
13
|
+
)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
# Unique step identifier.
|
|
17
|
+
sig { returns(String) }
|
|
18
|
+
attr_accessor :id
|
|
19
|
+
|
|
20
|
+
# Step configuration (varies by type).
|
|
21
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
22
|
+
attr_accessor :config
|
|
23
|
+
|
|
24
|
+
# Type of flow step.
|
|
25
|
+
sig { returns(Zavudev::Senders::Agent::FlowStep::Type::OrSymbol) }
|
|
26
|
+
attr_accessor :type
|
|
27
|
+
|
|
28
|
+
# ID of the next step to execute.
|
|
29
|
+
sig { returns(T.nilable(String)) }
|
|
30
|
+
attr_accessor :next_step_id
|
|
31
|
+
|
|
32
|
+
sig do
|
|
33
|
+
params(
|
|
34
|
+
id: String,
|
|
35
|
+
config: T::Hash[Symbol, T.anything],
|
|
36
|
+
type: Zavudev::Senders::Agent::FlowStep::Type::OrSymbol,
|
|
37
|
+
next_step_id: T.nilable(String)
|
|
38
|
+
).returns(T.attached_class)
|
|
39
|
+
end
|
|
40
|
+
def self.new(
|
|
41
|
+
# Unique step identifier.
|
|
42
|
+
id:,
|
|
43
|
+
# Step configuration (varies by type).
|
|
44
|
+
config:,
|
|
45
|
+
# Type of flow step.
|
|
46
|
+
type:,
|
|
47
|
+
# ID of the next step to execute.
|
|
48
|
+
next_step_id: nil
|
|
49
|
+
)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
sig do
|
|
53
|
+
override.returns(
|
|
54
|
+
{
|
|
55
|
+
id: String,
|
|
56
|
+
config: T::Hash[Symbol, T.anything],
|
|
57
|
+
type: Zavudev::Senders::Agent::FlowStep::Type::OrSymbol,
|
|
58
|
+
next_step_id: T.nilable(String)
|
|
59
|
+
}
|
|
60
|
+
)
|
|
61
|
+
end
|
|
62
|
+
def to_hash
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
# Type of flow step.
|
|
66
|
+
module Type
|
|
67
|
+
extend Zavudev::Internal::Type::Enum
|
|
68
|
+
|
|
69
|
+
TaggedSymbol =
|
|
70
|
+
T.type_alias do
|
|
71
|
+
T.all(Symbol, Zavudev::Senders::Agent::FlowStep::Type)
|
|
72
|
+
end
|
|
73
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
74
|
+
|
|
75
|
+
MESSAGE =
|
|
76
|
+
T.let(
|
|
77
|
+
:message,
|
|
78
|
+
Zavudev::Senders::Agent::FlowStep::Type::TaggedSymbol
|
|
79
|
+
)
|
|
80
|
+
COLLECT =
|
|
81
|
+
T.let(
|
|
82
|
+
:collect,
|
|
83
|
+
Zavudev::Senders::Agent::FlowStep::Type::TaggedSymbol
|
|
84
|
+
)
|
|
85
|
+
CONDITION =
|
|
86
|
+
T.let(
|
|
87
|
+
:condition,
|
|
88
|
+
Zavudev::Senders::Agent::FlowStep::Type::TaggedSymbol
|
|
89
|
+
)
|
|
90
|
+
TOOL =
|
|
91
|
+
T.let(
|
|
92
|
+
:tool,
|
|
93
|
+
Zavudev::Senders::Agent::FlowStep::Type::TaggedSymbol
|
|
94
|
+
)
|
|
95
|
+
LLM =
|
|
96
|
+
T.let(:llm, Zavudev::Senders::Agent::FlowStep::Type::TaggedSymbol)
|
|
97
|
+
TRANSFER =
|
|
98
|
+
T.let(
|
|
99
|
+
:transfer,
|
|
100
|
+
Zavudev::Senders::Agent::FlowStep::Type::TaggedSymbol
|
|
101
|
+
)
|
|
102
|
+
|
|
103
|
+
sig do
|
|
104
|
+
override.returns(
|
|
105
|
+
T::Array[Zavudev::Senders::Agent::FlowStep::Type::TaggedSymbol]
|
|
106
|
+
)
|
|
107
|
+
end
|
|
108
|
+
def self.values
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
end
|
|
115
|
+
end
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Zavudev
|
|
4
|
+
module Models
|
|
5
|
+
module Senders
|
|
6
|
+
module Agent
|
|
7
|
+
class FlowTrigger < Zavudev::Internal::Type::BaseModel
|
|
8
|
+
OrHash =
|
|
9
|
+
T.type_alias do
|
|
10
|
+
T.any(
|
|
11
|
+
Zavudev::Senders::Agent::FlowTrigger,
|
|
12
|
+
Zavudev::Internal::AnyHash
|
|
13
|
+
)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
# Type of trigger for a flow.
|
|
17
|
+
sig { returns(Zavudev::Senders::Agent::FlowTrigger::Type::OrSymbol) }
|
|
18
|
+
attr_accessor :type
|
|
19
|
+
|
|
20
|
+
# Intent that triggers the flow (for intent type).
|
|
21
|
+
sig { returns(T.nilable(String)) }
|
|
22
|
+
attr_reader :intent
|
|
23
|
+
|
|
24
|
+
sig { params(intent: String).void }
|
|
25
|
+
attr_writer :intent
|
|
26
|
+
|
|
27
|
+
# Keywords that trigger the flow (for keyword type).
|
|
28
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
29
|
+
attr_reader :keywords
|
|
30
|
+
|
|
31
|
+
sig { params(keywords: T::Array[String]).void }
|
|
32
|
+
attr_writer :keywords
|
|
33
|
+
|
|
34
|
+
sig do
|
|
35
|
+
params(
|
|
36
|
+
type: Zavudev::Senders::Agent::FlowTrigger::Type::OrSymbol,
|
|
37
|
+
intent: String,
|
|
38
|
+
keywords: T::Array[String]
|
|
39
|
+
).returns(T.attached_class)
|
|
40
|
+
end
|
|
41
|
+
def self.new(
|
|
42
|
+
# Type of trigger for a flow.
|
|
43
|
+
type:,
|
|
44
|
+
# Intent that triggers the flow (for intent type).
|
|
45
|
+
intent: nil,
|
|
46
|
+
# Keywords that trigger the flow (for keyword type).
|
|
47
|
+
keywords: nil
|
|
48
|
+
)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
sig do
|
|
52
|
+
override.returns(
|
|
53
|
+
{
|
|
54
|
+
type: Zavudev::Senders::Agent::FlowTrigger::Type::OrSymbol,
|
|
55
|
+
intent: String,
|
|
56
|
+
keywords: T::Array[String]
|
|
57
|
+
}
|
|
58
|
+
)
|
|
59
|
+
end
|
|
60
|
+
def to_hash
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# Type of trigger for a flow.
|
|
64
|
+
module Type
|
|
65
|
+
extend Zavudev::Internal::Type::Enum
|
|
66
|
+
|
|
67
|
+
TaggedSymbol =
|
|
68
|
+
T.type_alias do
|
|
69
|
+
T.all(Symbol, Zavudev::Senders::Agent::FlowTrigger::Type)
|
|
70
|
+
end
|
|
71
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
72
|
+
|
|
73
|
+
KEYWORD =
|
|
74
|
+
T.let(
|
|
75
|
+
:keyword,
|
|
76
|
+
Zavudev::Senders::Agent::FlowTrigger::Type::TaggedSymbol
|
|
77
|
+
)
|
|
78
|
+
INTENT =
|
|
79
|
+
T.let(
|
|
80
|
+
:intent,
|
|
81
|
+
Zavudev::Senders::Agent::FlowTrigger::Type::TaggedSymbol
|
|
82
|
+
)
|
|
83
|
+
ALWAYS =
|
|
84
|
+
T.let(
|
|
85
|
+
:always,
|
|
86
|
+
Zavudev::Senders::Agent::FlowTrigger::Type::TaggedSymbol
|
|
87
|
+
)
|
|
88
|
+
MANUAL =
|
|
89
|
+
T.let(
|
|
90
|
+
:manual,
|
|
91
|
+
Zavudev::Senders::Agent::FlowTrigger::Type::TaggedSymbol
|
|
92
|
+
)
|
|
93
|
+
|
|
94
|
+
sig do
|
|
95
|
+
override.returns(
|
|
96
|
+
T::Array[
|
|
97
|
+
Zavudev::Senders::Agent::FlowTrigger::Type::TaggedSymbol
|
|
98
|
+
]
|
|
99
|
+
)
|
|
100
|
+
end
|
|
101
|
+
def self.values
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|