twilio-ruby 5.61.2 → 5.62.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/.github/workflows/{deploy.yml → test-and-deploy.yml} +40 -10
- data/CHANGES.md +25 -0
- data/README.md +4 -4
- data/lib/twilio-ruby/rest/api/v2010/account/message.rb +5 -1
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +20 -20
- data/lib/twilio-ruby/rest/insights/v1/setting.rb +215 -0
- data/lib/twilio-ruby/rest/insights/v1.rb +7 -0
- data/lib/twilio-ruby/rest/insights.rb +6 -0
- data/lib/twilio-ruby/rest/media/v1/media_processor.rb +14 -1
- data/lib/twilio-ruby/rest/video/v1/room.rb +23 -1
- data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +184 -0
- data/lib/twilio-ruby/rest/voice/v1.rb +21 -0
- data/lib/twilio-ruby/rest/voice.rb +8 -0
- data/lib/twilio-ruby/rest/wireless/v1/sim.rb +4 -4
- data/lib/twilio-ruby/version.rb +1 -1
- metadata +5 -4
- data/.github/workflows/test.yml +0 -52
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4de9f3e13c7d62d46dd01dc76c29a0053d5aebc2
|
4
|
+
data.tar.gz: 840453ea3047e82252cff8e7a2938ff6a1ee3de7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4e130c8595f487439b3a2791ba660dbe198661cada16c0c5bb088b12b8b6ba714fb3245841ce55a1c1c0837ec2830a6988ec4d3fea11cf3d945e655f935658a6
|
7
|
+
data.tar.gz: 0e49320acd4390848bc5946626f8e999f9fdc2bfaef36efb6f027292cf3895ae295c473b4376ee4b44fc0a71a556fb47343adfba3370e17b36f078a308240be5
|
@@ -1,13 +1,43 @@
|
|
1
|
-
name: Deploy
|
1
|
+
name: Test and Deploy
|
2
2
|
on:
|
3
3
|
push:
|
4
|
-
|
5
|
-
|
4
|
+
branches: [ '*' ]
|
5
|
+
tags: [ '*' ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ main ]
|
8
|
+
schedule:
|
9
|
+
# Run automatically at 8AM PST Monday-Friday
|
10
|
+
- cron: '0 15 * * 1-5'
|
6
11
|
workflow_dispatch:
|
7
12
|
|
8
13
|
jobs:
|
14
|
+
test:
|
15
|
+
name: Test
|
16
|
+
runs-on: ubuntu-latest
|
17
|
+
timeout-minutes: 20
|
18
|
+
strategy:
|
19
|
+
matrix:
|
20
|
+
ruby: [ 2.4, 2.5, 2.6, 2.7, '3.0', ruby-head, jruby-9.2 ]
|
21
|
+
continue-on-error: ${{ matrix.ruby == 'ruby-head' }}
|
22
|
+
steps:
|
23
|
+
- name: Checkout twilio-ruby
|
24
|
+
uses: actions/checkout@v2
|
25
|
+
|
26
|
+
- name: Set up Ruby
|
27
|
+
uses: ruby/setup-ruby@v1
|
28
|
+
with:
|
29
|
+
ruby-version: ${{ matrix.ruby }}
|
30
|
+
bundler-cache: true
|
31
|
+
|
32
|
+
- run: bundle install --with development
|
33
|
+
- run: bundle exec rake install
|
34
|
+
- name: Run Unit Tests
|
35
|
+
run: make test
|
36
|
+
|
9
37
|
deploy:
|
10
|
-
name: Deploy
|
38
|
+
name: Deploy
|
39
|
+
if: success() && github.ref_type == 'tag'
|
40
|
+
needs: [ test ]
|
11
41
|
runs-on: ubuntu-latest
|
12
42
|
steps:
|
13
43
|
- name: Checkout twilio-ruby
|
@@ -38,7 +68,7 @@ jobs:
|
|
38
68
|
- name: Publish to Rubygems
|
39
69
|
env:
|
40
70
|
GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_AUTH_TOKEN }}
|
41
|
-
run:
|
71
|
+
run: |
|
42
72
|
mkdir -p $HOME/.gem
|
43
73
|
touch $HOME/.gem/credentials
|
44
74
|
chmod 0600 $HOME/.gem/credentials
|
@@ -48,16 +78,16 @@ jobs:
|
|
48
78
|
|
49
79
|
notify-on-failure:
|
50
80
|
name: Slack notify on failure
|
51
|
-
if:
|
52
|
-
needs: [deploy]
|
81
|
+
if: failure() && github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref_type == 'tag')
|
82
|
+
needs: [ test, deploy ]
|
53
83
|
runs-on: ubuntu-latest
|
54
84
|
steps:
|
55
85
|
- uses: rtCamp/action-slack-notify@v2
|
56
86
|
env:
|
57
|
-
SLACK_COLOR:
|
87
|
+
SLACK_COLOR: failure
|
58
88
|
SLACK_ICON_EMOJI: ':github:'
|
59
|
-
SLACK_MESSAGE: ${{ format('
|
60
|
-
SLACK_TITLE:
|
89
|
+
SLACK_MESSAGE: ${{ format('Tests *{0}*, Deploy *{1}*, {2}/{3}/actions/runs/{4}', needs.test.result, needs.deploy.result, github.server_url, github.repository, github.run_id) }}
|
90
|
+
SLACK_TITLE: Action Failure - ${{ github.repository }}
|
61
91
|
SLACK_USERNAME: GitHub Actions
|
62
92
|
SLACK_MSG_AUTHOR: twilio-dx
|
63
93
|
SLACK_FOOTER: Posted automatically using GitHub Actions
|
data/CHANGES.md
CHANGED
@@ -1,6 +1,31 @@
|
|
1
1
|
twilio-ruby changelog
|
2
2
|
=====================
|
3
3
|
|
4
|
+
[2021-12-15] Version 5.62.0
|
5
|
+
---------------------------
|
6
|
+
**Library - Feature**
|
7
|
+
- [PR #581](https://github.com/twilio/twilio-ruby/pull/581): 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 5.61.2
|
5
30
|
---------------------------
|
6
31
|
**Library - Chore**
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# twilio-ruby
|
2
2
|
|
3
|
-
[][github-actions]
|
3
|
+
[][github-actions]
|
4
4
|
[](https://rubygems.org/gems/twilio-ruby)
|
5
5
|
[](https://twil.io/learn-open-source)
|
6
6
|
|
@@ -35,13 +35,13 @@ This library supports the following Ruby implementations:
|
|
35
35
|
To install using [Bundler][bundler] grab the latest stable version:
|
36
36
|
|
37
37
|
```ruby
|
38
|
-
gem 'twilio-ruby', '~> 5.
|
38
|
+
gem 'twilio-ruby', '~> 5.62.0'
|
39
39
|
```
|
40
40
|
|
41
41
|
To manually install `twilio-ruby` via [Rubygems][rubygems] simply gem install:
|
42
42
|
|
43
43
|
```bash
|
44
|
-
gem install twilio-ruby -v 5.
|
44
|
+
gem install twilio-ruby -v 5.62.0
|
45
45
|
```
|
46
46
|
|
47
47
|
To build and install the development branch yourself from the latest source:
|
@@ -257,7 +257,7 @@ If you've instead found a bug in the library or would like new features added, g
|
|
257
257
|
[bundler]: https://bundler.io
|
258
258
|
[rubygems]: https://rubygems.org
|
259
259
|
[gem]: https://rubygems.org/gems/twilio
|
260
|
-
[github-actions]: https://github.com/twilio/twilio-ruby/actions/workflows/test.yml
|
260
|
+
[github-actions]: https://github.com/twilio/twilio-ruby/actions/workflows/test-and-deploy.yml
|
261
261
|
[upgrade]: https://github.com/twilio/twilio-ruby/wiki/Ruby-Version-5.x-Upgrade-Guide
|
262
262
|
[issues]: https://github.com/twilio/twilio-ruby/issues
|
263
263
|
[faraday]: https://github.com/lostisland/faraday
|
@@ -78,6 +78,9 @@ module Twilio
|
|
78
78
|
# @param [Boolean] smart_encoded Whether to detect Unicode characters that have a
|
79
79
|
# similar GSM-7 character and replace them. Can be: `true` or `false`.
|
80
80
|
# @param [Array[String]] persistent_action Rich actions for Channels Messages.
|
81
|
+
# @param [Boolean] send_as_mms If set to True, Twilio will deliver the message as
|
82
|
+
# a single MMS message, regardless of the presence of media. This is a Beta
|
83
|
+
# Feature.
|
81
84
|
# @param [String] from A Twilio phone number in
|
82
85
|
# {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, an {alphanumeric
|
83
86
|
# sender
|
@@ -108,7 +111,7 @@ module Twilio
|
|
108
111
|
# parameters in the POST request. You can include up to 10 `media_url` parameters
|
109
112
|
# per message. You can send images in an SMS message in only the US and Canada.
|
110
113
|
# @return [MessageInstance] Created MessageInstance
|
111
|
-
def create(to: nil, status_callback: :unset, application_sid: :unset, max_price: :unset, provide_feedback: :unset, attempt: :unset, validity_period: :unset, force_delivery: :unset, content_retention: :unset, address_retention: :unset, smart_encoded: :unset, persistent_action: :unset, from: :unset, messaging_service_sid: :unset, body: :unset, media_url: :unset)
|
114
|
+
def create(to: nil, status_callback: :unset, application_sid: :unset, max_price: :unset, provide_feedback: :unset, attempt: :unset, validity_period: :unset, force_delivery: :unset, content_retention: :unset, address_retention: :unset, smart_encoded: :unset, persistent_action: :unset, send_as_mms: :unset, from: :unset, messaging_service_sid: :unset, body: :unset, media_url: :unset)
|
112
115
|
data = Twilio::Values.of({
|
113
116
|
'To' => to,
|
114
117
|
'From' => from,
|
@@ -126,6 +129,7 @@ module Twilio
|
|
126
129
|
'AddressRetention' => address_retention,
|
127
130
|
'SmartEncoded' => smart_encoded,
|
128
131
|
'PersistentAction' => Twilio.serialize_list(persistent_action) { |e| e },
|
132
|
+
'SendAsMms' => send_as_mms,
|
129
133
|
})
|
130
134
|
|
131
135
|
payload = @version.create('POST', @uri, data: data)
|
@@ -84,15 +84,15 @@ module Twilio
|
|
84
84
|
# should be sent to.
|
85
85
|
# @param [String] post_webhook_url The absolute url the post-event webhook request
|
86
86
|
# should be sent to.
|
87
|
-
# @param [Array[String]] filters The list of
|
88
|
-
#
|
89
|
-
# `
|
90
|
-
# `
|
91
|
-
# `
|
92
|
-
# `
|
93
|
-
# `
|
94
|
-
# `onMessageUpdated`, `onParticipantRemoved`, `onMessageUpdate`
|
95
|
-
# `onConversationStateUpdated`.
|
87
|
+
# @param [Array[String]] filters The list of events that your configured webhook
|
88
|
+
# targets will receive. Events not configured here will not fire. Possible values
|
89
|
+
# are `onParticipantAdd`, `onParticipantAdded`, `onDeliveryUpdated`,
|
90
|
+
# `onConversationUpdated`, `onConversationRemove`, `onParticipantRemove`,
|
91
|
+
# `onConversationUpdate`, `onMessageAdd`, `onMessageRemoved`,
|
92
|
+
# `onParticipantUpdated`, `onConversationAdded`, `onMessageAdded`,
|
93
|
+
# `onConversationAdd`, `onConversationRemoved`, `onParticipantUpdate`,
|
94
|
+
# `onMessageRemove`, `onMessageUpdated`, `onParticipantRemoved`, `onMessageUpdate`
|
95
|
+
# or `onConversationStateUpdated`.
|
96
96
|
# @param [String] method The HTTP method to be used when sending a webhook
|
97
97
|
# request. One of `GET` or `POST`.
|
98
98
|
# @return [WebhookInstance] Updated WebhookInstance
|
@@ -178,7 +178,7 @@ module Twilio
|
|
178
178
|
end
|
179
179
|
|
180
180
|
##
|
181
|
-
# @return [String] The
|
181
|
+
# @return [String] The unique ID of the {Conversation Service}[https://www.twilio.com/docs/conversations/api/service-resource] this conversation belongs to.
|
182
182
|
def chat_service_sid
|
183
183
|
@properties['chat_service_sid']
|
184
184
|
end
|
@@ -196,7 +196,7 @@ module Twilio
|
|
196
196
|
end
|
197
197
|
|
198
198
|
##
|
199
|
-
# @return [Array[String]] The list of webhook
|
199
|
+
# @return [Array[String]] The list of events that your configured webhook targets will receive. Events not configured here will not fire.
|
200
200
|
def filters
|
201
201
|
@properties['filters']
|
202
202
|
end
|
@@ -219,15 +219,15 @@ module Twilio
|
|
219
219
|
# should be sent to.
|
220
220
|
# @param [String] post_webhook_url The absolute url the post-event webhook request
|
221
221
|
# should be sent to.
|
222
|
-
# @param [Array[String]] filters The list of
|
223
|
-
#
|
224
|
-
# `
|
225
|
-
# `
|
226
|
-
# `
|
227
|
-
# `
|
228
|
-
# `
|
229
|
-
# `onMessageUpdated`, `onParticipantRemoved`, `onMessageUpdate`
|
230
|
-
# `onConversationStateUpdated`.
|
222
|
+
# @param [Array[String]] filters The list of events that your configured webhook
|
223
|
+
# targets will receive. Events not configured here will not fire. Possible values
|
224
|
+
# are `onParticipantAdd`, `onParticipantAdded`, `onDeliveryUpdated`,
|
225
|
+
# `onConversationUpdated`, `onConversationRemove`, `onParticipantRemove`,
|
226
|
+
# `onConversationUpdate`, `onMessageAdd`, `onMessageRemoved`,
|
227
|
+
# `onParticipantUpdated`, `onConversationAdded`, `onMessageAdded`,
|
228
|
+
# `onConversationAdd`, `onConversationRemoved`, `onParticipantUpdate`,
|
229
|
+
# `onMessageRemove`, `onMessageUpdated`, `onParticipantRemoved`, `onMessageUpdate`
|
230
|
+
# or `onConversationStateUpdated`.
|
231
231
|
# @param [String] method The HTTP method to be used when sending a webhook
|
232
232
|
# request. One of `GET` or `POST`.
|
233
233
|
# @return [WebhookInstance] Updated WebhookInstance
|
@@ -0,0 +1,215 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# \ / _ _ _| _ _
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
5
|
+
# / /
|
6
|
+
#
|
7
|
+
# frozen_string_literal: true
|
8
|
+
|
9
|
+
module Twilio
|
10
|
+
module REST
|
11
|
+
class Insights < Domain
|
12
|
+
class V1 < Version
|
13
|
+
class SettingList < ListResource
|
14
|
+
##
|
15
|
+
# Initialize the SettingList
|
16
|
+
# @param [Version] version Version that contains the resource
|
17
|
+
# @return [SettingList] SettingList
|
18
|
+
def initialize(version)
|
19
|
+
super(version)
|
20
|
+
|
21
|
+
# Path Solution
|
22
|
+
@solution = {}
|
23
|
+
end
|
24
|
+
|
25
|
+
##
|
26
|
+
# Provide a user friendly representation
|
27
|
+
def to_s
|
28
|
+
'#<Twilio.Insights.V1.SettingList>'
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
class SettingPage < Page
|
33
|
+
##
|
34
|
+
# Initialize the SettingPage
|
35
|
+
# @param [Version] version Version that contains the resource
|
36
|
+
# @param [Response] response Response from the API
|
37
|
+
# @param [Hash] solution Path solution for the resource
|
38
|
+
# @return [SettingPage] SettingPage
|
39
|
+
def initialize(version, response, solution)
|
40
|
+
super(version, response)
|
41
|
+
|
42
|
+
# Path Solution
|
43
|
+
@solution = solution
|
44
|
+
end
|
45
|
+
|
46
|
+
##
|
47
|
+
# Build an instance of SettingInstance
|
48
|
+
# @param [Hash] payload Payload response from the API
|
49
|
+
# @return [SettingInstance] SettingInstance
|
50
|
+
def get_instance(payload)
|
51
|
+
SettingInstance.new(@version, payload, )
|
52
|
+
end
|
53
|
+
|
54
|
+
##
|
55
|
+
# Provide a user friendly representation
|
56
|
+
def to_s
|
57
|
+
'<Twilio.Insights.V1.SettingPage>'
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
class SettingContext < InstanceContext
|
62
|
+
##
|
63
|
+
# Initialize the SettingContext
|
64
|
+
# @param [Version] version Version that contains the resource
|
65
|
+
# @return [SettingContext] SettingContext
|
66
|
+
def initialize(version)
|
67
|
+
super(version)
|
68
|
+
|
69
|
+
# Path Solution
|
70
|
+
@solution = {}
|
71
|
+
@uri = "/Voice/Settings"
|
72
|
+
end
|
73
|
+
|
74
|
+
##
|
75
|
+
# Fetch the SettingInstance
|
76
|
+
# @param [String] subaccount_sid The subaccount_sid
|
77
|
+
# @return [SettingInstance] Fetched SettingInstance
|
78
|
+
def fetch(subaccount_sid: :unset)
|
79
|
+
params = Twilio::Values.of({'SubaccountSid' => subaccount_sid, })
|
80
|
+
|
81
|
+
payload = @version.fetch('GET', @uri, params: params)
|
82
|
+
|
83
|
+
SettingInstance.new(@version, payload, )
|
84
|
+
end
|
85
|
+
|
86
|
+
##
|
87
|
+
# Update the SettingInstance
|
88
|
+
# @param [Boolean] advanced_features The advanced_features
|
89
|
+
# @param [Boolean] voice_trace The voice_trace
|
90
|
+
# @param [String] subaccount_sid The subaccount_sid
|
91
|
+
# @return [SettingInstance] Updated SettingInstance
|
92
|
+
def update(advanced_features: :unset, voice_trace: :unset, subaccount_sid: :unset)
|
93
|
+
data = Twilio::Values.of({
|
94
|
+
'AdvancedFeatures' => advanced_features,
|
95
|
+
'VoiceTrace' => voice_trace,
|
96
|
+
'SubaccountSid' => subaccount_sid,
|
97
|
+
})
|
98
|
+
|
99
|
+
payload = @version.update('POST', @uri, data: data)
|
100
|
+
|
101
|
+
SettingInstance.new(@version, payload, )
|
102
|
+
end
|
103
|
+
|
104
|
+
##
|
105
|
+
# Provide a user friendly representation
|
106
|
+
def to_s
|
107
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
108
|
+
"#<Twilio.Insights.V1.SettingContext #{context}>"
|
109
|
+
end
|
110
|
+
|
111
|
+
##
|
112
|
+
# Provide a detailed, user friendly representation
|
113
|
+
def inspect
|
114
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
115
|
+
"#<Twilio.Insights.V1.SettingContext #{context}>"
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
class SettingInstance < InstanceResource
|
120
|
+
##
|
121
|
+
# Initialize the SettingInstance
|
122
|
+
# @param [Version] version Version that contains the resource
|
123
|
+
# @param [Hash] payload payload that contains response from Twilio
|
124
|
+
# @return [SettingInstance] SettingInstance
|
125
|
+
def initialize(version, payload)
|
126
|
+
super(version)
|
127
|
+
|
128
|
+
# Marshaled Properties
|
129
|
+
@properties = {
|
130
|
+
'account_sid' => payload['account_sid'],
|
131
|
+
'advanced_features' => payload['advanced_features'],
|
132
|
+
'voice_trace' => payload['voice_trace'],
|
133
|
+
'url' => payload['url'],
|
134
|
+
}
|
135
|
+
|
136
|
+
# Context
|
137
|
+
@instance_context = nil
|
138
|
+
@params = {}
|
139
|
+
end
|
140
|
+
|
141
|
+
##
|
142
|
+
# Generate an instance context for the instance, the context is capable of
|
143
|
+
# performing various actions. All instance actions are proxied to the context
|
144
|
+
# @return [SettingContext] SettingContext for this SettingInstance
|
145
|
+
def context
|
146
|
+
unless @instance_context
|
147
|
+
@instance_context = SettingContext.new(@version, )
|
148
|
+
end
|
149
|
+
@instance_context
|
150
|
+
end
|
151
|
+
|
152
|
+
##
|
153
|
+
# @return [String] The account_sid
|
154
|
+
def account_sid
|
155
|
+
@properties['account_sid']
|
156
|
+
end
|
157
|
+
|
158
|
+
##
|
159
|
+
# @return [Boolean] The advanced_features
|
160
|
+
def advanced_features
|
161
|
+
@properties['advanced_features']
|
162
|
+
end
|
163
|
+
|
164
|
+
##
|
165
|
+
# @return [Boolean] The voice_trace
|
166
|
+
def voice_trace
|
167
|
+
@properties['voice_trace']
|
168
|
+
end
|
169
|
+
|
170
|
+
##
|
171
|
+
# @return [String] The url
|
172
|
+
def url
|
173
|
+
@properties['url']
|
174
|
+
end
|
175
|
+
|
176
|
+
##
|
177
|
+
# Fetch the SettingInstance
|
178
|
+
# @param [String] subaccount_sid The subaccount_sid
|
179
|
+
# @return [SettingInstance] Fetched SettingInstance
|
180
|
+
def fetch(subaccount_sid: :unset)
|
181
|
+
context.fetch(subaccount_sid: subaccount_sid, )
|
182
|
+
end
|
183
|
+
|
184
|
+
##
|
185
|
+
# Update the SettingInstance
|
186
|
+
# @param [Boolean] advanced_features The advanced_features
|
187
|
+
# @param [Boolean] voice_trace The voice_trace
|
188
|
+
# @param [String] subaccount_sid The subaccount_sid
|
189
|
+
# @return [SettingInstance] Updated SettingInstance
|
190
|
+
def update(advanced_features: :unset, voice_trace: :unset, subaccount_sid: :unset)
|
191
|
+
context.update(
|
192
|
+
advanced_features: advanced_features,
|
193
|
+
voice_trace: voice_trace,
|
194
|
+
subaccount_sid: subaccount_sid,
|
195
|
+
)
|
196
|
+
end
|
197
|
+
|
198
|
+
##
|
199
|
+
# Provide a user friendly representation
|
200
|
+
def to_s
|
201
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
202
|
+
"<Twilio.Insights.V1.SettingInstance #{values}>"
|
203
|
+
end
|
204
|
+
|
205
|
+
##
|
206
|
+
# Provide a detailed, user friendly representation
|
207
|
+
def inspect
|
208
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
209
|
+
"<Twilio.Insights.V1.SettingInstance #{values}>"
|
210
|
+
end
|
211
|
+
end
|
212
|
+
end
|
213
|
+
end
|
214
|
+
end
|
215
|
+
end
|
@@ -15,11 +15,18 @@ module Twilio
|
|
15
15
|
def initialize(domain)
|
16
16
|
super
|
17
17
|
@version = 'v1'
|
18
|
+
@settings = nil
|
18
19
|
@calls = nil
|
19
20
|
@call_summaries = nil
|
20
21
|
@rooms = nil
|
21
22
|
end
|
22
23
|
|
24
|
+
##
|
25
|
+
# @return [Twilio::REST::Insights::V1::SettingContext]
|
26
|
+
def settings
|
27
|
+
@settings ||= SettingContext.new self
|
28
|
+
end
|
29
|
+
|
23
30
|
##
|
24
31
|
# @param [String] sid The sid
|
25
32
|
# @return [Twilio::REST::Insights::V1::CallContext] if sid was passed.
|
@@ -28,6 +28,12 @@ module Twilio
|
|
28
28
|
@v1 ||= V1.new self
|
29
29
|
end
|
30
30
|
|
31
|
+
##
|
32
|
+
# @return [Twilio::REST::Insights::V1::SettingInstance]
|
33
|
+
def settings
|
34
|
+
self.v1.settings()
|
35
|
+
end
|
36
|
+
|
31
37
|
##
|
32
38
|
# @param [String] sid The sid
|
33
39
|
# @return [Twilio::REST::Insights::V1::CallInstance] if sid was passed.
|
@@ -42,14 +42,20 @@ module Twilio
|
|
42
42
|
# Callbacks}[/docs/live/status-callbacks] for details.
|
43
43
|
# @param [String] status_callback_method The HTTP method Twilio should use to call
|
44
44
|
# the `status_callback` URL. Can be `POST` or `GET` and the default is `POST`.
|
45
|
+
# @param [String] max_duration The maximum time, in seconds, that the
|
46
|
+
# MediaProcessor can run before automatically ends. The default value is 300
|
47
|
+
# seconds, and the maximum value is 90000 seconds. Once this maximum duration is
|
48
|
+
# reached, Twilio will end the MediaProcessor, regardless of whether media is
|
49
|
+
# still streaming.
|
45
50
|
# @return [MediaProcessorInstance] Created MediaProcessorInstance
|
46
|
-
def create(extension: nil, extension_context: nil, extension_environment: :unset, status_callback: :unset, status_callback_method: :unset)
|
51
|
+
def create(extension: nil, extension_context: nil, extension_environment: :unset, status_callback: :unset, status_callback_method: :unset, max_duration: :unset)
|
47
52
|
data = Twilio::Values.of({
|
48
53
|
'Extension' => extension,
|
49
54
|
'ExtensionContext' => extension_context,
|
50
55
|
'ExtensionEnvironment' => Twilio.serialize_object(extension_environment),
|
51
56
|
'StatusCallback' => status_callback,
|
52
57
|
'StatusCallbackMethod' => status_callback_method,
|
58
|
+
'MaxDuration' => max_duration,
|
53
59
|
})
|
54
60
|
|
55
61
|
payload = @version.create('POST', @uri, data: data)
|
@@ -264,6 +270,7 @@ module Twilio
|
|
264
270
|
'ended_reason' => payload['ended_reason'],
|
265
271
|
'status_callback' => payload['status_callback'],
|
266
272
|
'status_callback_method' => payload['status_callback_method'],
|
273
|
+
'max_duration' => payload['max_duration'].to_i,
|
267
274
|
}
|
268
275
|
|
269
276
|
# Context
|
@@ -348,6 +355,12 @@ module Twilio
|
|
348
355
|
@properties['status_callback_method']
|
349
356
|
end
|
350
357
|
|
358
|
+
##
|
359
|
+
# @return [String] Maximum MediaProcessor duration in minutes
|
360
|
+
def max_duration
|
361
|
+
@properties['max_duration']
|
362
|
+
end
|
363
|
+
|
351
364
|
##
|
352
365
|
# Fetch the MediaProcessorInstance
|
353
366
|
# @return [MediaProcessorInstance] Fetched MediaProcessorInstance
|
@@ -63,8 +63,14 @@ module Twilio
|
|
63
63
|
# @param [String] max_participant_duration The maximum number of seconds a
|
64
64
|
# Participant can be connected to the room. The maximum possible value is 86400
|
65
65
|
# seconds (24 hours). The default is 14400 seconds (4 hours).
|
66
|
+
# @param [String] empty_room_timeout Configures how long (in minutes) a room will
|
67
|
+
# remain active after last participant leaves. Valid values range from 1 to 60
|
68
|
+
# minutes (no fractions).
|
69
|
+
# @param [String] unused_room_timeout Configures how long (in minutes) a room will
|
70
|
+
# remain active if no one joins. Valid values range from 1 to 60 minutes (no
|
71
|
+
# fractions).
|
66
72
|
# @return [RoomInstance] Created RoomInstance
|
67
|
-
def create(enable_turn: :unset, type: :unset, unique_name: :unset, status_callback: :unset, status_callback_method: :unset, max_participants: :unset, record_participants_on_connect: :unset, video_codecs: :unset, media_region: :unset, recording_rules: :unset, audio_only: :unset, max_participant_duration: :unset)
|
73
|
+
def create(enable_turn: :unset, type: :unset, unique_name: :unset, status_callback: :unset, status_callback_method: :unset, max_participants: :unset, record_participants_on_connect: :unset, video_codecs: :unset, media_region: :unset, recording_rules: :unset, audio_only: :unset, max_participant_duration: :unset, empty_room_timeout: :unset, unused_room_timeout: :unset)
|
68
74
|
data = Twilio::Values.of({
|
69
75
|
'EnableTurn' => enable_turn,
|
70
76
|
'Type' => type,
|
@@ -78,6 +84,8 @@ module Twilio
|
|
78
84
|
'RecordingRules' => Twilio.serialize_object(recording_rules),
|
79
85
|
'AudioOnly' => audio_only,
|
80
86
|
'MaxParticipantDuration' => max_participant_duration,
|
87
|
+
'EmptyRoomTimeout' => empty_room_timeout,
|
88
|
+
'UnusedRoomTimeout' => unused_room_timeout,
|
81
89
|
})
|
82
90
|
|
83
91
|
payload = @version.create('POST', @uri, data: data)
|
@@ -374,6 +382,8 @@ module Twilio
|
|
374
382
|
'video_codecs' => payload['video_codecs'],
|
375
383
|
'media_region' => payload['media_region'],
|
376
384
|
'audio_only' => payload['audio_only'],
|
385
|
+
'empty_room_timeout' => payload['empty_room_timeout'].to_i,
|
386
|
+
'unused_room_timeout' => payload['unused_room_timeout'].to_i,
|
377
387
|
'url' => payload['url'],
|
378
388
|
'links' => payload['links'],
|
379
389
|
}
|
@@ -508,6 +518,18 @@ module Twilio
|
|
508
518
|
@properties['audio_only']
|
509
519
|
end
|
510
520
|
|
521
|
+
##
|
522
|
+
# @return [String] The time a room will remain active after last participant leaves.
|
523
|
+
def empty_room_timeout
|
524
|
+
@properties['empty_room_timeout']
|
525
|
+
end
|
526
|
+
|
527
|
+
##
|
528
|
+
# @return [String] The time a room will remain active when no one joins.
|
529
|
+
def unused_room_timeout
|
530
|
+
@properties['unused_room_timeout']
|
531
|
+
end
|
532
|
+
|
511
533
|
##
|
512
534
|
# @return [String] The absolute URL of the resource
|
513
535
|
def url
|
@@ -0,0 +1,184 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# \ / _ _ _| _ _
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
5
|
+
# / /
|
6
|
+
#
|
7
|
+
# frozen_string_literal: true
|
8
|
+
|
9
|
+
module Twilio
|
10
|
+
module REST
|
11
|
+
class Voice < Domain
|
12
|
+
class V1 < Version
|
13
|
+
##
|
14
|
+
# PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
|
15
|
+
class ArchivedCallList < ListResource
|
16
|
+
##
|
17
|
+
# Initialize the ArchivedCallList
|
18
|
+
# @param [Version] version Version that contains the resource
|
19
|
+
# @return [ArchivedCallList] ArchivedCallList
|
20
|
+
def initialize(version)
|
21
|
+
super(version)
|
22
|
+
|
23
|
+
# Path Solution
|
24
|
+
@solution = {}
|
25
|
+
end
|
26
|
+
|
27
|
+
##
|
28
|
+
# Provide a user friendly representation
|
29
|
+
def to_s
|
30
|
+
'#<Twilio.Voice.V1.ArchivedCallList>'
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
##
|
35
|
+
# PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
|
36
|
+
class ArchivedCallPage < Page
|
37
|
+
##
|
38
|
+
# Initialize the ArchivedCallPage
|
39
|
+
# @param [Version] version Version that contains the resource
|
40
|
+
# @param [Response] response Response from the API
|
41
|
+
# @param [Hash] solution Path solution for the resource
|
42
|
+
# @return [ArchivedCallPage] ArchivedCallPage
|
43
|
+
def initialize(version, response, solution)
|
44
|
+
super(version, response)
|
45
|
+
|
46
|
+
# Path Solution
|
47
|
+
@solution = solution
|
48
|
+
end
|
49
|
+
|
50
|
+
##
|
51
|
+
# Build an instance of ArchivedCallInstance
|
52
|
+
# @param [Hash] payload Payload response from the API
|
53
|
+
# @return [ArchivedCallInstance] ArchivedCallInstance
|
54
|
+
def get_instance(payload)
|
55
|
+
ArchivedCallInstance.new(@version, payload, )
|
56
|
+
end
|
57
|
+
|
58
|
+
##
|
59
|
+
# Provide a user friendly representation
|
60
|
+
def to_s
|
61
|
+
'<Twilio.Voice.V1.ArchivedCallPage>'
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
##
|
66
|
+
# PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
|
67
|
+
class ArchivedCallContext < InstanceContext
|
68
|
+
##
|
69
|
+
# Initialize the ArchivedCallContext
|
70
|
+
# @param [Version] version Version that contains the resource
|
71
|
+
# @param [Date] date The date of the Call in UTC.
|
72
|
+
# @param [String] sid The Twilio-provided Call SID that uniquely identifies the
|
73
|
+
# Call resource to delete
|
74
|
+
# @return [ArchivedCallContext] ArchivedCallContext
|
75
|
+
def initialize(version, date, sid)
|
76
|
+
super(version)
|
77
|
+
|
78
|
+
# Path Solution
|
79
|
+
@solution = {date: date, sid: sid, }
|
80
|
+
@uri = "/Archives/#{@solution[:date]}/Calls/#{@solution[:sid]}"
|
81
|
+
end
|
82
|
+
|
83
|
+
##
|
84
|
+
# Delete the ArchivedCallInstance
|
85
|
+
# @return [Boolean] true if delete succeeds, false otherwise
|
86
|
+
def delete
|
87
|
+
@version.delete('DELETE', @uri)
|
88
|
+
end
|
89
|
+
|
90
|
+
##
|
91
|
+
# Provide a user friendly representation
|
92
|
+
def to_s
|
93
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
94
|
+
"#<Twilio.Voice.V1.ArchivedCallContext #{context}>"
|
95
|
+
end
|
96
|
+
|
97
|
+
##
|
98
|
+
# Provide a detailed, user friendly representation
|
99
|
+
def inspect
|
100
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
101
|
+
"#<Twilio.Voice.V1.ArchivedCallContext #{context}>"
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
##
|
106
|
+
# PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
|
107
|
+
class ArchivedCallInstance < InstanceResource
|
108
|
+
##
|
109
|
+
# Initialize the ArchivedCallInstance
|
110
|
+
# @param [Version] version Version that contains the resource
|
111
|
+
# @param [Hash] payload payload that contains response from Twilio
|
112
|
+
# @param [Date] date The date of the Call in UTC.
|
113
|
+
# @param [String] sid The Twilio-provided Call SID that uniquely identifies the
|
114
|
+
# Call resource to delete
|
115
|
+
# @return [ArchivedCallInstance] ArchivedCallInstance
|
116
|
+
def initialize(version, payload, date: nil, sid: nil)
|
117
|
+
super(version)
|
118
|
+
|
119
|
+
# Marshaled Properties
|
120
|
+
@properties = {
|
121
|
+
'date' => Twilio.deserialize_iso8601_date(payload['date']),
|
122
|
+
'sid' => payload['sid'],
|
123
|
+
'url' => payload['url'],
|
124
|
+
}
|
125
|
+
|
126
|
+
# Context
|
127
|
+
@instance_context = nil
|
128
|
+
@params = {'date' => date || @properties['date'], 'sid' => sid || @properties['sid'], }
|
129
|
+
end
|
130
|
+
|
131
|
+
##
|
132
|
+
# Generate an instance context for the instance, the context is capable of
|
133
|
+
# performing various actions. All instance actions are proxied to the context
|
134
|
+
# @return [ArchivedCallContext] ArchivedCallContext for this ArchivedCallInstance
|
135
|
+
def context
|
136
|
+
unless @instance_context
|
137
|
+
@instance_context = ArchivedCallContext.new(@version, @params['date'], @params['sid'], )
|
138
|
+
end
|
139
|
+
@instance_context
|
140
|
+
end
|
141
|
+
|
142
|
+
##
|
143
|
+
# @return [Date] date
|
144
|
+
def date
|
145
|
+
@properties['date']
|
146
|
+
end
|
147
|
+
|
148
|
+
##
|
149
|
+
# @return [String] sid
|
150
|
+
def sid
|
151
|
+
@properties['sid']
|
152
|
+
end
|
153
|
+
|
154
|
+
##
|
155
|
+
# @return [String] The absolute URL of the resource
|
156
|
+
def url
|
157
|
+
@properties['url']
|
158
|
+
end
|
159
|
+
|
160
|
+
##
|
161
|
+
# Delete the ArchivedCallInstance
|
162
|
+
# @return [Boolean] true if delete succeeds, false otherwise
|
163
|
+
def delete
|
164
|
+
context.delete
|
165
|
+
end
|
166
|
+
|
167
|
+
##
|
168
|
+
# Provide a user friendly representation
|
169
|
+
def to_s
|
170
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
171
|
+
"<Twilio.Voice.V1.ArchivedCallInstance #{values}>"
|
172
|
+
end
|
173
|
+
|
174
|
+
##
|
175
|
+
# Provide a detailed, user friendly representation
|
176
|
+
def inspect
|
177
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
178
|
+
"<Twilio.Voice.V1.ArchivedCallInstance #{values}>"
|
179
|
+
end
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
183
|
+
end
|
184
|
+
end
|
@@ -15,6 +15,7 @@ module Twilio
|
|
15
15
|
def initialize(domain)
|
16
16
|
super
|
17
17
|
@version = 'v1'
|
18
|
+
@archived_calls = nil
|
18
19
|
@byoc_trunks = nil
|
19
20
|
@connection_policies = nil
|
20
21
|
@dialing_permissions = nil
|
@@ -22,6 +23,26 @@ module Twilio
|
|
22
23
|
@source_ip_mappings = nil
|
23
24
|
end
|
24
25
|
|
26
|
+
##
|
27
|
+
# @param [Date] date The date of the Call in UTC.
|
28
|
+
# @param [String] sid The Twilio-provided Call SID that uniquely identifies the
|
29
|
+
# Call resource to delete
|
30
|
+
# @return [Twilio::REST::Voice::V1::ArchivedCallContext] if sid was passed.
|
31
|
+
# @return [Twilio::REST::Voice::V1::ArchivedCallList]
|
32
|
+
def archived_calls(date=:unset, sid=:unset)
|
33
|
+
if date.nil?
|
34
|
+
raise ArgumentError, 'date cannot be nil'
|
35
|
+
end
|
36
|
+
if sid.nil?
|
37
|
+
raise ArgumentError, 'sid cannot be nil'
|
38
|
+
end
|
39
|
+
if date == :unset && sid == :unset
|
40
|
+
@archived_calls ||= ArchivedCallList.new self
|
41
|
+
else
|
42
|
+
ArchivedCallContext.new(self, date, sid)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
25
46
|
##
|
26
47
|
# @param [String] sid The Twilio-provided string that uniquely identifies the BYOC
|
27
48
|
# Trunk resource to fetch.
|
@@ -28,6 +28,14 @@ module Twilio
|
|
28
28
|
@v1 ||= V1.new self
|
29
29
|
end
|
30
30
|
|
31
|
+
##
|
32
|
+
# @param [String] sid The call sid
|
33
|
+
# @return [Twilio::REST::Voice::V1::ArchivedCallInstance] if sid was passed.
|
34
|
+
# @return [Twilio::REST::Voice::V1::ArchivedCallList]
|
35
|
+
def archived_calls(date=:unset, sid=:unset)
|
36
|
+
self.v1.archived_calls(date, sid)
|
37
|
+
end
|
38
|
+
|
31
39
|
##
|
32
40
|
# @param [String] sid The unique string that that we created to identify the BYOC
|
33
41
|
# Trunk resource.
|
@@ -458,25 +458,25 @@ module Twilio
|
|
458
458
|
end
|
459
459
|
|
460
460
|
##
|
461
|
-
# @return [String] Deprecated
|
461
|
+
# @return [String] Deprecated
|
462
462
|
def sms_fallback_method
|
463
463
|
@properties['sms_fallback_method']
|
464
464
|
end
|
465
465
|
|
466
466
|
##
|
467
|
-
# @return [String] Deprecated
|
467
|
+
# @return [String] Deprecated
|
468
468
|
def sms_fallback_url
|
469
469
|
@properties['sms_fallback_url']
|
470
470
|
end
|
471
471
|
|
472
472
|
##
|
473
|
-
# @return [String] Deprecated
|
473
|
+
# @return [String] Deprecated
|
474
474
|
def sms_method
|
475
475
|
@properties['sms_method']
|
476
476
|
end
|
477
477
|
|
478
478
|
##
|
479
|
-
# @return [String] Deprecated
|
479
|
+
# @return [String] Deprecated
|
480
480
|
def sms_url
|
481
481
|
@properties['sms_url']
|
482
482
|
end
|
data/lib/twilio-ruby/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: twilio-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.
|
4
|
+
version: 5.62.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Twilio API Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-12-
|
11
|
+
date: 2021-12-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jwt
|
@@ -212,8 +212,7 @@ extra_rdoc_files:
|
|
212
212
|
- LICENSE
|
213
213
|
files:
|
214
214
|
- ".dockerignore"
|
215
|
-
- ".github/workflows/deploy.yml"
|
216
|
-
- ".github/workflows/test.yml"
|
215
|
+
- ".github/workflows/test-and-deploy.yml"
|
217
216
|
- ".gitignore"
|
218
217
|
- ".rubocop.yml"
|
219
218
|
- ".rubocop_todo.yml"
|
@@ -450,6 +449,7 @@ files:
|
|
450
449
|
- lib/twilio-ruby/rest/insights/v1/call_summaries.rb
|
451
450
|
- lib/twilio-ruby/rest/insights/v1/room.rb
|
452
451
|
- lib/twilio-ruby/rest/insights/v1/room/participant.rb
|
452
|
+
- lib/twilio-ruby/rest/insights/v1/setting.rb
|
453
453
|
- lib/twilio-ruby/rest/ip_messaging.rb
|
454
454
|
- lib/twilio-ruby/rest/ip_messaging/v1.rb
|
455
455
|
- lib/twilio-ruby/rest/ip_messaging/v1/credential.rb
|
@@ -743,6 +743,7 @@ files:
|
|
743
743
|
- lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb
|
744
744
|
- lib/twilio-ruby/rest/voice.rb
|
745
745
|
- lib/twilio-ruby/rest/voice/v1.rb
|
746
|
+
- lib/twilio-ruby/rest/voice/v1/archived_call.rb
|
746
747
|
- lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb
|
747
748
|
- lib/twilio-ruby/rest/voice/v1/connection_policy.rb
|
748
749
|
- lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb
|
data/.github/workflows/test.yml
DELETED
@@ -1,52 +0,0 @@
|
|
1
|
-
name: Tests
|
2
|
-
on:
|
3
|
-
push:
|
4
|
-
branches: [ '*' ]
|
5
|
-
pull_request:
|
6
|
-
branches: [ main ]
|
7
|
-
schedule:
|
8
|
-
# Run automatically at 8AM PST Monday-Friday
|
9
|
-
- cron: '0 15 * * 1-5'
|
10
|
-
workflow_dispatch:
|
11
|
-
|
12
|
-
jobs:
|
13
|
-
test:
|
14
|
-
name: Test
|
15
|
-
runs-on: ubuntu-latest
|
16
|
-
timeout-minutes: 20
|
17
|
-
strategy:
|
18
|
-
matrix:
|
19
|
-
ruby: [2.4, 2.5, 2.6, 2.7, '3.0', ruby-head, jruby-9.2]
|
20
|
-
continue-on-error: ${{ matrix.ruby == 'ruby-head' }}
|
21
|
-
steps:
|
22
|
-
- name: Checkout twilio-ruby
|
23
|
-
uses: actions/checkout@v2
|
24
|
-
|
25
|
-
- name: Set up Ruby
|
26
|
-
uses: ruby/setup-ruby@v1
|
27
|
-
with:
|
28
|
-
ruby-version: ${{ matrix.ruby }}
|
29
|
-
bundler-cache: true
|
30
|
-
|
31
|
-
- run: bundle install --with development
|
32
|
-
- run: bundle exec rake install
|
33
|
-
- name: Run Unit Tests
|
34
|
-
run: make test
|
35
|
-
|
36
|
-
notify-on-failure:
|
37
|
-
name: Slack notify on failure
|
38
|
-
if: ${{ failure() && github.ref == 'refs/heads/main' && github.event_name != 'pull_request' }}
|
39
|
-
needs: [test]
|
40
|
-
runs-on: ubuntu-latest
|
41
|
-
steps:
|
42
|
-
- uses: rtCamp/action-slack-notify@v2
|
43
|
-
env:
|
44
|
-
SLACK_COLOR: ${{ needs.test.status }}
|
45
|
-
SLACK_ICON_EMOJI: ':github:'
|
46
|
-
SLACK_MESSAGE: ${{ format('Build {2} in {1} failed{3} {0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id, ':') }}
|
47
|
-
SLACK_TITLE: Build Failure
|
48
|
-
SLACK_USERNAME: GitHub Actions
|
49
|
-
SLACK_MSG_AUTHOR: twilio-dx
|
50
|
-
SLACK_FOOTER: Posted automatically using GitHub Actions
|
51
|
-
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
|
52
|
-
MSG_MINIMAL: true
|