Nick Hey, when you open a website like Google, your computer is sending a request to your router, which then forwards it to the web server (simplified). So then when the web server sends an answer, your router can know that this is an answer to a request from your computer and send the traffic to the right machine inside your LAN. But with push messages, they just arrive at your router, and it doesn't know which machine to send them to. That's why it could help to setup port forwarding. This will make it so that if packets arrive at a specific port or port range, the router will forward them to a specific machine in your LAN automatically.
Basically what @Wessel meant with "Are you running on a public IP?" is wether you are behind a router (with NAT) or not. Most likely you are, and in this case my above explanation applies. Of course if you're not using a router, but your machine is connected directly to the internet, then all packets always arrive.
Hope this was understandable. If you have no luck setting up the port forwarding with MiniUPnP, then maybe doing it manually in your router settings could work more reliably.