microsoft_teams_incoming_webhook_ruby 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bcd7a6c0a9d8ea6bd4b3976f79228ad531a1b197cda04651d61cb52eca8bc1d8
|
4
|
+
data.tar.gz: edf51a1ce9e09fbe251ea346f404cea4590e963cd191fecb9894bff3eebc0178
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 528b547f7cffc24ef983e8da8cb6d24ed199708c7f8886aea3fd9116c2eb45a2bb91edd496dd587cb0ea9d07b9867f43fa7dde35edff8034d92e80e27f84f759
|
7
|
+
data.tar.gz: c01e7874cef3041c89bba79548d447b071cd606da990d0c1b4add89e79b6428fd98b27e259622d6971766f676efb677dd2615eed09e592f53d8c396dc3adf8c6
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -37,7 +37,7 @@ gem install microsoft_teams_incoming_webhook_ruby
|
|
37
37
|
|
38
38
|
### Configuration of Incoming Webhook connector on your Teams channels
|
39
39
|
|
40
|
-
The first step before using this gem is to configure the connector inside your
|
40
|
+
The first step before using this gem is to configure the connector inside your Teams channels.
|
41
41
|
|
42
42
|
For this purpose, please check the official documentation from Microsoft. It's listed below some useful links:
|
43
43
|
|
@@ -57,7 +57,7 @@ Once you have configured Incoming Webhook inside your Teams channels, you can se
|
|
57
57
|
require 'microsoft_teams_incoming_webhook_ruby'
|
58
58
|
|
59
59
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
60
|
-
m.url
|
60
|
+
m.url = 'YOUR INCOMING WEBHOOK URL HERE'
|
61
61
|
m.text = 'Hello World!'
|
62
62
|
end
|
63
63
|
|
@@ -85,8 +85,6 @@ The Microsoft Incoming Webhook API allows us to send a variety of fields, that w
|
|
85
85
|
|
86
86
|
Because of this, the gem will not enforce any schema in message structure. The only required parameters are `url` and `text`. Any other options will be accepted, considering that Microsoft Incoming Webhook API accepts it.
|
87
87
|
|
88
|
-
### Configuration of message structure lately of initialization
|
89
|
-
|
90
88
|
The message structure and its fields can be defined in two moments:
|
91
89
|
|
92
90
|
- Initialization of `MicrosoftTeamsIncomingWebhookRuby::Message` object
|
@@ -102,42 +100,40 @@ Below there are some examples of this manipulation:
|
|
102
100
|
require 'microsoft_teams_incoming_webhook_ruby'
|
103
101
|
|
104
102
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
105
|
-
m.url
|
106
|
-
m.text
|
107
|
-
|
108
|
-
m.my_arbitrary_field = 'My value'
|
103
|
+
m.url = 'YOUR INCOMING WEBHOOK URL HERE'
|
104
|
+
m.text = 'Hello World!'
|
105
|
+
m.my_arbitrary_field = 'My value'
|
109
106
|
m.my_another_arbitrary_field = { my: 'value' }
|
110
107
|
end
|
111
108
|
|
112
109
|
message.send
|
113
110
|
```
|
114
111
|
|
115
|
-
-
|
112
|
+
- Addition of attribute after object initialization, but before `send` method call
|
116
113
|
|
117
114
|
```ruby
|
118
115
|
require 'microsoft_teams_incoming_webhook_ruby'
|
119
116
|
|
120
117
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
121
|
-
m.url
|
118
|
+
m.url = 'YOUR INCOMING WEBHOOK URL HERE'
|
122
119
|
m.text = 'Hello World!'
|
123
120
|
end
|
124
121
|
|
125
|
-
message.builder.my_arbitrary_field
|
122
|
+
message.builder.my_arbitrary_field = 'My value'
|
126
123
|
message.builder.my_another_arbitrary_field = { my: 'value' }
|
127
124
|
|
128
125
|
message.send
|
129
126
|
```
|
130
127
|
|
131
|
-
-
|
128
|
+
- Remotion of attributes after object initialization, but before `send` method call
|
132
129
|
|
133
130
|
```ruby
|
134
131
|
require 'microsoft_teams_incoming_webhook_ruby'
|
135
132
|
|
136
133
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
137
|
-
m.url
|
138
|
-
m.text
|
139
|
-
|
140
|
-
m.my_custom_field = 'My custom value'
|
134
|
+
m.url = 'YOUR INCOMING WEBHOOK URL HERE'
|
135
|
+
m.text = 'Hello World!'
|
136
|
+
m.my_custom_field = 'My custom value'
|
141
137
|
end
|
142
138
|
|
143
139
|
message.builder.delete_field :my_custom_field
|
@@ -145,16 +141,15 @@ message.builder.delete_field :my_custom_field
|
|
145
141
|
message.send
|
146
142
|
```
|
147
143
|
|
148
|
-
-
|
144
|
+
- Redefinition of attributes after object initialization, but before `send` method call
|
149
145
|
|
150
146
|
```ruby
|
151
147
|
require 'microsoft_teams_incoming_webhook_ruby'
|
152
148
|
|
153
149
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
154
|
-
m.url
|
155
|
-
m.text
|
156
|
-
|
157
|
-
m.my_custom_field = 'My custom value'
|
150
|
+
m.url = 'YOUR INCOMING WEBHOOK URL HERE'
|
151
|
+
m.text = 'Hello World!'
|
152
|
+
m.my_custom_field = 'My custom value'
|
158
153
|
end
|
159
154
|
|
160
155
|
message.builder.my_custom_field = 'Updated value'
|
@@ -162,14 +157,14 @@ message.builder.my_custom_field = 'Updated value'
|
|
162
157
|
message.send
|
163
158
|
```
|
164
159
|
|
165
|
-
In case of keys that starts with **@**, is necessary to use brackets notation:
|
160
|
+
In case of keys that starts with **@**, it is necessary to use brackets notation:
|
166
161
|
|
167
162
|
```ruby
|
168
163
|
require 'microsoft_teams_incoming_webhook_ruby'
|
169
164
|
|
170
165
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
171
|
-
m.url
|
172
|
-
m.text
|
166
|
+
m.url = 'YOUR INCOMING WEBHOOK URL HERE'
|
167
|
+
m.text = 'Hello World!'
|
173
168
|
m['@my_field'] = 'Lorem ipsum'
|
174
169
|
end
|
175
170
|
|
@@ -186,11 +181,11 @@ If the builder object turn itself invalid before invocation of `send` method, th
|
|
186
181
|
require 'microsoft_teams_incoming_webhook_ruby'
|
187
182
|
|
188
183
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
189
|
-
m.url
|
190
|
-
m.text
|
184
|
+
m.url = 'YOUR INCOMING WEBHOOK URL HERE'
|
185
|
+
m.text = 'Hello World!'
|
191
186
|
end
|
192
187
|
|
193
|
-
message.delete_field :url
|
188
|
+
message.builder.delete_field :url
|
194
189
|
|
195
190
|
begin
|
196
191
|
message.send
|
@@ -217,8 +212,8 @@ If a non-successful response code be returned by API (1xx, 4xx or 5xx), the gem
|
|
217
212
|
require 'microsoft_teams_incoming_webhook_ruby'
|
218
213
|
|
219
214
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
220
|
-
m.url
|
221
|
-
m.text
|
215
|
+
m.url = 'YOUR INCOMING WEBHOOK URL HERE'
|
216
|
+
m.text = 'My message'
|
222
217
|
end
|
223
218
|
|
224
219
|
begin
|
@@ -250,7 +245,7 @@ require 'microsoft_teams_incoming_webhook_ruby'
|
|
250
245
|
webhook_url = 'YOUR INCOMING WEBHOOK URL HERE'
|
251
246
|
|
252
247
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
253
|
-
m.url
|
248
|
+
m.url = webhook_url
|
254
249
|
m.text = 'Minimal message!'
|
255
250
|
end
|
256
251
|
|
@@ -265,8 +260,8 @@ require 'microsoft_teams_incoming_webhook_ruby'
|
|
265
260
|
webhook_url = 'YOUR INCOMING WEBHOOK URL HERE'
|
266
261
|
|
267
262
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
268
|
-
m.url
|
269
|
-
m.text
|
263
|
+
m.url = webhook_url
|
264
|
+
m.text = 'Message with theme color!'
|
270
265
|
m.themeColor = 'FF0000'
|
271
266
|
end
|
272
267
|
|
@@ -281,9 +276,9 @@ require 'microsoft_teams_incoming_webhook_ruby'
|
|
281
276
|
webhook_url = 'YOUR INCOMING WEBHOOK URL HERE'
|
282
277
|
|
283
278
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
284
|
-
m.url
|
285
|
-
m.text
|
286
|
-
m.title = '
|
279
|
+
m.url = webhook_url
|
280
|
+
m.text = 'Message with title!'
|
281
|
+
m.title = 'My title'
|
287
282
|
end
|
288
283
|
|
289
284
|
message.send
|
@@ -297,8 +292,8 @@ require 'microsoft_teams_incoming_webhook_ruby'
|
|
297
292
|
webhook_url = 'YOUR INCOMING WEBHOOK URL HERE'
|
298
293
|
|
299
294
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
300
|
-
m.url
|
301
|
-
m.text
|
295
|
+
m.url = webhook_url
|
296
|
+
m.text = 'Message with summary!'
|
302
297
|
m.summary = 'My summary'
|
303
298
|
end
|
304
299
|
|
@@ -313,8 +308,8 @@ require 'microsoft_teams_incoming_webhook_ruby'
|
|
313
308
|
webhook_url = 'YOUR INCOMING WEBHOOK URL HERE'
|
314
309
|
|
315
310
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
316
|
-
m.url
|
317
|
-
m.text
|
311
|
+
m.url = webhook_url
|
312
|
+
m.text = 'Message with potential action!'
|
318
313
|
m.potentialAction = [
|
319
314
|
{
|
320
315
|
'@type': 'ActionCard',
|
@@ -365,8 +360,8 @@ require 'microsoft_teams_incoming_webhook_ruby'
|
|
365
360
|
webhook_url = 'YOUR INCOMING WEBHOOK URL HERE'
|
366
361
|
|
367
362
|
message = MicrosoftTeamsIncomingWebhookRuby::Message.new do |m|
|
368
|
-
m.url
|
369
|
-
m.text
|
363
|
+
m.url = webhook_url
|
364
|
+
m.text = 'Message with sections!'
|
370
365
|
m.sections = [
|
371
366
|
{
|
372
367
|
'text': 'Lorem ipsum vastium',
|
@@ -407,6 +402,7 @@ There are similar and great open source libraries that shares the same purpose o
|
|
407
402
|
- https://github.com/shirts/microsoft-teams-ruby
|
408
403
|
- https://github.com/oooooooo/msteams-ruby-client
|
409
404
|
- https://github.com/eduardolagares/msteams_webhook
|
405
|
+
- https://github.com/adventistmedia/msteams_notifier
|
410
406
|
|
411
407
|
## Contributing
|
412
408
|
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'net/http'
|
4
4
|
require 'json'
|
5
|
+
require 'openssl'
|
5
6
|
|
6
7
|
module MicrosoftTeamsIncomingWebhookRuby
|
7
8
|
class Message
|
@@ -41,9 +42,10 @@ module MicrosoftTeamsIncomingWebhookRuby
|
|
41
42
|
end
|
42
43
|
|
43
44
|
def send_by_http
|
44
|
-
uri
|
45
|
-
http
|
46
|
-
http.use_ssl
|
45
|
+
uri = URI.parse(@builder.url)
|
46
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
47
|
+
http.use_ssl = true
|
48
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
47
49
|
http.post(uri.path, @builder.to_h.to_json, 'Content-Type': 'application/json')
|
48
50
|
end
|
49
51
|
|
@@ -14,15 +14,11 @@ Gem::Specification.new do |spec|
|
|
14
14
|
spec.required_ruby_version = Gem::Requirement.new('>= 2.3.0')
|
15
15
|
spec.metadata["homepage_uri"] = spec.homepage
|
16
16
|
spec.metadata["source_code_uri"] = spec.homepage
|
17
|
-
spec.metadata["changelog_uri"] = "#{spec.homepage}/CHANGELOG.md"
|
18
|
-
|
19
|
-
spec.
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
spec.bindir = 'exe'
|
24
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
25
|
-
spec.require_paths = ['lib']
|
17
|
+
spec.metadata["changelog_uri"] = "#{spec.homepage}/blob/master/CHANGELOG.md"
|
18
|
+
spec.files = Dir.chdir(File.expand_path('..', __FILE__)) { `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) } }
|
19
|
+
spec.bindir = 'exe'
|
20
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
21
|
+
spec.require_paths = ['lib']
|
26
22
|
|
27
23
|
spec.add_development_dependency 'rake'
|
28
24
|
spec.add_development_dependency 'rspec'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: microsoft_teams_incoming_webhook_ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pedro Furtado
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-09-
|
11
|
+
date: 2021-09-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -112,7 +112,7 @@ licenses:
|
|
112
112
|
metadata:
|
113
113
|
homepage_uri: https://github.com/pedrofurtado/microsoft_teams_incoming_webhook_ruby
|
114
114
|
source_code_uri: https://github.com/pedrofurtado/microsoft_teams_incoming_webhook_ruby
|
115
|
-
changelog_uri: https://github.com/pedrofurtado/microsoft_teams_incoming_webhook_ruby/CHANGELOG.md
|
115
|
+
changelog_uri: https://github.com/pedrofurtado/microsoft_teams_incoming_webhook_ruby/blob/master/CHANGELOG.md
|
116
116
|
post_install_message:
|
117
117
|
rdoc_options: []
|
118
118
|
require_paths:
|