slack-smart-bot 1.12.3 → 1.12.5
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/slack/smart-bot/commands/on_bot/general/bot_stats.rb +38 -9
- data/whats_new.txt +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 36ca224f2a96256ac106440459efac5a513b0ebabac65494d6a070e1faa5abf3
|
|
4
|
+
data.tar.gz: 3aac3bb4b43dc458876c8bd12157bd9e428eb5d684d69861dc174898b8c5cf9e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f99650a5ee15bab2a367dbc3de6be5cf00e7e01cd083a0a6f5cc425e51893609dba819f31191da74ace36e03a64b13fa6dae346ab24bddbbfbb0883bad5eccc9
|
|
7
|
+
data.tar.gz: 8f6904c2f655f09a0bdad49e4fe6da578524ccd8b82c0a00c4574398d01e4c7c109aeeb62868469471baf17a26c7778170e707e7ab87f2fe9065df7614db0b93
|
|
@@ -76,6 +76,7 @@ class SlackSmartBot
|
|
|
76
76
|
end
|
|
77
77
|
tzone_users = {}
|
|
78
78
|
job_title_users = {}
|
|
79
|
+
users_by_job_title = {}
|
|
79
80
|
|
|
80
81
|
unless wrong
|
|
81
82
|
if on_dm_master or (from_user.id == user) # normal user can only see own stats
|
|
@@ -320,10 +321,12 @@ class SlackSmartBot
|
|
|
320
321
|
end
|
|
321
322
|
end
|
|
322
323
|
if rows[0].key?(:job_title) #then save_stats is saving the job title already
|
|
323
|
-
rows.job_title.
|
|
324
|
+
rows.job_title.each_with_index do |job_title, idx|
|
|
324
325
|
unless job_title == ''
|
|
325
326
|
job_title_users[job_title] ||= 0
|
|
326
327
|
job_title_users[job_title] += 1
|
|
328
|
+
users_by_job_title[job_title] ||= []
|
|
329
|
+
users_by_job_title[job_title] << rows.user_name[idx]
|
|
327
330
|
end
|
|
328
331
|
end
|
|
329
332
|
else
|
|
@@ -332,17 +335,25 @@ class SlackSmartBot
|
|
|
332
335
|
unless rows[i].values[12] == ''
|
|
333
336
|
job_title_users[rows[i].values[12]] ||= 0
|
|
334
337
|
job_title_users[rows[i].values[12]] += 1
|
|
338
|
+
users_by_job_title[rows[i].values[12]] ||= []
|
|
339
|
+
users_by_job_title[rows[i].values[12]] << rows.user_name[i]
|
|
335
340
|
end
|
|
336
341
|
else
|
|
337
342
|
user_info = @users.select { |u| u.id == usr or (u.key?(:enterprise_user) and u.enterprise_user.id == usr) }[-1]
|
|
338
343
|
unless user_info.nil? or user_info.is_app_user or user_info.is_bot
|
|
339
344
|
job_title_users[user_info.profile.title] ||= 0
|
|
340
345
|
job_title_users[user_info.profile.title] += 1
|
|
346
|
+
users_by_job_title[user_info.profile.title] ||= []
|
|
347
|
+
users_by_job_title[user_info.profile.title] << rows.user_name[i]
|
|
341
348
|
end
|
|
342
349
|
end
|
|
343
350
|
end
|
|
344
351
|
end
|
|
345
|
-
|
|
352
|
+
total_users_by_job_title = 0
|
|
353
|
+
users_by_job_title.each do |job_title, users|
|
|
354
|
+
users.uniq!
|
|
355
|
+
total_users_by_job_title += users.size
|
|
356
|
+
end
|
|
346
357
|
if users.size > 10
|
|
347
358
|
message << "*Users* - #{users.size} (Top 10)"
|
|
348
359
|
else
|
|
@@ -375,8 +386,10 @@ class SlackSmartBot
|
|
|
375
386
|
message << "*Time Zones*"
|
|
376
387
|
total_known = 0
|
|
377
388
|
tzone_users.each do |tzone, num|
|
|
378
|
-
|
|
379
|
-
|
|
389
|
+
unless tzone.to_s == ''
|
|
390
|
+
message << "\t#{tzone}: #{num} (#{(num.to_f*100/total_without_routines).round(2)}%)"
|
|
391
|
+
total_known+=num
|
|
392
|
+
end
|
|
380
393
|
end
|
|
381
394
|
total_unknown = total_without_routines - total_known
|
|
382
395
|
message << "\tUnknown: #{total_unknown} (#{(total_unknown.to_f*100/total_without_routines).round(2)}%)" if total_unknown > 0
|
|
@@ -391,16 +404,32 @@ class SlackSmartBot
|
|
|
391
404
|
total_known = 0
|
|
392
405
|
i = 0
|
|
393
406
|
job_title_users.sort_by {|k,v| -v}.each do |jtitle, num|
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
407
|
+
unless jtitle.to_s == ''
|
|
408
|
+
i += 1
|
|
409
|
+
if i <= 10
|
|
410
|
+
message << "\t#{jtitle}: #{num} (#{(num.to_f*100/total_without_routines).round(2)}%)"
|
|
411
|
+
end
|
|
412
|
+
total_known+=num
|
|
397
413
|
end
|
|
398
|
-
total_known+=num
|
|
399
414
|
end
|
|
400
415
|
total_unknown = total_without_routines - total_known
|
|
401
416
|
message << "\tUnknown: #{total_unknown} (#{(total_unknown.to_f*100/total_without_routines).round(2)}%)" if total_unknown > 0
|
|
402
417
|
end
|
|
403
|
-
|
|
418
|
+
if users_by_job_title.size > 0
|
|
419
|
+
if users_by_job_title.size > 10
|
|
420
|
+
message << "*Num Users by Job Title* (Top 10)"
|
|
421
|
+
else
|
|
422
|
+
message << "*Num Users by Job Title*"
|
|
423
|
+
end
|
|
424
|
+
i = 0
|
|
425
|
+
users_by_job_title.sort_by {|k,v| -v.size}.each do |jtitle, users|
|
|
426
|
+
i += 1
|
|
427
|
+
if i <= 10
|
|
428
|
+
jtitle = 'Unknown' if jtitle.to_s == ''
|
|
429
|
+
message << "\t#{jtitle}: #{users.size} (#{(users.size.to_f*100/total_users_by_job_title).round(2)}%)"
|
|
430
|
+
end
|
|
431
|
+
end
|
|
432
|
+
end
|
|
404
433
|
end
|
|
405
434
|
commands_attachment = []
|
|
406
435
|
|
data/whats_new.txt
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: slack-smart-bot
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.12.
|
|
4
|
+
version: 1.12.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Mario Ruiz
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2022-11-
|
|
11
|
+
date: 2022-11-03 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: slack-ruby-client
|
|
@@ -290,14 +290,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
290
290
|
requirements:
|
|
291
291
|
- - ">="
|
|
292
292
|
- !ruby/object:Gem::Version
|
|
293
|
-
version:
|
|
293
|
+
version: 2.7.3
|
|
294
294
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
295
295
|
requirements:
|
|
296
296
|
- - ">="
|
|
297
297
|
- !ruby/object:Gem::Version
|
|
298
298
|
version: '0'
|
|
299
299
|
requirements: []
|
|
300
|
-
rubygems_version: 3.
|
|
300
|
+
rubygems_version: 3.1.6
|
|
301
301
|
signing_key:
|
|
302
302
|
specification_version: 4
|
|
303
303
|
summary: Create a Slack bot that is smart and so easy to expand, create new bots on
|