Category Archives: Letters

Pushbullet Logo

Debugging Issues with Pushbullet and Google Play Services

Background

I’m posting this because every day there’s a new post on /r/pushbullet about people not getting their Pushbullet messages until they open the Pushbullet app.  There’s a number of reasons that this issue can arise, some of them are unrelated to Pushbullet itself, but will cause the symptoms, some are related to Pushbullet though no definitive answer has been found for this yet.  This article will help you to diagnose issues unrelated to Pushbullet – if following the steps and suggestions don’t help then escalating to Pushbullet’s support would be a good next step.

To kick off this article, I’ll explain briefly how push notifications work for most applications, but not all on Android.  Almost every Android phone out there has Google Play Services installed.  This “App” is pre-installed on your phone and is the support library that all Google Apps and many others rely on.  One of it’s many jobs is to provide the “Google Cloud Messaging” (GCM) service.

This, very simply, allows a server/service hosted somewhere to send a message to Google, and Google will then, using GCM, push a message to the user’s phone.

The reason that GCM is so useful is that apps can register with it when they’re installed.  This means that each app doesn’t have to have it’s own network/infrastructure for pushing messages to your phone, but rather there is a single push service on your phone that all apps can use.  This helps with battery life and means that App developers can focus on writing apps, not having to also host and maintain a network dedicated to pushing messages to phones. It also means your phone only has to have one network connection open to get push messages, instead of each app having to keep a network connection open, which is a drain on resources and battery life.

The Problem

Now the problem comes about with Pushbullet when it doesn’t get messages from GCM.  These messages should “Wake it up” so that you instantly get the push on your phone.

But if Pushbullet doesn’t get the GCM notification, it has no idea that anything new has happened.  It only realises when you open the app and it Sets up it’s own connection to the Pushbullet Servers and gets the latest notifications.  In fact, that’s all a GCM message is, a message to say “Hey, wake up and check your server for the message waiting for you, Pushbullet”.

So if this isn’t working for you, there’s a few things you can do to debug (and hopefully resolve) the issues so that your Pushbullet app starts working as you expect.  Depending on the problem, you might find other apps you didn’t even realise were lagging seem to be a lot faster too!

Debugging Google Play Services

Thankfully, Google have included a way to find out the status of Google Play Services and whether or not it has an active connection to the GCM services.  Type the following code into your dialer and you’ll open up the Google Play Services status page:

Dialer Debug Code
*#*#426#*#*

You will open up a screen that looks like this:

GCM Connected

GCM Connected

Notice the following things about this image:

Device ID: The Device ID that Google has assigned your device.
Connected: This is the key we’re looking for! We want to see that it says connected and a lot of information about how it’s connected.

This is what a bad/broken/non-working GCM screen looks like:

GCM Disconnected

GCM Disconnected

What follows is a list of  reasons (and some workarounds/fixes) as to why Google Play Services might not have a connection…

Why doesn’t it work?

IPv6 is enabled. For me, IPv6 works fine. But for a lot if people, if their router/WiFi is giving them an IPv6 connection, but it’s not properly routed, then it won’t work. But for reasons unknown, Google will keep trying to use the IPv6 connection, even though it’s broken. Sadly on Android the only way to disable IPv6 is via root methods, there is no simple way for a non-rooted person to do it. The best option if you’re not rooted is to disable the router/WiFi you’re connected to from giving you an IPv6 address. Of course if you’re at work etc then getting the IT people to do this is probably an impossible task.

The GCM Ports are Firewalled. This is less likely, but certainly possible if your work environment only allows port 80/443 out.  GCM uses TCP Port 5228 (The standard Jabber Port!), but it can also sometimes use TCP Port 5229 and 5230.  If these ports are blocked, you won’t get a stable GCM connection.

Your Firewall has dumb sessions timeout. I’m not sure how valid this one is with later versions of GCM, but if you have a firewall that times out TCP sessions after 5 minutes, you could well have issues with GCM which only sends keepalives every ~29 minutes (This is not confirmed yet).

The Fixes

Use Mobile data (disable WiFi).

Annoying, but great as a quick workaround to see if it fixes the problem.

Run a VPN.

This is what I did at a place of employment where IPv6 was broken. The VPN gives your phone a IPv4 only address and Google Play Services will connect via it and work fine.

Is GCM not the issue?

If you’ve looked at the above but you’re finding that you’re still missing push messages, one “fix” is to uninstall and re-install Pushbullet.  Why this is required is still under investigated by the PB devs.  A way to test if only Pushbullet is affected is to get someone to send you a test Google Hangouts message, or to send yourself a Gmail (has to be Gmail, not an IMAP account).  These both notify your phone of a new message by using GCM.  If you’re getting Gmail/Hangouts notifications instantly with no delay, but getting delays with Pushbullet, then the issue isn’t GCM and something else is wrong.  Might be time to contact the PB Devs and see if there’s any information you can give them to help debug the issue.

Good luck!

Fingers Crosssed

Hello,

I am writing to kindly ask that my $1 “Other ATM” fee this morning be refunded. I had to go to the smelly Westpac ATM because the ASB ATM in Taradale was out of service.

I trust you will see kindness in your heart and realise that I would be much better to spend that $1 on a Mars Bar for a morning snack.

Yours in a dislike of Fees,

Tim

Update: I got my $1 back.

Chicken Costumes

From: Tim Harman [mailto:tim@muppetz.com]
Sent: Sunday, 10 August 2014 9:37 p.m.
To: Info
Subject: Winning Wheel Question

Hello There!

I have a question which I am hoping you can answer for me.

Tonight my wife and I were discussing what is/isn’t allowed when it comes to being
on the “Winning Wheel” segment. The conversation arose because I expressed my
desire to wear a large chicken costume and do nothing but cluck through the whole
segment, if we were so lucky as to win a spot on the segment.

My wife, being the smarter of the two of us, said that there’s no way she’d let me
wear a chicken costume and/or cluck, and that NZ Lotto almost certainly wouldn’t
allow someone to dress up as a chicken anyway.

So my question is: What are “the rules” around the Winning Wheel segment?
Can a contestant wear a large chicken suit if they so desire?

Many Thanks,

Tim Harman
———————————————————————————–
Hi Tim,

Thank you for your enquiry.

While we have guidelines we follow during filming to ensure the integrity of our
products, we remain flexible as each winner’s story is very different.

There is no current ruling on wearing chicken suits.

Thanks for taking the time to write to us and good luck with your tickets.

Best regards,
<name removed>
Corporate Communications Advisor

PO Box 8929, Symonds Street, Auckland 1150
73 Remuera Road, Remuera, Auckland 1050, New Zealand

lottonz.co.nz

Would You? Would you really?

—–Original Message—–
From: Tim Harman [mailto:tim@muppetz.com]
Sent: Tuesday, 26 November 2013 9:11 p.m.
To: info
Subject: Would you? Would You Really?

Hi!

Every time I get down your packet of cones from the top shelf of our pantry, I see the little message on the side that says “We’d love to hear from you” and I always think to myself “Would they? Would they LOVE to hear from me?”. Then I make an Icecream, slide the cones back up onto the top shelf and think to myself “I should ask them that one day”

So I guess this me asking “Would you really love to hear from me?”

Look at it from my point of view: I’m a 37 yo man. I work in IT, doing network designs (You’ve probably fallen alseep by now, right?) I don’t even _eat_ the icecream cones, I make them for my wife. She loves Goody Goody gumdrops. (I’m not so sure myself, I’m more of a plain old chocolate icecream guy myself.) I just don’t think there’s that much about me worth hearing about, at least in the context of Icecream Cones.

Anyway, I hope you have loved hearing from me? If you haven’t, I would suggest updating the wording on future packets to say something like “We might like to hear from you, but only if it’s Icecream related”. Though that probably wouldn’t fit on the box as easily.

Yours in a love of having burning questions answered,

Tim

PS: At least I have enjoyed writing to you! 🙂

——————————————–

To: tim@muppetz.com

Hi Tim!

Thanks for asking a great question. I hope I can offer a satisfactory answer to you.

Absolutely!

There are a few reasons why we really do love to hear from people.

I am sure you can appreciate the value in receiving feedback on our products. We learn what people enjoy about our cones and sometimes we
get ideas for new cones coming through too.

But most importantly, and simply, is that it subsequently provides us with an opportunity to personally thank people for choosing our
products.

Your family may have been purchasing our cones for years without us knowing about it.
But now, since you took the time to make contact, we can finally say it – thank you for choosing our products!!

Tim, have a great Summer. Enjoy some chocolate ice-cream (perhaps even in a cone!) and next time you pick one of our products off the shelf you’ll know that we appreciate you making that choice.

Thanks again and best regards,

Mike Dephoff
General Manager
Tawse Foods Ltd

PS – I’m more of a coffee ice-cream guy 🙂