twilio 3.71.3 → 3.72.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.
package/CHANGES.md CHANGED
@@ -1,6 +1,31 @@
1
1
  twilio-node changelog
2
2
  =====================
3
3
 
4
+ [2021-12-15] Version 3.72.0
5
+ ---------------------------
6
+ **Library - Feature**
7
+ - [PR #712](https://github.com/twilio/twilio-node/pull/712): run tests before deploying. Thanks to [@childish-sambino](https://github.com/childish-sambino)!
8
+
9
+ **Api**
10
+ - Add optional boolean send_as_mms parameter to the create action of Message resource **(breaking change)**
11
+ - Change team ownership for `call` delete
12
+
13
+ **Conversations**
14
+ - Change wording for `Service Webhook Configuration` resource fields
15
+
16
+ **Insights**
17
+ - Added new APIs for updating and getting voice insights flags by accountSid.
18
+
19
+ **Media**
20
+ - Add max_duration param to MediaProcessor
21
+
22
+ **Video**
23
+ - Add `EmptyRoomTimeout` and `UnusedRoomTimeout` properties to a room; add corresponding parameters to room creation
24
+
25
+ **Voice**
26
+ - Add endpoint to delete archived Calls
27
+
28
+
4
29
  [2021-12-01] Version 3.71.3
5
30
  ---------------------------
6
31
  **Conversations**
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![NPM](https://nodei.co/npm/twilio.png?downloads=true&stars=true)](https://nodei.co/npm/twilio/)
4
4
 
5
- [![Tests](https://github.com/twilio/twilio-node/actions/workflows/test.yml/badge.svg)](https://github.com/twilio/twilio-node/actions/workflows/test.yml)
5
+ [![Tests](https://github.com/twilio/twilio-node/actions/workflows/test-and-deploy.yml/badge.svg)](https://github.com/twilio/twilio-node/actions/workflows/test-and-deploy.yml)
6
6
  [![Learn with TwilioQuest](https://img.shields.io/static/v1?label=TwilioQuest&message=Learn%20to%20contribute%21&color=F22F46&labelColor=1f243c&style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAASFBMVEUAAAAZGRkcHBwjIyMoKCgAAABgYGBoaGiAgICMjIyzs7PJycnMzMzNzc3UoBfd3d3m5ubqrhfrMEDu7u739/f4vSb/3AD///9tbdyEAAAABXRSTlMAAAAAAMJrBrEAAAKoSURBVHgB7ZrRcuI6EESdyxXGYoNFvMD//+l2bSszRgyUYpFAsXOeiJGmj4NkuWx1Qeh+Ekl9DgEXOBwOx+Px5xyQhDykfgq4wG63MxxaR4ddIkg6Ul3g84vCIcjPBA5gmUMeXESrlukuoK33+33uID8TWeLAdOWsKpJYzwVMB7bOzYSGOciyUlXSn0/ABXTosJ1M1SbypZ4O4MbZuIDMU02PMbauhhHMHXbmebmALIiEbbbbbUrpF1gwE9kFfRNAJaP+FQEXCCTGyJ4ngDrjOFo3jEL5JdqjF/pueR4cCeCGgAtwmuRS6gDwaRiGvu+DMFwSBLTE3+jF8JyuV1okPZ+AC4hDFhCHyHQjdjPHUKFDlHSJkHQXMB3KpSwXNGJPcwwTdZiXlRN0gSp0zpWxNtM0beYE0nRH6QIbO7rawwXaBYz0j78gxjokDuv12gVeUuBD0MDi0OQCLvDaAho4juP1Q/jkAncXqIcCfd+7gAu4QLMACCLxpRsSuQh0igu0C9Svhi7weAGZg50L3IE3cai4IfkNZAC8dfdhsUD3CgKBVC9JE5ABAFzg4QL/taYPAAWrHdYcgfLaIgAXWJ7OV38n1LEF8tt2TH29E+QAoDoO5Ve/LtCQDmKM9kPbvCEBApK+IXzbcSJ0cIGF6e8gpcRhUDogWZ8JnaWjPXc/fNnBBUKRngiHgTUSivSzDRDgHZQOLvBQgf8rRt+VdBUUhwkU6VpJ+xcOwQUqZr+mR0kvBUgv6cB4+37hQAkXqE8PwGisGhJtN4xAHMzrsgvI7rccXqSvKh6jltGlrOHA3Xk1At3LC4QiPdX9/0ndHpGVvTjR4bZA1ypAKgVcwE5vx74ulwIugDt8e/X7JgfkucBMIAr26ndnB4UCLnDOqvteQsHlgX9N4A+c4cW3DXSPbwAAAABJRU5ErkJggg==)](https://twil.io/learn-open-source)
7
7
 
8
8
  **The default branch name for this repository has been changed to `main` as of 07/27/2020.**
@@ -11,6 +11,7 @@ import V1 = require('./insights/V1');
11
11
  import { CallListInstance } from './insights/v1/call';
12
12
  import { CallSummariesListInstance } from './insights/v1/callSummaries';
13
13
  import { RoomListInstance } from './insights/v1/room';
14
+ import { SettingListInstance } from './insights/v1/setting';
14
15
 
15
16
 
16
17
  declare class Insights extends Domain {
@@ -24,6 +25,7 @@ declare class Insights extends Domain {
24
25
  readonly callSummaries: CallSummariesListInstance;
25
26
  readonly calls: CallListInstance;
26
27
  readonly rooms: RoomListInstance;
28
+ readonly settings: SettingListInstance;
27
29
  readonly v1: V1;
28
30
  }
29
31
 
@@ -21,6 +21,7 @@ var V1 = require('./insights/V1'); /* jshint ignore:line */
21
21
  * @constructor Twilio.Insights
22
22
  *
23
23
  * @property {Twilio.Insights.V1} v1 - v1 version
24
+ * @property {Twilio.Insights.V1.SettingList} settings - settings resource
24
25
  * @property {Twilio.Insights.V1.CallList} calls - calls resource
25
26
  * @property {Twilio.Insights.V1.CallSummariesList} callSummaries -
26
27
  * callSummaries resource
@@ -47,6 +48,13 @@ Object.defineProperty(Insights.prototype,
47
48
  }
48
49
  });
49
50
 
51
+ Object.defineProperty(Insights.prototype,
52
+ 'settings', {
53
+ get: function() {
54
+ return this.v1.settings;
55
+ }
56
+ });
57
+
50
58
  Object.defineProperty(Insights.prototype,
51
59
  'calls', {
52
60
  get: function() {
@@ -8,6 +8,7 @@
8
8
  import Domain = require('../base/Domain');
9
9
  import Twilio = require('./Twilio');
10
10
  import V1 = require('./voice/V1');
11
+ import { ArchivedCallListInstance } from './voice/v1/archivedCall';
11
12
  import { ByocTrunkListInstance } from './voice/v1/byocTrunk';
12
13
  import { ConnectionPolicyListInstance } from './voice/v1/connectionPolicy';
13
14
  import { DialingPermissionsListInstance } from './voice/v1/dialingPermissions';
@@ -23,6 +24,7 @@ declare class Voice extends Domain {
23
24
  */
24
25
  constructor(twilio: Twilio);
25
26
 
27
+ readonly archivedCalls: ArchivedCallListInstance;
26
28
  readonly byocTrunks: ByocTrunkListInstance;
27
29
  readonly connectionPolicies: ConnectionPolicyListInstance;
28
30
  readonly dialingPermissions: DialingPermissionsListInstance;
package/lib/rest/Voice.js CHANGED
@@ -21,6 +21,8 @@ var V1 = require('./voice/V1'); /* jshint ignore:line */
21
21
  * @constructor Twilio.Voice
22
22
  *
23
23
  * @property {Twilio.Voice.V1} v1 - v1 version
24
+ * @property {Twilio.Voice.V1.ArchivedCallList} archivedCalls -
25
+ * archivedCalls resource
24
26
  * @property {Twilio.Voice.V1.ByocTrunkList} byocTrunks - byocTrunks resource
25
27
  * @property {Twilio.Voice.V1.ConnectionPolicyList} connectionPolicies -
26
28
  * connectionPolicies resource
@@ -51,6 +53,13 @@ Object.defineProperty(Voice.prototype,
51
53
  }
52
54
  });
53
55
 
56
+ Object.defineProperty(Voice.prototype,
57
+ 'archivedCalls', {
58
+ get: function() {
59
+ return this.v1.archivedCalls;
60
+ }
61
+ });
62
+
54
63
  Object.defineProperty(Voice.prototype,
55
64
  'byocTrunks', {
56
65
  get: function() {
@@ -180,6 +180,7 @@ interface MessageListInstance {
180
180
  * @property messagingServiceSid - The SID of the Messaging Service you want to associate with the message.
181
181
  * @property persistentAction - Rich actions for Channels Messages.
182
182
  * @property provideFeedback - Whether to confirm delivery of the message
183
+ * @property sendAsMms - If set to True, Twilio will deliver the message as a single MMS message, regardless of the presence of media
183
184
  * @property smartEncoded - Whether to detect Unicode characters that have a similar GSM-7 character and replace them
184
185
  * @property statusCallback - The URL we should call to send status information to your application
185
186
  * @property to - The destination phone number
@@ -198,6 +199,7 @@ interface MessageListInstanceCreateOptions {
198
199
  messagingServiceSid?: string;
199
200
  persistentAction?: string | string[];
200
201
  provideFeedback?: boolean;
202
+ sendAsMms?: boolean;
201
203
  smartEncoded?: boolean;
202
204
  statusCallback?: string;
203
205
  to: string;
@@ -83,6 +83,8 @@ MessageList = function MessageList(version, accountSid) {
83
83
  * Whether to detect Unicode characters that have a similar GSM-7 character and replace them
84
84
  * @param {string|list} [opts.persistentAction] -
85
85
  * Rich actions for Channels Messages.
86
+ * @param {boolean} [opts.sendAsMms] -
87
+ * If set to True, Twilio will deliver the message as a single MMS message, regardless of the presence of media
86
88
  * @param {string} [opts.from] - The phone number that initiated the message
87
89
  * @param {string} [opts.messagingServiceSid] -
88
90
  * The SID of the Messaging Service you want to associate with the message.
@@ -120,7 +122,8 @@ MessageList = function MessageList(version, accountSid) {
120
122
  'ContentRetention': _.get(opts, 'contentRetention'),
121
123
  'AddressRetention': _.get(opts, 'addressRetention'),
122
124
  'SmartEncoded': serialize.bool(_.get(opts, 'smartEncoded')),
123
- 'PersistentAction': serialize.map(_.get(opts, 'persistentAction'), function(e) { return e; })
125
+ 'PersistentAction': serialize.map(_.get(opts, 'persistentAction'), function(e) { return e; }),
126
+ 'SendAsMms': serialize.bool(_.get(opts, 'sendAsMms'))
124
127
  });
125
128
 
126
129
  var promise = this._version.create({uri: this._uri, method: 'POST', data: data});
@@ -23,7 +23,7 @@ declare function WebhookList(version: V1, chatServiceSid: string): WebhookListIn
23
23
  /**
24
24
  * Options to pass to update
25
25
  *
26
- * @property filters - The list of webhook event triggers that are enabled for this Service.
26
+ * @property filters - The list of events that your configured webhook targets will receive. Events not configured here will not fire.
27
27
  * @property method - The HTTP method to be used when sending a webhook request
28
28
  * @property postWebhookUrl - The absolute url the post-event webhook request should be sent to.
29
29
  * @property preWebhookUrl - The absolute url the pre-event webhook request should be sent to.
@@ -73,7 +73,7 @@ declare class WebhookContext {
73
73
  * Initialize the WebhookContext
74
74
  *
75
75
  * @param version - Version of the resource
76
- * @param chatServiceSid - The unique ID of the Conversation Service this conversation belongs to.
76
+ * @param chatServiceSid - The unique ID of the {@link https://www.twilio.com/docs/conversations/api/service-resource|Conversation Service} this conversation belongs to.
77
77
  */
78
78
  constructor(version: V1, chatServiceSid: string);
79
79
 
@@ -158,13 +158,14 @@ WebhookPage.prototype[util.inspect.custom] = function inspect(depth, options) {
158
158
  *
159
159
  * @property {string} accountSid -
160
160
  * The unique ID of the Account responsible for this service.
161
- * @property {string} chatServiceSid - The chat_service_sid
161
+ * @property {string} chatServiceSid -
162
+ * The unique ID of the {@link https://www.twilio.com/docs/conversations/api/service-resource|Conversation Service} this conversation belongs to.
162
163
  * @property {string} preWebhookUrl -
163
164
  * The absolute url the pre-event webhook request should be sent to.
164
165
  * @property {string} postWebhookUrl -
165
166
  * The absolute url the post-event webhook request should be sent to.
166
167
  * @property {string} filters -
167
- * The list of webhook event triggers that are enabled for this Service.
168
+ * The list of events that your configured webhook targets will receive. Events not configured here will not fire.
168
169
  * @property {webhook.method} method -
169
170
  * The HTTP method to be used when sending a webhook request
170
171
  * @property {string} url - An absolute URL for this webhook.
@@ -215,7 +216,7 @@ Object.defineProperty(WebhookInstance.prototype,
215
216
  * @param {string} [opts.postWebhookUrl] -
216
217
  * The absolute url the post-event webhook request should be sent to.
217
218
  * @param {string|list} [opts.filters] -
218
- * The list of webhook event triggers that are enabled for this Service.
219
+ * The list of events that your configured webhook targets will receive. Events not configured here will not fire.
219
220
  * @param {string} [opts.method] -
220
221
  * The HTTP method to be used when sending a webhook request
221
222
  * @param {function} [callback] - Callback to handle processed record
@@ -277,7 +278,7 @@ WebhookInstance.prototype[util.inspect.custom] = function inspect(depth,
277
278
  *
278
279
  * @param {V1} version - Version of the resource
279
280
  * @param {sid} chatServiceSid -
280
- * The unique ID of the Conversation Service this conversation belongs to.
281
+ * The unique ID of the {@link https://www.twilio.com/docs/conversations/api/service-resource|Conversation Service} this conversation belongs to.
281
282
  */
282
283
  /* jshint ignore:end */
283
284
  WebhookContext = function WebhookContext(version, chatServiceSid) {
@@ -301,7 +302,7 @@ WebhookContext = function WebhookContext(version, chatServiceSid) {
301
302
  * @param {string} [opts.postWebhookUrl] -
302
303
  * The absolute url the post-event webhook request should be sent to.
303
304
  * @param {string|list} [opts.filters] -
304
- * The list of webhook event triggers that are enabled for this Service.
305
+ * The list of events that your configured webhook targets will receive. Events not configured here will not fire.
305
306
  * @param {string} [opts.method] -
306
307
  * The HTTP method to be used when sending a webhook request
307
308
  * @param {function} [callback] - Callback to handle processed record
@@ -13,6 +13,8 @@ import { CallSummariesList } from './v1/callSummaries';
13
13
  import { CallSummariesListInstance } from './v1/callSummaries';
14
14
  import { RoomList } from './v1/room';
15
15
  import { RoomListInstance } from './v1/room';
16
+ import { SettingList } from './v1/setting';
17
+ import { SettingListInstance } from './v1/setting';
16
18
 
17
19
 
18
20
  declare class V1 extends Version {
@@ -26,6 +28,7 @@ declare class V1 extends Version {
26
28
  readonly callSummaries: CallSummariesListInstance;
27
29
  readonly calls: CallListInstance;
28
30
  readonly rooms: RoomListInstance;
31
+ readonly settings: SettingListInstance;
29
32
  }
30
33
 
31
34
  export = V1;
@@ -13,6 +13,7 @@ var _ = require('lodash'); /* jshint ignore:line */
13
13
  var CallList = require('./v1/call').CallList;
14
14
  var CallSummariesList = require('./v1/callSummaries').CallSummariesList;
15
15
  var RoomList = require('./v1/room').RoomList;
16
+ var SettingList = require('./v1/setting').SettingList;
16
17
  var Version = require('../../base/Version'); /* jshint ignore:line */
17
18
 
18
19
 
@@ -22,6 +23,7 @@ var Version = require('../../base/Version'); /* jshint ignore:line */
22
23
  *
23
24
  * @constructor Twilio.Insights.V1
24
25
  *
26
+ * @property {Twilio.Insights.V1.SettingList} settings - settings resource
25
27
  * @property {Twilio.Insights.V1.CallList} calls - calls resource
26
28
  * @property {Twilio.Insights.V1.CallSummariesList} callSummaries -
27
29
  * callSummaries resource
@@ -34,6 +36,7 @@ function V1(domain) {
34
36
  Version.prototype.constructor.call(this, domain, 'v1');
35
37
 
36
38
  // Resources
39
+ this._settings = undefined;
37
40
  this._calls = undefined;
38
41
  this._callSummaries = undefined;
39
42
  this._rooms = undefined;
@@ -42,6 +45,14 @@ function V1(domain) {
42
45
  _.extend(V1.prototype, Version.prototype);
43
46
  V1.prototype.constructor = V1;
44
47
 
48
+ Object.defineProperty(V1.prototype,
49
+ 'settings', {
50
+ get: function() {
51
+ this._settings = this._settings || new SettingList(this);
52
+ return this._settings;
53
+ }
54
+ });
55
+
45
56
  Object.defineProperty(V1.prototype,
46
57
  'calls', {
47
58
  get: function() {
@@ -0,0 +1,181 @@
1
+ /**
2
+ * This code was generated by
3
+ * \ / _ _ _| _ _
4
+ * | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ * / /
6
+ */
7
+
8
+ import Page = require('../../../base/Page');
9
+ import Response = require('../../../http/response');
10
+ import V1 = require('../V1');
11
+ import { SerializableClass } from '../../../interfaces';
12
+
13
+ /**
14
+ * Initialize the SettingList
15
+ *
16
+ * @param version - Version of the resource
17
+ */
18
+ declare function SettingList(version: V1): SettingListInstance;
19
+
20
+ /**
21
+ * Options to pass to fetch
22
+ *
23
+ * @property subaccountSid - The subaccount_sid
24
+ */
25
+ interface SettingInstanceFetchOptions {
26
+ subaccountSid?: string;
27
+ }
28
+
29
+ /**
30
+ * Options to pass to update
31
+ *
32
+ * @property advancedFeatures - The advanced_features
33
+ * @property subaccountSid - The subaccount_sid
34
+ * @property voiceTrace - The voice_trace
35
+ */
36
+ interface SettingInstanceUpdateOptions {
37
+ advancedFeatures?: boolean;
38
+ subaccountSid?: string;
39
+ voiceTrace?: boolean;
40
+ }
41
+
42
+ interface SettingListInstance {
43
+ /**
44
+ * @param sid - sid of instance
45
+ */
46
+ (sid: string): SettingContext;
47
+ /**
48
+ * Constructs a setting
49
+ */
50
+ get(): SettingContext;
51
+ /**
52
+ * Provide a user-friendly representation
53
+ */
54
+ toJSON(): any;
55
+ }
56
+
57
+ interface SettingPayload extends SettingResource, Page.TwilioResponsePayload {
58
+ }
59
+
60
+ interface SettingResource {
61
+ account_sid: string;
62
+ advanced_features: boolean;
63
+ url: string;
64
+ voice_trace: boolean;
65
+ }
66
+
67
+ interface SettingSolution {
68
+ }
69
+
70
+
71
+ declare class SettingContext {
72
+ /**
73
+ * Initialize the SettingContext
74
+ *
75
+ * @param version - Version of the resource
76
+ */
77
+ constructor(version: V1);
78
+
79
+ /**
80
+ * fetch a SettingInstance
81
+ *
82
+ * @param callback - Callback to handle processed record
83
+ */
84
+ fetch(callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
85
+ /**
86
+ * fetch a SettingInstance
87
+ *
88
+ * @param opts - Options for request
89
+ * @param callback - Callback to handle processed record
90
+ */
91
+ fetch(opts?: SettingInstanceFetchOptions, callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
92
+ /**
93
+ * Provide a user-friendly representation
94
+ */
95
+ toJSON(): any;
96
+ /**
97
+ * update a SettingInstance
98
+ *
99
+ * @param callback - Callback to handle processed record
100
+ */
101
+ update(callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
102
+ /**
103
+ * update a SettingInstance
104
+ *
105
+ * @param opts - Options for request
106
+ * @param callback - Callback to handle processed record
107
+ */
108
+ update(opts?: SettingInstanceUpdateOptions, callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
109
+ }
110
+
111
+
112
+ declare class SettingInstance extends SerializableClass {
113
+ /**
114
+ * Initialize the SettingContext
115
+ *
116
+ * @param version - Version of the resource
117
+ * @param payload - The instance payload
118
+ */
119
+ constructor(version: V1, payload: SettingPayload);
120
+
121
+ private _proxy: SettingContext;
122
+ accountSid: string;
123
+ advancedFeatures: boolean;
124
+ /**
125
+ * fetch a SettingInstance
126
+ *
127
+ * @param callback - Callback to handle processed record
128
+ */
129
+ fetch(callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
130
+ /**
131
+ * fetch a SettingInstance
132
+ *
133
+ * @param opts - Options for request
134
+ * @param callback - Callback to handle processed record
135
+ */
136
+ fetch(opts?: SettingInstanceFetchOptions, callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
137
+ /**
138
+ * Provide a user-friendly representation
139
+ */
140
+ toJSON(): any;
141
+ /**
142
+ * update a SettingInstance
143
+ *
144
+ * @param callback - Callback to handle processed record
145
+ */
146
+ update(callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
147
+ /**
148
+ * update a SettingInstance
149
+ *
150
+ * @param opts - Options for request
151
+ * @param callback - Callback to handle processed record
152
+ */
153
+ update(opts?: SettingInstanceUpdateOptions, callback?: (error: Error | null, items: SettingInstance) => any): Promise<SettingInstance>;
154
+ url: string;
155
+ voiceTrace: boolean;
156
+ }
157
+
158
+
159
+ declare class SettingPage extends Page<V1, SettingPayload, SettingResource, SettingInstance> {
160
+ /**
161
+ * Initialize the SettingPage
162
+ *
163
+ * @param version - Version of the resource
164
+ * @param response - Response from the API
165
+ * @param solution - Path solution
166
+ */
167
+ constructor(version: V1, response: Response<string>, solution: SettingSolution);
168
+
169
+ /**
170
+ * Build an instance of SettingInstance
171
+ *
172
+ * @param payload - Payload response from the API
173
+ */
174
+ getInstance(payload: SettingPayload): SettingInstance;
175
+ /**
176
+ * Provide a user-friendly representation
177
+ */
178
+ toJSON(): any;
179
+ }
180
+
181
+ export { SettingContext, SettingInstance, SettingInstanceFetchOptions, SettingInstanceUpdateOptions, SettingList, SettingListInstance, SettingPage, SettingPayload, SettingResource, SettingSolution }