Yealink Forums

Full Version: Call Pickup Bug - Unknown URI Scheme
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I'm having trouble configuring BLF keys to have call pickup abilities on the VP-530, and I believe it is caused by a URI parsing bug in the firmware.

On other Yealink phones(newer firmware), I can configure the call pickup string as a separate value. In our case it is *8. On older firmware like the VP-530, we simply add *8 in the extension box on the BLF config screen. This has always worked in the past for T-2x series phones and T-3x series phones.

The first difference seems to be that I must put the full *8{extension} in the extension field for the VP-530 to attempt to dial the correct *8{extension} string. Once it does try, it fails to dial due to an "unknown uri scheme". I believe I have captured this, and I can see the incorrect URI in the level 6 logs:

Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | Message received: [(SIP_MSG_CALL_INVITE) -- (0x40003) wParam(0x4a7d9e40)-lParam(0x21)]
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | SIPUA Build Option ---Callee = [sip:*8460@nyc-phone-1.fluentcloud.com;BLF-Index=2] Replace= [(null)] ReferBy = [(null)] Rcid = [(null)]
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | SIPUA Build Option ---Video = [1] conference= [0] intercom = [0] pickup = [32] sca = [0] call_invoke = [0]
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | callee is sip:*8460@nyc-phone-1.fluentcloud.com;BLF-Index=2
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | Blf Index is 2
Jul 30 22:37:13 syslog[389]: [0388] 02452216 --after---element list size (0)
Jul 30 22:37:14 syslog[389]: [0388] 02452217 dataLogicToUI.listRegionData size = 0
Jul 30 22:37:14 syslog[389]: [0388] 02452217 ------------------GetCurrentElement
Jul 30 22:37:14 syslog[389]: [0388] 02452217 -----------GetCurrentElement NULL
Jul 30 22:37:14 syslog[424]: ^[[1m[ERROR]^[[0m (sipua_call_api.c:1493)Unknown URI scheme
Jul 30 22:37:14 syslog[389]: [0388] 02452226 [TALK][CSessionManager::DeleteSession] end
Jul 30 22:37:14 syslog[389]: [0388] 02452226 [TALK][***CSessionManager::UpdateWnd***] SessionID:-1,UIName:
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | Message sent: [(PHONE_MSG_CALL_FAIL) -- (0xa0009) wParam(0x4a7d9e40)-lParam(0x1a0)]
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | send notify for in blf, call_did = [-1], notify_did = [-1]
Jul 30 22:37:14 syslog[424]: [0463] 02459103 Post message 0xa0009 to 388
Jul 30 22:37:14 syslog[424]: ^[[1m[ERROR]^[[0m (sipua_call_api.c:1964)Start new call: Build invite fail!


So, what I am seeing, is that the ";BLF-Index=2" is not stripped from the end of the sip: invite string. This creates an invalid server address, and the phone cannot attempt the pickup call.

I'm worried that this may never be fixed, as this phone no longer appears to be getting firmware updates. Is there anything we can do to work around this?
(07-31-2014 06:45 AM)bnelson Wrote: [ -> ]I'm having trouble configuring BLF keys to have call pickup abilities on the VP-530, and I believe it is caused by a URI parsing bug in the firmware.

On other Yealink phones(newer firmware), I can configure the call pickup string as a separate value. In our case it is *8. On older firmware like the VP-530, we simply add *8 in the extension box on the BLF config screen. This has always worked in the past for T-2x series phones and T-3x series phones.

The first difference seems to be that I must put the full *8{extension} in the extension field for the VP-530 to attempt to dial the correct *8{extension} string. Once it does try, it fails to dial due to an "unknown uri scheme". I believe I have captured this, and I can see the incorrect URI in the level 6 logs:

Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | Message received: [(SIP_MSG_CALL_INVITE) -- (0x40003) wParam(0x4a7d9e40)-lParam(0x21)]
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | SIPUA Build Option ---Callee = [sip:*8460@nyc-phone-1.fluentcloud.com;BLF-Index=2] Replace= [(null)] ReferBy = [(null)] Rcid = [(null)]
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | SIPUA Build Option ---Video = [1] conference= [0] intercom = [0] pickup = [32] sca = [0] call_invoke = [0]
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | callee is sip:*8460@nyc-phone-1.fluentcloud.com;BLF-Index=2
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | Blf Index is 2
Jul 30 22:37:13 syslog[389]: [0388] 02452216 --after---element list size (0)
Jul 30 22:37:14 syslog[389]: [0388] 02452217 dataLogicToUI.listRegionData size = 0
Jul 30 22:37:14 syslog[389]: [0388] 02452217 ------------------GetCurrentElement
Jul 30 22:37:14 syslog[389]: [0388] 02452217 -----------GetCurrentElement NULL
Jul 30 22:37:14 syslog[424]: ^[[1m[ERROR]^[[0m (sipua_call_api.c:1493)Unknown URI scheme
Jul 30 22:37:14 syslog[389]: [0388] 02452226 [TALK][CSessionManager::DeleteSession] end
Jul 30 22:37:14 syslog[389]: [0388] 02452226 [TALK][***CSessionManager::UpdateWnd***] SessionID:-1,UIName:
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | Message sent: [(PHONE_MSG_CALL_FAIL) -- (0xa0009) wParam(0x4a7d9e40)-lParam(0x1a0)]
Jul 30 22:37:14 syslog[424]: <0> | LEVEL4 | send notify for in blf, call_did = [-1], notify_did = [-1]
Jul 30 22:37:14 syslog[424]: [0463] 02459103 Post message 0xa0009 to 388
Jul 30 22:37:14 syslog[424]: ^[[1m[ERROR]^[[0m (sipua_call_api.c:1964)Start new call: Build invite fail!


So, what I am seeing, is that the ";BLF-Index=2" is not stripped from the end of the sip: invite string. This creates an invalid server address, and the phone cannot attempt the pickup call.

I'm worried that this may never be fixed, as this phone no longer appears to be getting firmware updates. Is there anything we can do to work around this?

Were you able to fix this, having the same issue here.
Reference URL's