slack-smart-bot 1.14.0 → 1.14.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +42 -65
- data/lib/slack/smart-bot/commands/on_bot/add_shortcut.rb +1 -0
- data/lib/slack/smart-bot/commands/on_bot/delete_shortcut.rb +2 -2
- data/whats_new.txt +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 37c704bfddd83d7a7d34f9b15cea3cf8d1f01dde28c11c9e9bea01fb6ac9db19
|
4
|
+
data.tar.gz: 9785ce98b6695b77aaf89a0e239142e2443a4d812c2dcb1fe3119953f516d023
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8e287b2173246c2adc1805738c87a6428ef43776213294558e1e900b29a03094df9b16d44b3a754d7b52d6a774a1a44da946cb553c4a5c9e83ca76b651239a1a
|
7
|
+
data.tar.gz: 9100ceee4ac4efd07a9ae4fae9d9014d00417626b0650bcd9bfa3824ff4070812cd9dfc79bbf26d68b088a43600ad22a469a40c137f4d9634066e9c2d133a596
|
data/README.md
CHANGED
@@ -231,28 +231,16 @@ To run a command on demand and add the response on a thread:
|
|
231
231
|
**_`^THE_COMMAND`_**
|
232
232
|
**_`!!THE_COMMAND`_**
|
233
233
|
|
234
|
-
Examples run a command on demand:
|
235
|
-
>**_Peter>_** `!ruby puts Time.now`
|
236
|
-
>**_Smart-Bot>_** `2019-10-23 12:43:42 +0000`
|
234
|
+
Examples run a command on demand:
|
237
235
|
|
238
|
-
|
239
|
-
>**_Smart-Bot>_** `Example`
|
236
|
+
<img src="img/commands_on_demand.png" width="400">
|
240
237
|
|
241
|
-
>**_Peter>_** `smart-bot see shortcuts`
|
242
|
-
>**_Smart-Bot>_** `Available shortcuts for Peter:`
|
243
|
-
>`Spanish account: ruby require 'iso/iban'; 10.times {puts ISO::IBAN.random('ES')}`
|
244
|
-
>**_Peter>_** `!!echo Example`
|
245
|
-
>. . . . . . . . .**_Smart-Bot>_** `Example`
|
246
|
-
>**_Peter>_** `^echo Example`
|
247
|
-
>. . . . . . . . .**_Smart-Bot>_** `Example`
|
248
238
|
|
249
239
|
Also you can always call the Smart Bot from any channel, even from channels without a running Smart Bot. You can use the External Call on Demand: **_`@NAME_OF_BOT on #CHANNEL_NAME COMMAND`_**. In this case you will call the bot on #CHANNEL_NAME. You can supply more than one channel then all the bots will respond. In case you are in a private conversation with the Smart Bot (DM) then you can use directly: **_`#CHANNEL_NAME COMMAND`_** or **_`on #CHANNEL_NAME COMMAND`_**
|
250
240
|
|
251
|
-
Examples:
|
252
|
-
|
253
|
-
|
254
|
-
>**_Peter>_** `@smart-bot on #the_channel ^ruby puts Time.now`
|
255
|
-
>. . . . . . . . .**_Smart-Bot>_** `2019-10-23 12:43:42 +0000`
|
241
|
+
Examples:
|
242
|
+
|
243
|
+
<img src="img/commands_on_external_call.png" width="400">
|
256
244
|
|
257
245
|
Examples on DM:
|
258
246
|
>**_Peter>_** `#sales show report from India`
|
@@ -260,14 +248,8 @@ Examples on DM:
|
|
260
248
|
|
261
249
|
If you want the Smart Bot just listen to part of the message you send, add the commands you want using '`' and start the line with '-!', '-!!' or '-^'
|
262
250
|
|
263
|
-
Examples:
|
264
|
-
|
265
|
-
>**_Smart-Bot>_** `a`
|
266
|
-
>**_Smart-Bot>_** `b`
|
267
|
-
|
268
|
-
>**_Peter>_** ``-^This text won't be treated but this one yes `ruby puts 'a'` and also this one `ruby puts 'b'` ``
|
269
|
-
>. . . . . . . . .**_Smart-Bot>_** `a`
|
270
|
-
>. . . . . . . . .**_Smart-Bot>_** `b`
|
251
|
+
Examples:
|
252
|
+
<img src="img/commands_inline.png" width="400">
|
271
253
|
|
272
254
|
|
273
255
|
All the commands specified on `./rules/general_commands.rb` will be accessible from any channel where the Smart Bot is present, without the necessity to call it with !, !!, ^ or on demand.
|
@@ -287,10 +269,9 @@ To show only the specific rules of the Smart Bot defined on the rules file: **_`
|
|
287
269
|
|
288
270
|
Also you can call `suggest command` or `random command` and SmartBot will return the help content for a random command.
|
289
271
|
|
290
|
-
Example:
|
291
|
-
|
292
|
-
|
293
|
-
`repeats SOMETHING`
|
272
|
+
Example:
|
273
|
+
<img src="img/command_bot_help_echo.png" width="300">
|
274
|
+
|
294
275
|
|
295
276
|
When you call a command that is not recognized, you will get suggestions from the Smart Bot.
|
296
277
|
|
@@ -368,9 +349,9 @@ Also you can always call the Smart Bot from any channel, even from channels with
|
|
368
349
|
|
369
350
|
You can run Ruby code by using the command: **_`ruby THE_CODE`_**.
|
370
351
|
|
371
|
-
Example:
|
372
|
-
|
373
|
-
|
352
|
+
Example:
|
353
|
+
<img src="img/command_ruby.png" width="500">
|
354
|
+
|
374
355
|
|
375
356
|
Also it is possible to attach a Ruby file and the Smart Bot will run and post the output. You need to select Ruby as file format. Or if you prefer it you can call the `ruby` command and on the same message supply a code block.
|
376
357
|
|
@@ -406,28 +387,16 @@ Examples:
|
|
406
387
|
_repl_
|
407
388
|
|
408
389
|
|
409
|
-
Running Example:
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
>**_Smart-Bot>_** `{ :name => "kLam", :job => "leader" }`
|
420
|
-
>**_Peter>_** `10.times { http.post(request.generate) } `
|
421
|
-
>**_Smart-Bot>_** `10`
|
422
|
-
>**_Peter>_** `puts "10 Random Users Created"`
|
423
|
-
>**_Smart-Bot>_** `10 Random Users Created`
|
424
|
-
>**_Peter>_** `quit`
|
425
|
-
>**_Smart-Bot>_** `REPL session finished: Create10RandomUsers`
|
426
|
-
|
427
|
-
|
428
|
-
>**_Peter>_** `run repl Create10RandomUsers`
|
429
|
-
>**_Smart-Bot>_** `Running REPL Create10RandomUsers`
|
430
|
-
>**_Smart-Bot>_** `Create10RandomUsers: 10 Random Users Created`
|
390
|
+
Running Example:
|
391
|
+
<img src="img/command_repl1.png" width="600">
|
392
|
+
|
393
|
+
<img src="img/command_repl2.png" width="600">
|
394
|
+
|
395
|
+
|
396
|
+
Runnning on demand the repl we created:
|
397
|
+
|
398
|
+
<img src="img/command_run_repl.png" width="400">
|
399
|
+
|
431
400
|
|
432
401
|
You can run repls and supply parameters to the repl that will be executed on the same session just before the repl. [More info](https://github.com/MarioRuiz/slack-smart-bot/issues/60)
|
433
402
|
Example:
|
@@ -456,13 +425,11 @@ If you have for example a rule like this: **_`run tests on customers android app
|
|
456
425
|
From that moment you will be able to run the command: **_`run tca`_**
|
457
426
|
|
458
427
|
That shortcut will be available for you, in case you want to make it available for everybody on the channel:
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
`ES4799209592433480943244`
|
465
|
-
`ES8888795057132445752702`
|
428
|
+
|
429
|
+
Example:
|
430
|
+
|
431
|
+
<img src="img/command_add_sc.png" width="500">
|
432
|
+
|
466
433
|
|
467
434
|
In case you want to use a shortcut as a inline shortcut inside a command you can do it by adding a $:
|
468
435
|
Example:
|
@@ -491,7 +458,9 @@ Examples:
|
|
491
458
|
>**_Peter>_** `add announcement Party will start at 20:00 :tada:`
|
492
459
|
>**_Peter>_** `add :heavy_exclamation_mark: message Pay attention all DB are on maintenance until 20:00 GMT`
|
493
460
|
|
494
|
-
To see the announcements of the channel: **_`see announcements`_**, **_`see COLOR announcements`_**, **_`see EMOJI announcements`_** and to delete a particular announcement: **_`delete announcement ID`_**
|
461
|
+
To see the announcements of the channel: **_`see announcements`_**, **_`see COLOR announcements`_**, **_`see EMOJI announcements`_** and to delete a particular announcement: **_`delete announcement ID`_**
|
462
|
+
|
463
|
+
<img src="img/command_see_announcements.png" width="500">
|
495
464
|
|
496
465
|
If you are a master admin and you are on master channel then you can call **_`publish announcements`_** that will publish the announcements on all channels. The messages stored on a DM won't be published. This is very convenient to be called from a *Routine* for example every weekday at 09:00.
|
497
466
|
|
@@ -521,7 +490,9 @@ Examples:
|
|
521
490
|
>**_Peter>_** `who is not on vacation?`
|
522
491
|
>**_Peter>_** `who is on vacation? #SalesChannel`
|
523
492
|
>**_Peter>_** `who is on :working-from-home:`
|
524
|
-
>**_Peter>_** `who is available?`
|
493
|
+
>**_Peter>_** `who is available?`
|
494
|
+
|
495
|
+
<img src="img/command_see_statuses.png" width="400">
|
525
496
|
|
526
497
|
### Routines
|
527
498
|
> for admins
|
@@ -556,7 +527,7 @@ Other routine commands:
|
|
556
527
|
### Loops
|
557
528
|
> for all users
|
558
529
|
|
559
|
-
You can run any command or rule on a loop by using:
|
530
|
+
You can run *any command* or rule on a loop by using:
|
560
531
|
**_`for NUMBER times every NUMBER minutes COMMAND`_**
|
561
532
|
**_`for NUMBER times every NUMBER seconds COMMAND`_**
|
562
533
|
Maximum number of times to be used: 24. Minimum every 10 seconds. Maximum every 60 minutes.
|
@@ -569,6 +540,8 @@ Examples:
|
|
569
540
|
>**_`quit loop 1`_**
|
570
541
|
>**_`stop iterator 12`_**
|
571
542
|
|
543
|
+
<img src="img/command_loop.png" width="400">
|
544
|
+
|
572
545
|
### Control who has access to a command
|
573
546
|
> for admins
|
574
547
|
|
@@ -703,8 +676,12 @@ Examples:
|
|
703
676
|
>**_`sales team memo 4 Put it on hold until tests for Apple feature are finished`_**
|
704
677
|
>**_`sales team memo 7`_**
|
705
678
|
|
679
|
+
<img src="img/command_see_team.png" width="600">
|
680
|
+
|
681
|
+
|
706
682
|
Other team commands: **_`delete team TEAM_NAME`_**, **_`delete memo ID from team TEAM_NAME`_**, **_`set STATUS on memo ID TEAM_NAME team`_**, **_`see MEMO_TYPE from TEAM_NAME team TOPIC`_**
|
707
683
|
|
684
|
+
|
708
685
|
### Time off management
|
709
686
|
> for all users
|
710
687
|
|
@@ -736,7 +713,7 @@ settings = {
|
|
736
713
|
|
737
714
|
When calling `see my time off` on a DM will display a calendar of the year with the days off, including public holidays
|
738
715
|
|
739
|
-
<img src="img/
|
716
|
+
<img src="img/command_my_timeoff.png" width="650">
|
740
717
|
|
741
718
|
Other 'time off' commands: **_`remove time off ID`_**, **_`see my time off`_**, **_`see vacations @USER`_**, **_`time off team NAME`_**, **_`set public holidays to COUNTRY/REGION`_**
|
742
719
|
|
@@ -26,6 +26,7 @@ class SlackSmartBot
|
|
26
26
|
unless typem == :on_extended
|
27
27
|
from = user.name
|
28
28
|
if has_access?(__method__, user)
|
29
|
+
shortcut_name.strip!
|
29
30
|
if global
|
30
31
|
if !config.on_master_bot or typem != :on_master
|
31
32
|
respond "It is only possible to add global shortcuts from Master channel"
|
@@ -14,8 +14,8 @@ class SlackSmartBot
|
|
14
14
|
unless typem == :on_extended
|
15
15
|
from = user.name
|
16
16
|
if has_access?(__method__, user)
|
17
|
-
deleted = false
|
18
|
-
|
17
|
+
deleted = false
|
18
|
+
shortcut.strip!
|
19
19
|
if global
|
20
20
|
if !config.on_master_bot or typem != :on_master
|
21
21
|
respond "It is only possible to delete global shortcuts from Master channel"
|
data/whats_new.txt
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
*Version 1.14.
|
1
|
+
*Version 1.14.1* Released 2023-Apr-13
|
2
2
|
|
3
3
|
*For General users*
|
4
4
|
- `team TEAM_NAME memo ID MESSAGE`, `TEAM_NAME team memo ID MESSAGE` It will add a comment to the memo ID specified on the team specified. (<https://github.com/MarioRuiz/slack-smart-bot/issues/95|#95>).
|