Comment 10 for bug 626023

Revision history for this message
Gabriel Samfira (gabriel-samfira) wrote :

Looks like its a combination of 2 problems.

The first problem is that gwibber doesn't use the correct Authentication URL with google. I think it uses:

https://www.google.com/buzz/api/auth/OAuthAuthorizeToken?oauth_token=1%2FyBdQhWBIzyTWeSIgrVk612mqotnL3N99BbZa7VFNm-E&domain=gwibber.com&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fbuzz.readonly

when it should be using:

https://www.google.com/buzz/api/auth/OAuthAuthorizeToken?oauth_token=1%2FyBdQhWBIzyTWeSIgrVk612mqotnL3N99BbZa7VFNm-E&domain=anonymous&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fbuzz.readonly

The second problem is in:

/usr/lib/python2.6/dist-packages/gwibber/microblog/buzz.py

at line 63:

m["text"] = data["object"]["content"]

I changed this line in:

    try:
        m["text"] = data["object"]["content"]
    except:
        m["text"] = "None"

After authorizing gwibber using:

https://www.google.com/buzz/api/auth/OAuthAuthorizeToken?oauth_token=1%2FyBdQhWBIzyTWeSIgrVk612mqotnL3N99BbZa7VFNm-E&domain=anonymous&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fbuzz.readonly

and changing that line (i KNOW there is a better way to change that line) my buzz feeds apeared in gwibber.

Here is the output of gwibber-service -d -o after the above mentioned modiffications:

$ gwibber-service -d -o
Gwibber Dispatcher: DEBUG Setting up monitors
Gwibber Dispatcher: DEBUG Refresh interval is set to 15
Gwibber Dispatcher: DEBUG ** Starting Refresh - 2010-10-08 14:57:07.48 **
Gwibber Dispatcher: DEBUG <buzz:receive> Performing operation
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/network.py", line 58, in __init__
    self.curl.perform()
error: (56, 'GnuTLS recv error (-9): A TLS packet with unexpected length was received.')
Gwibber Dispatcher: ERROR Failed to communicate with https://www.googleapis.com/buzz/v1/activities/@me/@consumption?oauth_nonce=23280862&oauth_timestamp=1286539027&oauth_consumer_key=anonymous&oauth_signature_method=HMAC-SHA1&oauth_version=1.0&oauth_token=1%2FKxCofyKUiE_d1x7GOJq7vxN7f_plG-hSMbTIoqfMBpU&oauth_signature=h2EXS6Nwp38eGA809XAqxbqkA9E%3D&alt=json
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Adding record
Gwibber Dispatcher: DEBUG <buzz:receive> Finished operation
Gwibber Dispatcher: INFO Loading complete: 1 - []

The only way o got rid of:

error: (56, 'GnuTLS recv error (-9): A TLS packet with unexpected length was received.')

was by recompiling libcurl and pycurl without GnuTLS. That does not seem to matter though, as Buzz works with stock libcurl.

Hope this helps!