Configuring Google Push for Android Phones
pixel500w-500x1
Zero Admin
With the new Dashboard
pixel500w-500x1
Bulletproof Security
With SSL certs and NGINX
pixel500w-500x1
Install on $100 Appliance
Intel MiniPC architecture
pixel500w-500x1
New, Intuitive Windows Client
More themes, more UC
pixel500w-500x1
More CRM Integrations
Scripting Interface to add your own
pixel500w-500x1
Improved Integrated Web Conferencing
iOS and Android apps included
pixel500w-500x1
Personal Click2Meet URLs

Configuring Google Push for Android Phones

Configuring Google Push

Configuring Google Push

Introduction

Step 1: Create Google API Project

Step 2: Configure 3CX Phone System for Android Push Notifications

Step 3: Firewall configuration

For 3CX Phone System

Introduction

The 3CX client uses PUSH technology to wake up the smartphone when a call is received. This does not require the user to keep the phone active to be able to receive calls – the phone can be in sleep mode to save battery life.

In order to leverage PUSH technology you need to setup a Google account with PUSH. This step must be performed BEFORE you deploy the 3CX client as the Google API key and project ID are required in order for 3CX to send push requests to the smartphones.

Step 1: Create Google API Project

  1. Login to your Gmail Account.

  1. Follow this link to go to the new Google Developer Console Page: https://console.developers.google.com/project/. Click “Create Project” to create your Google push project.

  1. Give your project a name example “3CXPBXPUSH”. Click on “Show advanced options” choose a location that is closest to you and click “Create”. Be patient as it will take a few seconds.

 

  1. In the search box on the library page type in “gcm” and press enter.

  1. Then click  “Google Cloud Messaging”.

  1. Click “Enable”.

  1. Then click “Go to Credentials”

  1. Choose “Google Cloud Messaging” from ‘Which API are you using and from the Where will you be calling the API’, from drop down menu choose “Other UI (e.g. Windows, CLI tool)”. Then click “What credentials do i need”.

  1. Click “Restrict” key and choose “IP addresses”.

  1. Enter the Public IP address of your network that the PBX is behind and press Save”.

  1. Your API Key will be generated. Copy it and save it to be placed inside the API Key Text box (3CX Management Console > Settings > 3CXPhone > API Key section). Then click Done.

  1. Click the dropdown menu lines in the top right side of the page and click the “Project settings” button.

  1. From the “Project 3CXPBXPUSH” locate the “Project Number”. (for example 793510222615). Copy this number and save it so as to place it inside the project number text box within the “3CX Management Console > Settings > 3CXPhone > Push” section.

Step 2: Configure 3CX Phone System for Android Push Notifications

  1. Login to the 3CX Management console.
  2. Navigate to “Settings” > “3CXPhone”.
  3. Enter the API Key you generated earlier in the API Key field.
  4. Enter the Project number in the Project number field.
  5. Press “OK”.
  6. Restart all Android Smartphone clients so they re-provision and take the latest settings.

Note: By default all users are enabled to receive PUSH messages. If you want to disable PUSH for some users, click on “Extensions > edit extension > Phone Provisioning” tab, and uncheck the option “Enable PUSH for Smartphones” under the “Network” section.

Step 3: Firewall configuration

For 3CX Phone System

In order to successfully deliver Push messages to Android phones, 3CX Phone System must be allowed to send outbound messages via TCP on port 443 towards “android.googleapis.com” which is the URL for “Google Cloud Messaging” servers.

Important: Normally Inside to Outside traffic is allowed and trusted by a standard firewall. However some company firewalls are very strict and you might need to allow this specific traffic to exit. Do not base the firewall rule on “android.googleapis.com’s” IP Address because when the IP changes PUSH will stop to work.

For Android Phones

In order to receive Push messages within a corporate wifi network, Android Phones must be allowed to connect outbound via TCP port 443 to android.googleapis.com. If 443 is blocked, ports 5228, 5229 and 5230 will be used.

Important: Google does not provide specific IPs, therefore the destination should be set to “any”.

You might also be interested in:


Ask a Question

Please only post questions in regards to the document you are currently reading.
Technical support or pre sales questions must be posted via the support or sales channels and such comments will be deleted. Thank you for understanding

Leave a Reply

  1. Zafiris

    How can I be sure that the Push service and all the settings are working?
    The clients just need reprovision or more setting have to be made?

    July 11, 2015 at 2:16 pm Reply
    • Charalambos Eleftheriou

      @Zafris, Yes after you have set up Google Push and have applied the settings in the management console, make sure that the users who require push are enabled. Then re-send them the provisioning email to re-provision their phones.Thanks

      July 11, 2015 at 6:44 pm
    • @Zafiris – It is important that first you configure push, and THEN you send the provisioning welcome email. Otherwise the welcome email will not contain the important ID that makes push work for the smartphones.

      July 15, 2015 at 9:07 am
  2. Erik

    Just to sanity check the firewall settings..

    We ONLY need to allow OUTBOUND connections from the 3CX server to the GCM ports, correct? So in a “less secure” environment where all outgoing connections are allowed, there’s no firewall rule required, if I understand things correctly.

    August 25, 2015 at 6:42 pm Reply
    • Charalambos Eleftheriou

      @Erik, thanks for the question. This is correct. If you have opened your firewall to allow all outgoing traffic from your 3CX Phone System then no further configuration is needed.

      August 25, 2015 at 7:56 pm
    • Hi Guys,

      please can you add that info to the tech article on setting up the firewall (that its outbound only). It would be helpful for others.

      GREAT work on this.

      Nick

      September 29, 2015 at 6:06 pm
    • Actually…. you might also add the bit about having to reprovision config files and send out to the people. Fixed it for me as well.

      Thanks!

      September 29, 2015 at 6:11 pm
  3. i set all up. On the Android Phone is written “Push enabled”.
    I left the app to check, if push works…

    Now when i am on our Internal WLAN –> The caller gets the busy Signal.
    When i’m not on a WLAN –> Only the Hardphone rings, the mobile doesn’t.

    I testet also the apple push. There, the call is pushed if the incoming call Comes from our company.
    But from an external Phonenumber, only the Hardphone rings, the mobile doesn’t.

    The activity Log says:
    (called while not on WLAN):
    04-Sep-2015 15:57:59.415 Call to T:Extn:278@[Dev:sip:278@127.0.0.1:5488;rinstance=80ac061af7523703,Dev:sip:278@192.168.200.223:5062] from L:320.1[Extn:213] failed, cause: Cause: 480 Temporarily Unavailable/INVITE from 127.0.0.1:5488

    (called while on WLAN):
    04-Sep-2015 15:59:10.517 Call to T:Extn:278@[Dev:sip:278@127.0.0.1:5488;rinstance=80ac061af7523703,Dev:sip:278@192.168.200.223:5062] from L:322.1[Extn:213] failed, cause: Cause: 480 Temporarily Unavailable/INVITE from 127.0.0.1:5488

    Any help? Would be great!!!

    September 4, 2015 at 5:00 pm Reply
  4. Jeff Hind

    I got the push configured and it wakes up the Galaxy GS4 phone and we can see the extension number (no extension name) but when I press answer nothing happens. It keeps ringing on the calling end but can’t be answered on the cell phone side. Thoughts?

    September 24, 2015 at 1:02 am Reply
    • Charalambos Eleftheriou

      @Jeff, thanks for the question. This sounds like a firewall issue. Make sure the required ports are open and forwarded to your 3CX Phone System server. Please see this guide for more details: http://www.3cx.com/docs/firewall-router-configuration-voip/. For further information you can open a ticket with our technical support team, if you have a support contract, or contact your reseller.

      September 24, 2015 at 10:04 am
  5. Richard

    Daft question – do you need to set up a new Project for every 3CX server, or can we use the one Google API?

    October 23, 2015 at 11:22 pm Reply
    • Charalambos Eleftheriou

      @Richard, thanks for the question. It is best to set up a new project for each server. You can set up multiple projects under one Google account.

      October 26, 2015 at 4:33 pm
  6. Sergio Diaz

    Dear sirs,

    Is the firewall that guards the XXX.pbx.3cx.us hosted Cloud PBX’s configured to allow PUSH to Android?

    Thank you in advance,

    Sergio

    November 4, 2015 at 11:10 pm Reply
    • Charalambos Eleftheriou

      @Sergio, thanks for the question. Push notifications are actually sent straight from the Google servers to you mobile. 3CX Phone system sends out a request to the Google push servers, using the ports specified, for them to send you the notification. All firewall rules are configured.

      November 5, 2015 at 12:11 am
  7. Barath

    If we are installing the system for communication with in the LAN with Wifi, where internet is not available (no communication with outside world)(highly secure project), how to activate the PUSH system.

    December 29, 2015 at 1:02 pm Reply
    • Charalambos Eleftheriou

      @Barath, thanks for the question. The Push feature requires the internet to operate. Also please be aware that in order to activate a 3CX licence an internet connection is also required.

      January 4, 2016 at 3:53 pm
  8. The Google API setup flow has changed considerably. The current URL is https://console.developers.google.com. There is no “Cloud Messaging for Android”; now it’s just “Google Cloud Messaging.” Credentials are set up differently: you have to tell it where you are calling the API from (I assume it’s from “Other UI (e.g. Windows, CLI tool)” which gives you a “Server” type key). The Project number is difficult to find–you have to click on the three vertical dots in the upper right corner and choose Project information.

    March 31, 2016 at 3:08 am Reply
    • Hi, We will review the doc again. It keeps changing continuously unfortunately. We are looking for a way to automate it but not found options so far…

      March 31, 2016 at 7:12 am
  9. Hi, I am not able to send welcome mail to my clients. Need your help on that one

    July 1, 2016 at 3:21 pm Reply
    • Charalambos Eleftheriou

      Thanks for the question. Unfortunately due to the limitation of these in page comments we are unable to offer direct support for issues that require investigation to resolve. Please contact your 3CX reseller/partner or distributor to open a ticket with our support team or you can even purchase a support contract so that you can contact support yourself then we can have look into this for you as it sounds like a configuration issue on your side. You can also post in our user forums, Please find our forums here: http://www.3cx.com/forums/. You may also follow this guide to set up your mail server in the PBX: http://www.3cx.com/blog/docs/gmail-mail-server/

      July 1, 2016 at 4:32 pm
  10. Dennis

    Hi Can you please update this guide as i have no idea how to proceed now that Google has changed everything once you click “Mobile API’s” “Google Cloud Messaging”

    Thank you

    August 25, 2016 at 1:13 pm Reply
    • Charalambos Eleftheriou

      @Dennis, Can you please check again as this has been done..

      August 25, 2016 at 6:13 pm
  11. Pete Eaglesfield

    Despite previous comments, this article still doesn’t seem to refer to the current state of affairs with Google. Once I press the “Go to Credentials” button, I end up with a dialogue with a blue button saying “Create credentials” that doesn’t match any of the screens here, and I can’t be sure how to move forward. Help please!

    September 5, 2016 at 7:27 pm Reply
    • Charalambos Eleftheriou

      @Pete, Once on the page after you press Go to Credentials, press the blue button ‘What credentials do i need’ Fill in the name and press create API key. The key will then be presented to you. I have just tested this and it is correct as it is on the documentation. If you still have an issue i suggest you contact 3CX Support or if you don’t have a support contract yourself contact your 3CX reseller/distributor to open a ticket on your behalf.

      September 6, 2016 at 3:22 pm
<