Guest User

Untitled

a guest
Jul 22nd, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. #!/usr/bin/env ruby
  2. require 'eventmachine'
  3. require 'websocket-eventmachine-client'
  4.  
  5. EM.run do
  6. ws = WebSocket::EventMachine::Client.connect(:host => 'irc-ws.chat.twitch.tv', :port => 80, :ssl => false)
  7.  
  8. ws.onopen do
  9. puts "Connected"
  10. ws.send "CAP REQ :twitch.tv/tags twitch.tv/commands twitch.tv/membership"
  11. ws.send "NICK justinfan#{rand(100000..999999)}"
  12.  
  13. ws.send "JOIN #dwangoac"
  14. end
  15.  
  16. ws.onmessage do |msg, type|
  17. if msg.include?('PING') == true
  18. puts "Received message: #{msg.strip}"
  19. ws.send "PONG :tmi.twitch.tv"
  20. ws.pong
  21. else
  22. puts "Received message: #{msg.strip}"
  23. end
  24.  
  25. end
  26.  
  27. ws.onclose do |code, reason|
  28. puts "Disconnected with status code: #{code} #{reason}"
  29.  
  30. end
  31.  
  32. ws.onerror do |error|
  33. puts "Error: #{error}"
  34.  
  35. end
  36.  
  37. ws.onping do |message|
  38. puts "Ping received: #{message}"
  39. ws.pong "PONG :tmi.twitch.tv"
  40. end
  41.  
  42. ws.onpong do |message|
  43. puts "Pong sent: #{message}"
  44. end
Add Comment
Please, Sign In to add comment