Class: Puppeteer::WebSocket
- Inherits:
-
Object
- Object
- Puppeteer::WebSocket
show all
- Defined in:
- lib/puppeteer/web_socket.rb
Overview
Defined Under Namespace
Classes: DriverImpl, TransportError
Constant Summary
collapse
- STATE_CONNECTING =
0
- STATE_OPENED =
1
- STATE_CLOSING =
2
- STATE_CLOSED =
3
Instance Method Summary
collapse
Constructor Details
#initialize(url:, max_payload_size:) ⇒ WebSocket
Returns a new instance of WebSocket.
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# File 'lib/puppeteer/web_socket.rb', line 55
def initialize(url:, max_payload_size:)
@impl = DriverImpl.new(url)
@driver = ::WebSocket::Driver.client(@impl, max_length: max_payload_size)
@driver.('User-Agent', "Puppeteer #{Puppeteer::VERSION}")
setup
@driver.start
Thread.new do
wait_for_data until @ready_state >= STATE_CLOSING
rescue EOFError
if @ready_state < STATE_CLOSING
handle_on_close(reason: 'Going Away', code: 1001)
end
end
end
|
Instance Method Details
#close(code: 1000, reason: "") ⇒ Object
106
107
108
109
110
|
# File 'lib/puppeteer/web_socket.rb', line 106
def close(code: 1000, reason: "")
return if @ready_state >= STATE_CLOSING
@ready_state = STATE_CLOSING
@driver.close(reason, code)
end
|
#on_close(&block) ⇒ Object
117
118
119
|
# File 'lib/puppeteer/web_socket.rb', line 117
def on_close(&block)
@on_close = block
end
|
#on_error(&block) ⇒ Object
122
123
124
|
# File 'lib/puppeteer/web_socket.rb', line 122
def on_error(&block)
@on_error = block
end
|
#on_message(&block) ⇒ Object
126
127
128
|
# File 'lib/puppeteer/web_socket.rb', line 126
def on_message(&block)
@on_message = block
end
|
#on_open(&block) ⇒ Object
112
113
114
|
# File 'lib/puppeteer/web_socket.rb', line 112
def on_open(&block)
@on_open = block
end
|
#send_text(message) ⇒ Object
101
102
103
104
|
# File 'lib/puppeteer/web_socket.rb', line 101
def send_text(message)
return if @ready_state >= STATE_CLOSING
@driver.text(message)
end
|