mtomwing / pickups

IRC gateway for hangups
MIT License
73 stars 25 forks source link

Compatability with Hangups 0.3 #9

Closed NickHu closed 8 years ago

NickHu commented 9 years ago

Pickups does not seem to be compatible with Hangups 0.3, as per this stack trace:

INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): accounts.google.com
INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): accounts.google.com
INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): www.google.com
INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): www.google.co.uk
INFO:pickups.server:Waiting for hangups to connect...
Traceback (most recent call last):
  File "/usr/lib64/python3.5/runpy.py", line 170, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib64/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/home/nick/pickups/__main__.py", line 25, in <module>
    Server(cookies, args.ascii_smileys).run(args.address, args.port)
  File "/home/nick/pickups/server.py", line 26, in run
    loop.run_until_complete(self._hangups.connect())
  File "/usr/lib64/python3.5/asyncio/base_events.py", line 342, in run_until_complete
    return future.result()
  File "/usr/lib64/python3.5/asyncio/futures.py", line 274, in result
    raise self._exception
  File "/usr/lib64/python3.5/asyncio/tasks.py", line 237, in _step
    result = coro.throw(exc)
  File "/opt/hangups/lib/python3.5/site-packages/hangups/client.py", line 99, in connect
    yield from self._listen_future
  File "/usr/lib64/python3.5/asyncio/futures.py", line 385, in __iter__
    yield self  # This tells Task to wait for completion.
  File "/usr/lib64/python3.5/asyncio/tasks.py", line 288, in _wakeup
    value = future.result()
  File "/usr/lib64/python3.5/asyncio/futures.py", line 274, in result
    raise self._exception
  File "/usr/lib64/python3.5/asyncio/tasks.py", line 239, in _step
    result = coro.send(value)
  File "/opt/hangups/lib/python3.5/site-packages/hangups/channel.py", line 214, in listen
    yield from self._longpoll_request()
  File "/opt/hangups/lib/python3.5/site-packages/hangups/channel.py", line 343, in _longpoll_request
    yield from self._on_push_data(chunk)
  File "/opt/hangups/lib/python3.5/site-packages/hangups/channel.py", line 364, in _on_push_data
    yield from self.on_connect.fire()
  File "/opt/hangups/lib/python3.5/site-packages/hangups/event.py", line 50, in fire
    yield from gen
  File "/opt/hangups/lib/python3.5/site-packages/hangups/event.py", line 48, in fire
    gen = observer(*args, **kwargs)
TypeError: _on_hangups_connect() missing 1 required positional argument: 'initial_data'
ERROR:asyncio:Unclosed response
client_response: <ClientResponse(https://0.client-channel.google.com/client-channel/channel/bind?TYPE=xmlhttp&VER=8&gsessionid=*SNIP*&CI=0&SID=*SNIP*&RID=rpc&t=1&ctype=hangouts) [200 OK]>
<CIMultiDictProxy {'CACHE-CONTROL': 'no-cache, no-store, max-age=0, must-revalidate', 'PRAGMA': 'no-cache', 'EXPIRES': 'Fri, 01 Jan 1990 00:00:00 GMT', 'DATE': 'Fri, 02 Oct 2015 13:32:52 GMT', 'CONTENT-TYPE': 'text/plain; charset=utf-8', 'TRANSFER-ENCODING': 'chunked', 'X-CONTENT-TYPE-OPTIONS': 'nosniff', 'X-XSS-PROTECTION': '1; mode=block', 'SERVER': 'GSE', 'ALTERNATE-PROTOCOL': '443:quic,p=1', 'ALT-SVC': 'quic=":443"; p="1"; ma=604800'}>