Class: Sugilite::GetUserList
- Inherits:
-
Object
- Object
- Sugilite::GetUserList
- Defined in:
- lib/sugilite.rb
Overview
Get the user list from TMI all methods return arrays
Instance Attribute Summary collapse
-
#channel ⇒ Object
Channel name.
Instance Method Summary collapse
-
#admin ⇒ Object
lists any admins in channel.
-
#all ⇒ Object
list all users on channel.
-
#broadcaster ⇒ Object
lists the broadcaster in channel.
-
#global_mod ⇒ Object
lists any global moderators in channel (possibly depricated).
-
#initialize(channel) ⇒ GetUserList
constructor
New message.
-
#moderator ⇒ Object
lists any moderators in channel.
-
#random ⇒ Object
Pick a random viewer from all in channel.
-
#randomviewer ⇒ Object
Pick a random viewer of your channel, with out any special ranks.
-
#staff ⇒ Object
lists any staff in channel.
-
#viewer ⇒ Object
lists viewers.
-
#vip ⇒ Object
lists any vips in channel.
Constructor Details
#initialize(channel) ⇒ GetUserList
New message
25 26 27 28 |
# File 'lib/sugilite.rb', line 25 def initialize(channel) # Users Channel @url = URI("https://tmi.twitch.tv/group/user/#{channel}/chatters") end |
Instance Attribute Details
#channel ⇒ Object
Channel name.
22 23 24 |
# File 'lib/sugilite.rb', line 22 def channel @channel end |
Instance Method Details
#admin ⇒ Object
lists any admins in channel
84 85 86 87 88 |
# File 'lib/sugilite.rb', line 84 def admin getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters').fetch('admins') userary end |
#all ⇒ Object
list all users on channel
31 32 33 34 35 36 37 |
# File 'lib/sugilite.rb', line 31 def all userlist = [] getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters') userary.keys.each { |k| userary[k].each { |user| userlist.push(user) } } userlist end |
#broadcaster ⇒ Object
lists the broadcaster in channel
56 57 58 59 60 |
# File 'lib/sugilite.rb', line 56 def broadcaster getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters').fetch('broadcaster') userary end |
#global_mod ⇒ Object
lists any global moderators in channel (possibly depricated)
91 92 93 94 95 |
# File 'lib/sugilite.rb', line 91 def global_mod getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters').fetch('global_mods') userary end |
#moderator ⇒ Object
lists any moderators in channel
70 71 72 73 74 |
# File 'lib/sugilite.rb', line 70 def moderator getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters').fetch('moderators') userary end |
#random ⇒ Object
Pick a random viewer from all in channel.
47 48 49 50 51 52 53 |
# File 'lib/sugilite.rb', line 47 def random userlist = [] getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters') userary.keys.each { |k| userary[k].each { |user| userlist.push(user) } } userlist.sample end |
#randomviewer ⇒ Object
Pick a random viewer of your channel, with out any special ranks.
40 41 42 43 44 |
# File 'lib/sugilite.rb', line 40 def randomviewer getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters').fetch('viewers') userary.sample end |
#staff ⇒ Object
lists any staff in channel
77 78 79 80 81 |
# File 'lib/sugilite.rb', line 77 def staff getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters').fetch('staff') userary end |
#viewer ⇒ Object
lists viewers
98 99 100 101 102 |
# File 'lib/sugilite.rb', line 98 def viewer getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters').fetch('viewers') userary end |
#vip ⇒ Object
lists any vips in channel
63 64 65 66 67 |
# File 'lib/sugilite.rb', line 63 def vip getchan = Net::HTTP.get(@url) userary = Oj.load(getchan).fetch('chatters').fetch('vips') userary end |