Module: HackclubRequest
- Defined in:
- lib/server-bridge.rb
Constant Summary collapse
- DEFAULT_EMOJI =
:alibaba-question:
"https://emoji.slack-edge.com/T0266FRGM/alibaba-question/c5ba32ce553206b8.png"
Class Attribute Summary collapse
-
.host ⇒ Object
Returns the value of attribute host.
Class Method Summary collapse
- .raw_channel(channelid) ⇒ Object
- .raw_user(userid) ⇒ Object
- .resolve_channel(channelid) ⇒ Object
- .resolve_emoji(id) ⇒ Object
- .resolve_username(userid) ⇒ Object
Class Attribute Details
.host ⇒ Object
Returns the value of attribute host.
10 11 12 |
# File 'lib/server-bridge.rb', line 10 def host @host end |
Class Method Details
.raw_channel(channelid) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/server-bridge.rb', line 52 def self.raw_channel(channelid) uri = URI("#{host}/conversations.info/#{channelid}") res = Net::HTTP.get_response(uri) data = JSON.parse(res.body) if res.is_a?(Net::HTTPSuccess) data else {} end end |
.raw_user(userid) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/server-bridge.rb', line 24 def self.raw_user(userid) uri = URI("#{host}/users.info/#{userid}") res = Net::HTTP.get_response(uri) data = JSON.parse(res.body) if res.is_a?(Net::HTTPSuccess) data else {} end end |
.resolve_channel(channelid) ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/server-bridge.rb', line 64 def self.resolve_channel(channelid) uri = URI("#{host}/conversations.info/#{channelid}") res = Net::HTTP.get_response(uri) begin data = JSON.parse(res.body) if res.is_a?(Net::HTTPSuccess) data.dig("channel", "name") || "unknown" else "unknown" end rescue "unavailable" end end |
.resolve_emoji(id) ⇒ Object
13 14 15 16 17 18 19 20 21 22 |
# File 'lib/server-bridge.rb', line 13 def self.resolve_emoji(id) uri = URI("#{host}/emoji/#{id.strip}") res = Net::HTTP.get_response(uri) if res.is_a?(Net::HTTPSuccess) res.body else DEFAULT_EMOJI end end |
.resolve_username(userid) ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/server-bridge.rb', line 36 def self.resolve_username(userid) uri = URI("#{host}/users.info/#{userid}") res = Net::HTTP.get_response(uri) begin data = JSON.parse(res.body) if res.is_a?(Net::HTTPSuccess) data.dig("user", "name") || "unknown" else "unknown" end rescue "unavailable" end end |