twilio-ruby 5.2.3 → 5.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.md +26 -0
- data/README.md +3 -3
- data/UPGRADE.md +30 -0
- data/lib/twilio-ruby.rb +0 -18
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +2 -2
- data/lib/twilio-ruby/rest/chat/v2/service.rb +24 -2
- data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +5 -3
- data/lib/twilio-ruby/rest/client.rb +3 -3
- data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +24 -2
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +5 -3
- data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +12 -12
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +38 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +40 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +350 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +264 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +10 -2
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +15 -3
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +38 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +6 -2
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +274 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +213 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +14 -10
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +40 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +357 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +243 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +10 -2
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +339 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +239 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +10 -2
- data/lib/twilio-ruby/rest/video/v1/room.rb +7 -0
- data/lib/twilio-ruby/security/request_validator.rb +1 -1
- data/lib/twilio-ruby/version.rb +1 -1
- data/spec/integration/chat/v2/service/channel/message_spec.rb +41 -7
- data/spec/integration/chat/v2/service_spec.rb +8 -0
- data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +41 -7
- data/spec/integration/ip_messaging/v2/service_spec.rb +8 -0
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +94 -0
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +79 -0
- data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +8 -0
- data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +21 -38
- data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +87 -0
- data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +68 -0
- data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +34 -61
- data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +8 -0
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +95 -0
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +55 -0
- data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +12 -4
- data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +92 -0
- data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +70 -0
- data/spec/integration/taskrouter/v1/workspace_spec.rb +8 -0
- data/spec/integration/video/v1/room_spec.rb +12 -0
- data/spec/security/request_validator_spec.rb +0 -28
- data/spec/twilio_spec.rb +0 -15
- metadata +28 -9
- data/lib/rack/twilio_webhook_authentication.rb +0 -46
- data/lib/twilio-ruby/util/configuration.rb +0 -7
- data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
- data/spec/util/configuration_spec.rb +0 -15
@@ -29,105 +29,78 @@ describe 'WorkersStatistics' do
|
|
29
29
|
200,
|
30
30
|
%q[
|
31
31
|
{
|
32
|
-
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
33
|
-
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/Statistics",
|
34
32
|
"cumulative": {
|
33
|
+
"reservations_created": 0,
|
34
|
+
"reservations_accepted": 0,
|
35
|
+
"reservations_rejected": 0,
|
36
|
+
"reservations_timed_out": 0,
|
37
|
+
"reservations_canceled": 0,
|
38
|
+
"reservations_rescinded": 0,
|
35
39
|
"activity_durations": [
|
36
40
|
{
|
37
|
-
"avg": 0.0,
|
38
|
-
"friendly_name": "80fa2beb-3a05-11e5-8fc8-98e0d9a1eb73",
|
39
41
|
"max": 0,
|
40
|
-
"min":
|
42
|
+
"min": 900,
|
41
43
|
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
42
|
-
"
|
44
|
+
"friendly_name": "Offline",
|
45
|
+
"avg": 1080,
|
46
|
+
"total": 5400
|
43
47
|
},
|
44
48
|
{
|
45
|
-
"avg": 0.0,
|
46
|
-
"friendly_name": "817ca1c5-3a05-11e5-9292-98e0d9a1eb73",
|
47
49
|
"max": 0,
|
48
|
-
"min":
|
50
|
+
"min": 900,
|
49
51
|
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
50
|
-
"total": 0
|
51
|
-
},
|
52
|
-
{
|
53
|
-
"avg": 0.0,
|
54
52
|
"friendly_name": "Busy",
|
55
|
-
"
|
56
|
-
"
|
57
|
-
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
58
|
-
"total": 0
|
53
|
+
"avg": 1012,
|
54
|
+
"total": 8100
|
59
55
|
},
|
60
56
|
{
|
61
|
-
"avg": 0.0,
|
62
|
-
"friendly_name": "Idle",
|
63
57
|
"max": 0,
|
64
58
|
"min": 0,
|
65
59
|
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
60
|
+
"friendly_name": "Idle",
|
61
|
+
"avg": 0,
|
66
62
|
"total": 0
|
67
63
|
},
|
68
64
|
{
|
69
|
-
"avg": 0.0,
|
70
|
-
"friendly_name": "Offline",
|
71
65
|
"max": 0,
|
72
66
|
"min": 0,
|
73
67
|
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
74
|
-
"total": 0
|
75
|
-
},
|
76
|
-
{
|
77
|
-
"avg": 0.0,
|
78
68
|
"friendly_name": "Reserved",
|
79
|
-
"
|
80
|
-
"min": 0,
|
81
|
-
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
69
|
+
"avg": 0,
|
82
70
|
"total": 0
|
83
71
|
}
|
84
72
|
],
|
85
|
-
"
|
86
|
-
"
|
87
|
-
"reservations_canceled": 0,
|
88
|
-
"reservations_created": 0,
|
89
|
-
"reservations_rejected": 0,
|
90
|
-
"reservations_rescinded": 0,
|
91
|
-
"reservations_timed_out": 0,
|
92
|
-
"start_time": "2015-08-18T16:20:33Z",
|
93
|
-
"tasks_assigned": 0
|
73
|
+
"start_time": "2008-01-02T00:00:00Z",
|
74
|
+
"end_time": "2008-01-02T00:00:00Z"
|
94
75
|
},
|
95
76
|
"realtime": {
|
77
|
+
"total_workers": 15,
|
96
78
|
"activity_statistics": [
|
97
|
-
{
|
98
|
-
"friendly_name": "Offline",
|
99
|
-
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
100
|
-
"workers": 1
|
101
|
-
},
|
102
79
|
{
|
103
80
|
"friendly_name": "Idle",
|
104
|
-
"
|
105
|
-
"
|
81
|
+
"workers": 0,
|
82
|
+
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
106
83
|
},
|
107
84
|
{
|
108
|
-
"friendly_name": "
|
109
|
-
"
|
110
|
-
"
|
111
|
-
},
|
112
|
-
{
|
113
|
-
"friendly_name": "Reserved",
|
114
|
-
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
115
|
-
"workers": 0
|
85
|
+
"friendly_name": "Busy",
|
86
|
+
"workers": 9,
|
87
|
+
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
116
88
|
},
|
117
89
|
{
|
118
|
-
"friendly_name": "
|
119
|
-
"
|
120
|
-
"
|
90
|
+
"friendly_name": "Offline",
|
91
|
+
"workers": 6,
|
92
|
+
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
121
93
|
},
|
122
94
|
{
|
123
|
-
"friendly_name": "
|
124
|
-
"
|
125
|
-
"
|
95
|
+
"friendly_name": "Reserved",
|
96
|
+
"workers": 0,
|
97
|
+
"sid": "WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
126
98
|
}
|
127
|
-
]
|
128
|
-
"total_workers": 1
|
99
|
+
]
|
129
100
|
},
|
130
|
-
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
101
|
+
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
102
|
+
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
103
|
+
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/Statistics"
|
131
104
|
}
|
132
105
|
]
|
133
106
|
))
|
@@ -56,6 +56,8 @@ describe 'Worker' do
|
|
56
56
|
"activity": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Activities/WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
57
57
|
"workspace": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
58
58
|
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/Statistics",
|
59
|
+
"workers_real_time_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/RealTimeStatistics",
|
60
|
+
"workers_cumulative_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/CumulativeStatistics",
|
59
61
|
"worker_channels": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/WKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Channels",
|
60
62
|
"reservations": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/WKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Reservations"
|
61
63
|
}
|
@@ -137,6 +139,8 @@ describe 'Worker' do
|
|
137
139
|
"activity": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Activities/WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
138
140
|
"workspace": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
139
141
|
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/Statistics",
|
142
|
+
"workers_real_time_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/RealTimeStatistics",
|
143
|
+
"workers_cumulative_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/CumulativeStatistics",
|
140
144
|
"worker_channels": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/WKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Channels",
|
141
145
|
"reservations": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/WKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Reservations"
|
142
146
|
}
|
@@ -188,6 +192,8 @@ describe 'Worker' do
|
|
188
192
|
"activity": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Activities/WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
189
193
|
"workspace": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
190
194
|
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/Statistics",
|
195
|
+
"workers_real_time_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/RealTimeStatistics",
|
196
|
+
"workers_cumulative_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/CumulativeStatistics",
|
191
197
|
"worker_channels": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/WKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Channels",
|
192
198
|
"reservations": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/WKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Reservations"
|
193
199
|
}
|
@@ -239,6 +245,8 @@ describe 'Worker' do
|
|
239
245
|
"activity": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Activities/WAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
240
246
|
"workspace": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
241
247
|
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/Statistics",
|
248
|
+
"workers_real_time_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/RealTimeStatistics",
|
249
|
+
"workers_cumulative_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/CumulativeStatistics",
|
242
250
|
"worker_channels": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/WKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Channels",
|
243
251
|
"reservations": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workers/WKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Reservations"
|
244
252
|
}
|
@@ -0,0 +1,95 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# \ / _ _ _| _ _
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
5
|
+
# / /
|
6
|
+
|
7
|
+
require 'spec_helper.rb'
|
8
|
+
|
9
|
+
describe 'WorkflowCumulativeStatistics' do
|
10
|
+
it "can fetch" do
|
11
|
+
@holodeck.mock(Twilio::Response.new(500, ''))
|
12
|
+
|
13
|
+
expect {
|
14
|
+
@client.taskrouter.v1.workspaces("WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
15
|
+
.workflows("WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
16
|
+
.workflow_cumulative_statistics().fetch()
|
17
|
+
}.to raise_exception(Twilio::REST::TwilioError)
|
18
|
+
|
19
|
+
values = {}
|
20
|
+
expect(
|
21
|
+
@holodeck.has_request?(Holodeck::Request.new(
|
22
|
+
method: 'get',
|
23
|
+
url: 'https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/CumulativeStatistics',
|
24
|
+
))).to eq(true)
|
25
|
+
end
|
26
|
+
|
27
|
+
it "receives fetch responses" do
|
28
|
+
@holodeck.mock(Twilio::Response.new(
|
29
|
+
200,
|
30
|
+
%q[
|
31
|
+
{
|
32
|
+
"avg_task_acceptance_time": 100,
|
33
|
+
"tasks_canceled": 100,
|
34
|
+
"start_time": "2015-07-30T20:00:00Z",
|
35
|
+
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
36
|
+
"tasks_moved": 100,
|
37
|
+
"tasks_entered": 100,
|
38
|
+
"wait_duration_until_canceled": {
|
39
|
+
"avg": 0,
|
40
|
+
"min": 0,
|
41
|
+
"max": 0,
|
42
|
+
"total": 0
|
43
|
+
},
|
44
|
+
"wait_duration_until_accepted": {
|
45
|
+
"avg": 0,
|
46
|
+
"min": 0,
|
47
|
+
"max": 0,
|
48
|
+
"total": 0
|
49
|
+
},
|
50
|
+
"split_by_wait_time": {
|
51
|
+
"5": {
|
52
|
+
"above": {
|
53
|
+
"tasks_canceled": 0,
|
54
|
+
"reservations_accepted": 0
|
55
|
+
},
|
56
|
+
"below": {
|
57
|
+
"tasks_canceled": 0,
|
58
|
+
"reservations_accepted": 0
|
59
|
+
}
|
60
|
+
},
|
61
|
+
"10": {
|
62
|
+
"above": {
|
63
|
+
"tasks_canceled": 0,
|
64
|
+
"reservations_accepted": 0
|
65
|
+
},
|
66
|
+
"below": {
|
67
|
+
"tasks_canceled": 0,
|
68
|
+
"reservations_accepted": 0
|
69
|
+
}
|
70
|
+
}
|
71
|
+
},
|
72
|
+
"reservations_canceled": 100,
|
73
|
+
"end_time": "2015-07-30T20:00:00Z",
|
74
|
+
"workflow_sid": "WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
75
|
+
"reservations_created": 100,
|
76
|
+
"reservations_accepted": 100,
|
77
|
+
"reservations_rescinded": 100,
|
78
|
+
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
79
|
+
"reservations_rejected": 100,
|
80
|
+
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/CumulativeStatistics",
|
81
|
+
"tasks_deleted": 100,
|
82
|
+
"tasks_timed_out_in_workflow": 100,
|
83
|
+
"tasks_completed": 100,
|
84
|
+
"reservations_timed_out": 100
|
85
|
+
}
|
86
|
+
]
|
87
|
+
))
|
88
|
+
|
89
|
+
actual = @client.taskrouter.v1.workspaces("WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
90
|
+
.workflows("WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
91
|
+
.workflow_cumulative_statistics().fetch()
|
92
|
+
|
93
|
+
expect(actual).to_not eq(nil)
|
94
|
+
end
|
95
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# \ / _ _ _| _ _
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
5
|
+
# / /
|
6
|
+
|
7
|
+
require 'spec_helper.rb'
|
8
|
+
|
9
|
+
describe 'WorkflowRealTimeStatistics' do
|
10
|
+
it "can fetch" do
|
11
|
+
@holodeck.mock(Twilio::Response.new(500, ''))
|
12
|
+
|
13
|
+
expect {
|
14
|
+
@client.taskrouter.v1.workspaces("WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
15
|
+
.workflows("WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
16
|
+
.workflow_real_time_statistics().fetch()
|
17
|
+
}.to raise_exception(Twilio::REST::TwilioError)
|
18
|
+
|
19
|
+
values = {}
|
20
|
+
expect(
|
21
|
+
@holodeck.has_request?(Holodeck::Request.new(
|
22
|
+
method: 'get',
|
23
|
+
url: 'https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RealTimeStatistics',
|
24
|
+
))).to eq(true)
|
25
|
+
end
|
26
|
+
|
27
|
+
it "receives fetch responses" do
|
28
|
+
@holodeck.mock(Twilio::Response.new(
|
29
|
+
200,
|
30
|
+
%q[
|
31
|
+
{
|
32
|
+
"longest_task_waiting_age": 100,
|
33
|
+
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RealTimeStatistics",
|
34
|
+
"tasks_by_priority": {},
|
35
|
+
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
36
|
+
"tasks_by_status": {
|
37
|
+
"reserved": 0,
|
38
|
+
"pending": 0,
|
39
|
+
"assigned": 0,
|
40
|
+
"wrapping": 0
|
41
|
+
},
|
42
|
+
"workflow_sid": "WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
43
|
+
"total_tasks": 100,
|
44
|
+
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
45
|
+
}
|
46
|
+
]
|
47
|
+
))
|
48
|
+
|
49
|
+
actual = @client.taskrouter.v1.workspaces("WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
50
|
+
.workflows("WWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
51
|
+
.workflow_real_time_statistics().fetch()
|
52
|
+
|
53
|
+
expect(actual).to_not eq(nil)
|
54
|
+
end
|
55
|
+
end
|
@@ -41,7 +41,9 @@ describe 'Workflow' do
|
|
41
41
|
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
42
42
|
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
43
43
|
"links": {
|
44
|
-
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Statistics"
|
44
|
+
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Statistics",
|
45
|
+
"workflow_real_time_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RealTimeStatistics",
|
46
|
+
"workflow_cumulative_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/CumulativeStatistics"
|
45
47
|
}
|
46
48
|
}
|
47
49
|
]
|
@@ -86,7 +88,9 @@ describe 'Workflow' do
|
|
86
88
|
"task_reservation_timeout": 120,
|
87
89
|
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
88
90
|
"links": {
|
89
|
-
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Statistics"
|
91
|
+
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Statistics",
|
92
|
+
"workflow_real_time_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RealTimeStatistics",
|
93
|
+
"workflow_cumulative_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/CumulativeStatistics"
|
90
94
|
},
|
91
95
|
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
92
96
|
}
|
@@ -172,7 +176,9 @@ describe 'Workflow' do
|
|
172
176
|
"task_reservation_timeout": 120,
|
173
177
|
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
174
178
|
"links": {
|
175
|
-
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Statistics"
|
179
|
+
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Statistics",
|
180
|
+
"workflow_real_time_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RealTimeStatistics",
|
181
|
+
"workflow_cumulative_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/CumulativeStatistics"
|
176
182
|
},
|
177
183
|
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
178
184
|
}
|
@@ -251,7 +257,9 @@ describe 'Workflow' do
|
|
251
257
|
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
252
258
|
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
253
259
|
"links": {
|
254
|
-
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Statistics"
|
260
|
+
"statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Statistics",
|
261
|
+
"workflow_real_time_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/RealTimeStatistics",
|
262
|
+
"workflow_cumulative_statistics": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Workflows/WFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/CumulativeStatistics"
|
255
263
|
}
|
256
264
|
}
|
257
265
|
]
|
@@ -0,0 +1,92 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# \ / _ _ _| _ _
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
5
|
+
# / /
|
6
|
+
|
7
|
+
require 'spec_helper.rb'
|
8
|
+
|
9
|
+
describe 'WorkspaceCumulativeStatistics' do
|
10
|
+
it "can fetch" do
|
11
|
+
@holodeck.mock(Twilio::Response.new(500, ''))
|
12
|
+
|
13
|
+
expect {
|
14
|
+
@client.taskrouter.v1.workspaces("WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
15
|
+
.workspace_cumulative_statistics().fetch()
|
16
|
+
}.to raise_exception(Twilio::REST::TwilioError)
|
17
|
+
|
18
|
+
values = {}
|
19
|
+
expect(
|
20
|
+
@holodeck.has_request?(Holodeck::Request.new(
|
21
|
+
method: 'get',
|
22
|
+
url: 'https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/CumulativeStatistics',
|
23
|
+
))).to eq(true)
|
24
|
+
end
|
25
|
+
|
26
|
+
it "receives fetch responses" do
|
27
|
+
@holodeck.mock(Twilio::Response.new(
|
28
|
+
200,
|
29
|
+
%q[
|
30
|
+
{
|
31
|
+
"reservations_accepted": 100,
|
32
|
+
"tasks_completed": 100,
|
33
|
+
"start_time": "2015-07-30T20:00:00Z",
|
34
|
+
"reservations_rescinded": 100,
|
35
|
+
"tasks_timed_out_in_workflow": 100,
|
36
|
+
"end_time": "2015-07-30T20:00:00Z",
|
37
|
+
"avg_task_acceptance_time": 100,
|
38
|
+
"tasks_canceled": 100,
|
39
|
+
"url": "https://taskrouter.twilio.com/v1/Workspaces/WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/CumulativeStatistics",
|
40
|
+
"tasks_moved": 100,
|
41
|
+
"tasks_deleted": 100,
|
42
|
+
"tasks_created": 100,
|
43
|
+
"reservations_canceled": 100,
|
44
|
+
"reservations_timed_out": 100,
|
45
|
+
"wait_duration_until_canceled": {
|
46
|
+
"avg": 0,
|
47
|
+
"min": 0,
|
48
|
+
"max": 0,
|
49
|
+
"total": 0
|
50
|
+
},
|
51
|
+
"wait_duration_until_accepted": {
|
52
|
+
"avg": 0,
|
53
|
+
"min": 0,
|
54
|
+
"max": 0,
|
55
|
+
"total": 0
|
56
|
+
},
|
57
|
+
"split_by_wait_time": {
|
58
|
+
"5": {
|
59
|
+
"above": {
|
60
|
+
"tasks_canceled": 0,
|
61
|
+
"reservations_accepted": 0
|
62
|
+
},
|
63
|
+
"below": {
|
64
|
+
"tasks_canceled": 0,
|
65
|
+
"reservations_accepted": 0
|
66
|
+
}
|
67
|
+
},
|
68
|
+
"10": {
|
69
|
+
"above": {
|
70
|
+
"tasks_canceled": 0,
|
71
|
+
"reservations_accepted": 0
|
72
|
+
},
|
73
|
+
"below": {
|
74
|
+
"tasks_canceled": 0,
|
75
|
+
"reservations_accepted": 0
|
76
|
+
}
|
77
|
+
}
|
78
|
+
},
|
79
|
+
"reservations_created": 100,
|
80
|
+
"reservations_rejected": 100,
|
81
|
+
"workspace_sid": "WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
82
|
+
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
83
|
+
}
|
84
|
+
]
|
85
|
+
))
|
86
|
+
|
87
|
+
actual = @client.taskrouter.v1.workspaces("WSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") \
|
88
|
+
.workspace_cumulative_statistics().fetch()
|
89
|
+
|
90
|
+
expect(actual).to_not eq(nil)
|
91
|
+
end
|
92
|
+
end
|