本文整理汇总了Python中ws4py.client.WebSocketBaseClient类的典型用法代码示例。如果您正苦于以下问题:Python WebSocketBaseClient类的具体用法?Python WebSocketBaseClient怎么用?Python WebSocketBaseClient使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了WebSocketBaseClient类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: reconnect
def reconnect(self):
# Instead of trying to reconnect in a retry loop with backoff, run an API call that will do the same
# and block while it retries.
time.sleep(1)
dxpy.describe(self.job_id)
WebSocketBaseClient.__init__(self, self.url, protocols=None, extensions=None)
self.connect()
示例2: __init__
def __init__(self, url, protocols=None, extensions=None,
io_loop=None, ssl_options=None, headers=None):
"""
.. code-block:: python
from tornado import ioloop
class MyClient(TornadoWebSocketClient):
def opened(self):
for i in range(0, 200, 25):
self.send("*" * i)
def received_message(self, m):
print((m, len(str(m))))
def closed(self, code, reason=None):
ioloop.IOLoop.instance().stop()
ws = MyClient('ws://localhost:9000/echo', protocols=['http-only', 'chat'])
ws.connect()
ioloop.IOLoop.instance().start()
"""
WebSocketBaseClient.__init__(self, url, protocols, extensions,
ssl_options=ssl_options, headers=headers)
if self.scheme == "wss":
self.sock = ssl.wrap_socket(self.sock, do_handshake_on_connect=False, **self.ssl_options)
self.io = iostream.SSLIOStream(self.sock, io_loop, ssl_options=self.ssl_options)
else:
self.io = iostream.IOStream(self.sock, io_loop)
self.io_loop = io_loop
示例3: __init__
def __init__(self, url, protocols=None, extensions=None, ssl_options=None):
"""
WebSocket client that executes the
:meth:`run() <ws4py.websocket.WebSocket.run>` into a gevent greenlet.
.. code-block:: python
ws = WebSocketClient('ws://localhost:9000/echo', protocols=['http-only', 'chat'])
ws.connect()
ws.send("Hello world")
def incoming():
while True:
m = ws.receive()
if m is not None:
print str(m)
else:
break
def outgoing():
for i in range(0, 40, 5):
ws.send("*" * i)
greenlets = [
gevent.spawn(incoming),
gevent.spawn(outgoing),
]
gevent.joinall(greenlets)
"""
WebSocketBaseClient.__init__(self, url, protocols, extensions, ssl_options=ssl_options)
self._th = Greenlet(self.run)
self.messages = Queue()
"""
示例4: test_connect_and_close
def test_connect_and_close(self, sock):
s = MagicMock()
sock.socket.return_value = s
sock.getaddrinfo.return_value = [(socket.AF_INET, socket.SOCK_STREAM, 0, "",
("127.0.0.1", 80, 0, 0))]
c = WebSocketBaseClient(url="ws://127.0.0.1/?token=value")
s.recv.return_value = b"\r\n".join([
b"HTTP/1.1 101 Switching Protocols",
b"Connection: Upgrade",
b"Sec-Websocket-Version: 13",
b"Content-Type: text/plain;charset=utf-8",
b"Sec-Websocket-Accept: " + b64encode(sha1(c.key + WS_KEY).digest()),
b"Upgrade: websocket",
b"Date: Sun, 26 Jul 2015 12:32:55 GMT",
b"Server: ws4py/test",
b"\r\n"
])
c.connect()
s.connect.assert_called_once_with(("127.0.0.1", 80))
s.reset_mock()
c.close(code=1006, reason="boom")
args = s.sendall.call_args_list[0]
f = Frame()
f.parser.send(args[0][0])
f.parser.close()
self.assertIn(b'boom', f.unmask(f.body))
示例5: __init__
def __init__(self, url, protocols=None, extensions=None, heartbeat_freq=None,
ssl_options=None, headers=None):
"""
.. code-block:: python
from ws4py.client.threadedclient import WebSocketClient
class EchoClient(WebSocketClient):
def opened(self):
for i in range(0, 200, 25):
self.send("*" * i)
def closed(self, code, reason):
print(("Closed down", code, reason))
def received_message(self, m):
print("=> %d %s" % (len(m), str(m)))
try:
ws = EchoClient('ws://localhost:9000/echo', protocols=['http-only', 'chat'])
ws.connect()
except KeyboardInterrupt:
ws.close()
"""
WebSocketBaseClient.__init__(self, url, protocols, extensions, heartbeat_freq,
ssl_options, headers=headers)
self._th = threading.Thread(target=self.run, name='WebSocketClient')
self._th.daemon = True
示例6: connect
def connect(self):
"""
Connects to the server.
"""
try:
WebSocketBaseClient.connect(self)
except OSError:
raise
except Exception as e:
log.error("could to connect {}: {}".format(self.url, e))
raise OSError("Websocket exception {}: {}".format(type(e), e))
# once connected, get the GNS3 server version (over classic HTTP)
url = "http://{host}:{port}/version".format(host=self.host, port=self.port)
content = urllib.request.urlopen(url).read()
try:
json_data = json.loads(content.decode("utf-8"))
self._version = json_data.get("version")
except ValueError as e:
log.error("could not get the server version: {}".format(e))
#FIXME: temporary version check
if (self._version != __version__):
self.close_connection()
raise OSError("GUI version {} differs with the server version {}".format(__version__, self._version))
示例7: __init__
def __init__(self, currency, apiKey, apiSecret):
currencies = [currency]
url = 'ws://websocket.mtgox.com/mtgox?Currency=%s' % (",".join(currencies))
WebSocketBaseClient.__init__(self, url)
self.__nonce = None
self.__apiKey = apiKey
self.__apiSecret = apiSecret
示例8: __init__
def __init__(self, url, protocols=None, extensions=None, io_loop=None):
WebSocketBaseClient.__init__(self, url, protocols, extensions)
if self.scheme == "wss":
self.sock = ssl.wrap_socket(self.sock, do_handshake_on_connect=False)
self.io = iostream.SSLIOStream(self.sock, io_loop)
else:
self.io = iostream.IOStream(self.sock, io_loop)
self.sender = self.io.write
self.io_loop = io_loop
示例9: close_connection
def close_connection(self):
"""
Closes the connection to the server and remove the monitoring by
the QSocketNotifier.
"""
self._connected = False
WebSocketBaseClient.close_connection(self)
self.fd_notifier.setEnabled(False)
示例10: connect
def connect(self):
"""
Connects to the server.
"""
try:
WebSocketBaseClient.connect(self)
except HandshakeError as e:
log.error("could to connect {}: {}".format(self.url, e))
raise OSError(str(e))
示例11: __init__
def __init__(self, url, sock=None, protocols=None, version='8'):
WebSocketBaseClient.__init__(self, url, protocols=protocols, version=version)
if not sock:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)
sock.settimeout(3)
self.sock = sock
self.running = True
self._lock = threading.Lock()
self._th = threading.Thread(target=self._receive)
示例12: __init__
def __init__(self, url, protocols=None, extensions=None, io_loop=None,custom_headers=[]):
WebSocketBaseClient.__init__(self, url, protocols, extensions, custom_headers)
parts = urlsplit(self.url)
if parts.scheme == "wss":
self.sock = ssl.wrap_socket(self.sock,
do_handshake_on_connect=False)
self.io = iostream.SSLIOStream(self.sock, io_loop)
else:
self.io = iostream.IOStream(self.sock, io_loop)
self.sender = self.io.write
self.io_loop = io_loop
示例13: _connect
def _connect(self):
"""
Connect to the server.
"""
try:
WebSocketBaseClient.connect(self)
except OSError:
raise
except Exception as e:
log.error("could to connect {}: {}".format(self.url, e))
raise OSError("Websocket exception {}: {}".format(type(e), e))
示例14: __init__
def __init__(self, url, protocols=None, extensions=None, heartbeat_freq=None,
ssl_options=None, headers=None):
WebSocketBaseClient.__init__(self, url, protocols, extensions, heartbeat_freq,
ssl_options, headers=headers)
self.callbacks = {}
self._connected = False
# create an unique ID
self._id = WebSocketClient._instance_count
WebSocketClient._instance_count += 1
示例15: close_connection
def close_connection(self):
"""
Closes the connection to the server and remove the monitoring by
the QSocketNotifier.
"""
self._connected = False
self._version = ""
WebSocketBaseClient.close_connection(self)
if self._fd_notifier:
self._fd_notifier.setEnabled(False)
self._fd_notifier = None
log.info("connection closed with server {}:{}".format(self.host, self.port))