• V20: 3CX Re-engineered. Get V20 for increased security, better call management, a new admin console and Windows softphone. Learn More.

Unable to receive 3CX calls after 2 hours of inactivity of Huawei P9/P10 Lite

Status
Not open for further replies.

giox069

Joined
Oct 22, 2017
Messages
11
Reaction score
0
3CX PBX version: 15.5.3849.1 runing on Debian 8.8 x64
3CX Android client version: 15.1.90
3CX PBX is configured with my own google firebase account (ID and Server Key)

I'm using the android client, and I can make and receive calls with Huawei P9 Lite and P10 Lite phones. I can close the client on the phone, killing it by pressing the square box and then X. I still can receive calls when the client is closed.
But after a couple of hours, the phone is no longer able to receive incoming calls.
This happens on both P9 Lite and P10 Lite phones, it does not happen in my Nexus 4 with LineageOS 14.

This is an extract of logcat when the incoming notification from google is unable to awake the client (i.e.: after the 2 hours interval):
Code:
10-22 17:51:49.732  1374  1395 I SendBroadcastPermission: action:android.net.conn.DATA_ACTIVITY_CHANGE, mPermissionType:0
10-22 17:51:49.760  1374 17760 I SendBroadcastPermission: action:android.os.action.POWER_SAVE_TEMP_WHITELIST_CHANGED, mPermissionType:0
10-22 17:51:49.761  2525 29652 I SendBroadcastPermission: action:com.google.android.c2dm.intent.RECEIVE, mPermissionType:0
10-22 17:51:49.761  2525 29652 I SendBroadcastPermission: action:com.google.android.c2dm.intent.RECEIVE, mPermissionType:0
10-22 17:51:49.769  2525  2525 W GCM-DMM : broadcast intent callback: result=CANCELLED forIntent { act=com.google.android.c2dm.intent.RECEIVE flg=0x10000000 pkg=com.tcx.sipphone14 (has extras) }

And this is an extract of logcat of a correctly received incoming call:
Code:
10-22 17:57:09.143  1374 17763 I SendBroadcastPermission: action:android.os.action.POWER_SAVE_TEMP_WHITELIST_CHANGED, mPermissionType:0
10-22 17:57:09.146  2525 29652 I SendBroadcastPermission: action:com.google.android.c2dm.intent.RECEIVE, mPermissionType:0
10-22 17:57:09.147  2525 29652 I SendBroadcastPermission: action:com.google.android.c2dm.intent.RECEIVE, mPermissionType:0
10-22 17:57:09.184 32174 32174 I         : power log dlsym ok
10-22 17:57:09.189 32174 32174 I art     : Reinit property: dalvik.vm.checkjni= false
10-22 17:57:09.220   474   514 I gralloc : alloc_device_alloc:626: Alloc handle(0x7c3c423500): interfmt=1, stride=64, size=4096, usage=0x100
10-22 17:57:09.227   474  1591 I gralloc : alloc_device_free:648: Free handle(0x7c3c423500)
10-22 17:57:09.232  1374 17757 E Process : isHighLoadProcess: get cpu failed
10-22 17:57:09.243 32174 32174 I art     : Starting a blocking GC AddRemoveAppImageSpace
10-22 17:57:09.258 32174 32174 I 3CXPhone15: (thread 32174) 17:57:09:257 creating App
10-22 17:57:09.258 32174 32174 I 3CXPhone15: (thread 32174) 17:57:09:258 create NetworkChecker
10-22 17:57:09.271 32174 32174 I FA      : App measurement is starting up, version: 10298
10-22 17:57:09.271 32174 32174 I FA      : To enable debug logging run: adb shell setprop log.tag.FA VERBOSE
10-22 17:57:09.275 32174 32174 I FA      : To enable faster debug mode event logging run:
10-22 17:57:09.275 32174 32174 I FA      :   adb shell setprop debug.firebase.analytics.app com.tcx.sipphone14
10-22 17:57:09.279 32174 32174 I FirebaseInitProvider: FirebaseApp initialization successful
10-22 17:57:09.281 32174 32174 I 3CXPhone15: (thread 32174) 17:57:09:281 contact list mode set to 2
10-22 17:57:09.284 32174 32174 I 3CXPhone15: (thread 32174) 17:57:09:284 got WIFI_MODE_FULL_HIGH_PERF value = 3
10-22 17:57:09.286 32174 32174 I 3CXPhone15: (thread 32174) 17:57:09:286 call state at startup: 0
10-22 17:57:09.290 32174 32174 I 3CXPhone15: (thread 32174) 17:57:09:290 Loading native SIP library
10-22 17:57:09.293 32174 32174 I 3CXPhone15: (thread 32174) Native SIP library loaded
10-22 17:57:09.293 32174 32174 I 3CXPhone15: (thread 32174) JLineCfgFields::LoadClassInfo: constructorMID = 2045476252, lineConfigsFID = 2045269336
10-22 17:57:09.296 32174 32174 I 3CXPhone15: (thread 32174) 17:57:09:296 debug logging initially set to false
10-22 17:57:09.306 32174 32174 I GcmReceiver: (thread 32174) 17:57:09:306 was asked for service name
10-22 17:57:09.314 32174 32174 I 3CXPhone15: (thread 32174) 17:57:09:313 GSM call ended

I already configured the phones to ignore battery optimizations for 3CX app and not to close it when the phone is locked. But nothing changed.

Any idea to solve this?

Thank you
 
I had the same problem on my Huawei P9. Disable smartcover and install the PNF app solve the problem on my Huawei P9
 
It does not work. I installed an app called "PNF no-root", I have not smartcover (what do you mean with "smartcover" ?), the 3CX android client has been updated to 15.5.157, but notifications from google are still unable to wake up the client after a couple of hours of inactivity.
Other ideas?
 
Most providers/routers kill inactive sessions. Check the status and heartbeat of the Google Play-service type *#*#426#*#* (on your mobile dialer) Try a ping to Google play service before starting the 3CX app to check if this is the problem.

You can also try "Heartbeat fixer for GCM". Just tested on my Huawei P9 and set the heartbeat on 1 minute. This works also fine.
 
Last edited:
I don't think it's a internet provider locking me: I roam between 3-4 different wifi networks (each one with different ISP, different routers/firewall) during the week, and the problem is everywhere. I'm trying to solve it not only for me, but for all (10-15) Huawei P9 and P10 lite we have at our offices. We are currently testing on one P9 lite and one P10 lite, and both are not receiving notifications. Our plans are to install more android 3CX clients on Huawei phones, but only if we can make them receive calls in a predictable manner.
Our Samsung android phones seems to work fine, but I have no fresh data for Samsung phones now. It seems the problem shows up with the combination of 3CXclient + Huawei P9/P10 lite. Apple iPhones are ok.
Thank you for the hint to check the status with the special dial code, and thank you for Heartbeat fixer app too. I will try it as soon as possible and report here.
 
I installed "Heartbeat fixer for GCM" a couple of days ago, enabled it with default values (5min, 5min), but after 3-4 hours of inactivity the 3CX client is still refusing to wake up for an incoming call.
Rebooting the phone does not make it wake up on next call. Only opening the 3CX client again makes it available for calls for 2-4 hours. I can then kill it, and it will wake up again with no problems before the inactivity period expiration.
I dialed *#*#426#°#*, I pressed ping, disconnect, reconnect, when the client is in this strange "no wake up" status, but no changes.
Please see the status log of Google Play services: incoming calls notification are correctly received (this is also reported on the logcat on my 1st post). But the 3CX client does not open.
 

Attachments

  • Screenshot_20171124-204508.png
    Screenshot_20171124-204508.png
    310.1 KB · Views: 6
Status
Not open for further replies.

Getting Started - Admin

Latest Posts

Forum statistics

Threads
141,407
Messages
747,505
Members
144,372
Latest member
Quantinium
Get 3CX - Absolutely Free!

Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.