telerivet 1.4.5 → 1.6.1
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/lib/telerivet/airtimetransaction.rb +139 -0
- data/lib/telerivet/broadcast.rb +12 -1
- data/lib/telerivet/contact.rb +31 -10
- data/lib/telerivet/datatable.rb +20 -8
- data/lib/telerivet/group.rb +14 -17
- data/lib/telerivet/label.rb +11 -2
- data/lib/telerivet/message.rb +52 -32
- data/lib/telerivet/organization.rb +80 -0
- data/lib/telerivet/phone.rb +11 -2
- data/lib/telerivet/project.rb +683 -22
- data/lib/telerivet/scheduledmessage.rb +11 -0
- data/lib/telerivet/service.rb +45 -7
- data/lib/telerivet/task.rb +151 -0
- data/lib/telerivet.rb +1 -1
- metadata +4 -2
@@ -98,6 +98,86 @@ class Organization < Entity
|
|
98
98
|
return @api.do_request("GET", get_base_api_path() + "/usage/#{usage_type}")
|
99
99
|
end
|
100
100
|
|
101
|
+
#
|
102
|
+
# Retrieves statistics about messages sent or received via Telerivet. This endpoint returns
|
103
|
+
# historical data that is computed shortly after midnight each day in the project's time zone,
|
104
|
+
# and does not contain message statistics for the current day.
|
105
|
+
#
|
106
|
+
# Arguments:
|
107
|
+
# - options (Hash)
|
108
|
+
# * Required
|
109
|
+
#
|
110
|
+
# - start_date (string)
|
111
|
+
# * Start date of message statistics, in YYYY-MM-DD format
|
112
|
+
# * Required
|
113
|
+
#
|
114
|
+
# - end_date (string)
|
115
|
+
# * End date of message statistics (inclusive), in YYYY-MM-DD format
|
116
|
+
# * Required
|
117
|
+
#
|
118
|
+
# - rollup (string)
|
119
|
+
# * Date interval to group by
|
120
|
+
# * Allowed values: day, week, month, year, all
|
121
|
+
# * Default: day
|
122
|
+
#
|
123
|
+
# - properties (string)
|
124
|
+
# * Comma separated list of properties to group by
|
125
|
+
# * Allowed values: org_id, org_name, org_industry, project_id, project_name, user_id,
|
126
|
+
# user_email, user_name, phone_id, phone_name, phone_type, direction, source, status,
|
127
|
+
# network_code, network_name, message_type, service_id, service_name, simulated, link
|
128
|
+
#
|
129
|
+
# - metrics (string)
|
130
|
+
# * Comma separated list of metrics to return (summed for each distinct value of the
|
131
|
+
# requested properties)
|
132
|
+
# * Allowed values: count, num_parts, duration, price
|
133
|
+
# * Required
|
134
|
+
#
|
135
|
+
# - currency (string)
|
136
|
+
# * Three-letter ISO 4217 currency code used when returning the 'price' field. If the
|
137
|
+
# original price was in a different currency, it will be converted to the requested
|
138
|
+
# currency using the approximate current exchange rate.
|
139
|
+
# * Default: USD
|
140
|
+
#
|
141
|
+
# - filters (Hash)
|
142
|
+
# * Key-value pairs of properties and corresponding values; the returned statistics
|
143
|
+
# will only include messages where the property matches the provided value. Only the
|
144
|
+
# following properties are supported for filters: `user_id`, `phone_id`, `direction`,
|
145
|
+
# `source`, `status`, `service_id`, `simulated`, `message_type`, `network_code`
|
146
|
+
#
|
147
|
+
# Returns:
|
148
|
+
# (associative array)
|
149
|
+
# - intervals (array)
|
150
|
+
# * List of objects representing each date interval containing at least one message
|
151
|
+
# matching the filters.
|
152
|
+
# Each object has the following properties:
|
153
|
+
#
|
154
|
+
# <table>
|
155
|
+
# <tr><td> start_time </td> <td> The UNIX timestamp of the start
|
156
|
+
# of the interval (int) </td></tr>
|
157
|
+
# <tr><td> end_time </td> <td> The UNIX timestamp of the end of
|
158
|
+
# the interval, exclusive (int) </td></tr>
|
159
|
+
# <tr><td> start_date </td> <td> The date of the start of the
|
160
|
+
# interval in YYYY-MM-DD format (string) </td></tr>
|
161
|
+
# <tr><td> end_date </td> <td> The date of the end of the
|
162
|
+
# interval in YYYY-MM-DD format, inclusive (string) </td></tr>
|
163
|
+
# <tr><td> groups </td> <td> Array of groups for each
|
164
|
+
# combination of requested property values matching the filters (array)
|
165
|
+
# <br /><br />
|
166
|
+
# Each object has the following properties:
|
167
|
+
# <table>
|
168
|
+
# <tr><td> properties </td> <td> An object of key/value
|
169
|
+
# pairs for each distinct value of the requested properties (object) </td></tr>
|
170
|
+
# <tr><td> metrics </td> <td> An object of key/value pairs
|
171
|
+
# for each requested metric (object) </td></tr>
|
172
|
+
# </table>
|
173
|
+
# </td></tr>
|
174
|
+
# </table>
|
175
|
+
#
|
176
|
+
def get_message_stats(options)
|
177
|
+
data = @api.do_request("GET", get_base_api_path() + "/message_stats", options)
|
178
|
+
return data
|
179
|
+
end
|
180
|
+
|
101
181
|
#
|
102
182
|
# Queries projects in this organization.
|
103
183
|
#
|
data/lib/telerivet/phone.rb
CHANGED
@@ -115,7 +115,8 @@ class Phone < Entity
|
|
115
115
|
#
|
116
116
|
# - source
|
117
117
|
# * Filter messages by source
|
118
|
-
# * Allowed values: phone, provider, web, api, service, webhook, scheduled
|
118
|
+
# * Allowed values: phone, provider, web, api, service, webhook, scheduled,
|
119
|
+
# integration
|
119
120
|
#
|
120
121
|
# - starred (bool)
|
121
122
|
# * Filter messages by starred/unstarred
|
@@ -123,7 +124,7 @@ class Phone < Entity
|
|
123
124
|
# - status
|
124
125
|
# * Filter messages by status
|
125
126
|
# * Allowed values: ignored, processing, received, sent, queued, failed,
|
126
|
-
# failed_queued, cancelled, delivered, not_delivered
|
127
|
+
# failed_queued, cancelled, delivered, not_delivered, read
|
127
128
|
#
|
128
129
|
# - time_created[min] (UNIX timestamp)
|
129
130
|
# * Filter messages created on or after a particular time
|
@@ -133,18 +134,26 @@ class Phone < Entity
|
|
133
134
|
#
|
134
135
|
# - external_id
|
135
136
|
# * Filter messages by ID from an external provider
|
137
|
+
# * Allowed modifiers: external_id[ne], external_id[exists]
|
136
138
|
#
|
137
139
|
# - contact_id
|
138
140
|
# * ID of the contact who sent/received the message
|
141
|
+
# * Allowed modifiers: contact_id[ne], contact_id[exists]
|
139
142
|
#
|
140
143
|
# - phone_id
|
141
144
|
# * ID of the phone (basic route) that sent/received the message
|
142
145
|
#
|
143
146
|
# - broadcast_id
|
144
147
|
# * ID of the broadcast containing the message
|
148
|
+
# * Allowed modifiers: broadcast_id[ne], broadcast_id[exists]
|
145
149
|
#
|
146
150
|
# - scheduled_id
|
147
151
|
# * ID of the scheduled message that created this message
|
152
|
+
# * Allowed modifiers: scheduled_id[ne], scheduled_id[exists]
|
153
|
+
#
|
154
|
+
# - group_id
|
155
|
+
# * Filter messages sent or received by contacts in a particular group. The group must
|
156
|
+
# be a normal group, not a dynamic group.
|
148
157
|
#
|
149
158
|
# - sort
|
150
159
|
# * Sort the results based on a field
|