Messages posted by: Wolfgang
Forum Index » Profile for Wolfgang » Messages posted by Wolfgang
Message
I cannot reproduce the issue with SDK version 1.7.3.4.
Thank's for this fix.

Wolfgang
I have already reported this issue as a bug (Ticket 90).

Wolfgang
The bugfix works for both beta users. I expect that the issue is solved.

Wolfgang
Thanks, I will let the beta users try the new build.

It appears, that the lock / unlock scheme has been removed from the SDK. I expect that this is no longer required?


Wolfgang
Machine with high CPU load:
Windows 10 Home
Version 1803
OS build 17134.345


Other machine working correctly:
Windows 10 Pro
Version 1803
OS build 17134.345


In both cases the application is running as 64bit process.
Hi, I have just migrated our client from the old Jabra .NET SDK to the new V2 SDK. I'm using build v1.3.0.0 from July.

One internal beta user is experiencing high CPU load (25%) when the client software is running on his Lenovo notebook. Using process explorer I could narrow it down to the thread libjabra.dll!Jabra_WriteHIDCommand. The CPU load stops when I unplug the device (Jabra Pro 930) and it is again on 25%. The same CPU load shows up when I connect an Evolve 80.

I have downgraded the client installation to the previous version, using Jabra .NET SDK v3.1.13407 and the issue is gone.

I cannot reproduce the issue on my machine (Dell notebook).

I just wanted to confirm that the latest SDK 1.3.0 contains JabraSDK.dll with a correct strong name. Thanks.
Yes, this is an open issue. I already discussed this in another thread (https://developer.jabra.com/forums/posts/list/99.page).

My workaround is: Per device I maintain two flags:
- IsOffHook reflects the current hook state as defined by my Softphone. I call SetHookState only when the hook state changes. I don't call SetHookState twice for the same hook state.

- ReportedOffHookSate reflects the hook state as received from the Jabra API (bool value from TranslatedButtonInputEventArgs for ButtonId.OffHook). I handle the hook event from the headset only when the recceived hook button state is different from the last reported hook button state.

Wolfgang
I just tried to migrate the code to the new beta SDK but failed since the SDK does not have a strong name (see my other thread).

Nevertheless: The new SDK provides the raw button event:

void OnRawButtonInput(object sender, RawButtonInputEventArgs eventArgs).


Since I cannot try it out right now: Would I receive a hook button press event "Hook Off" as "raw button input" when I set the device to OffHook via the new API ?

Best regards
Wolfgang
I just tried to migrate from JabraHidTelephonyApi.dll v3.1.13407 to the new .NET SDK. But with both versions, the release build and beta build, I get FileLoad Exceptions.

Could you please provide JabraSDK builds with strong names?

Thanks in advance!
Wolfgang

System.IO.FileLoadException: Could not load file or assembly 'JabraSDK, Version=1.2.0.16, Culture=neutral, PublicKeyToken=null' or one of its dependencies. A strongly-named assembly is required. (Exception from HRESULT: 0x80131044)
File name: 'JabraSDK, Version=1.2.0.16, Culture=neutral, PublicKeyToken=null'
at UccAPI.JabraDeviceServiceWrapper..ctor(String applicationName, Version applicationVersion)
at UccAPI.UccPhoneClient..ctor(UccServerConnection serverConnection, Int32 logLevel, Boolean logSipMessages, Boolean recordAudio, String applicationName, Version applicationVersion) in C:\repos\eai-windows\WinClient-NG\UccAPI\UccPhoneClient.cs:line 210


System.IO.FileLoadException: Could not load file or assembly 'JabraSDK, Version=1.0.11.5, Culture=neutral, PublicKeyToken=null' or one of its dependencies. A strongly-named assembly is required. (Exception from HRESULT: 0x80131044)
File name: 'JabraSDK, Version=1.0.11.5, Culture=neutral, PublicKeyToken=null'
at UccAPI.JabraDeviceServiceWrapper..ctor(String applicationName, Version applicationVersion)
at UccAPI.UccPhoneClient..ctor(UccServerConnection serverConnection, Int32 logLevel, Boolean logSipMessages, Boolean recordAudio, String applicationName, Version applicationVersion) in C:\repos\eai-windows\WinClient-NG\UccAPI\UccPhoneClient.cs:line 210
I have several report that Jabra devices stop to function after some hours of usage resp. when the PC and our softphone application is running for days. The device then is still functional as an audio device, but it does not respond to hook button press etc.

From the application it looks like this:

UccAPI.JabraDeviceServiceWrapper.OnDeviceRemoved | Name: Jabra Link 370, Product ID: 9309, Serial: 501AA5F9282A011000, Firmware: 1.16.0
WM_DEVICECHANGE
dev_id 0: Wave mapper (in=0, out=2)
dev_id 1: Digitalaudio (S/PDIF) (High Definition Audio-Gerät) (in=0, out=2)


So the device is reported as removed by the Jabra SDK and is not listed via wave API.

It re-appears after a while and is reported via wave API:


WM_DEVICECHANGE
dev_id 0: Wave mapper (in=2, out=2)
dev_id 1: Mikrofon (Jabra LINK 360) (in=2, out=0)
dev_id 2: Lautsprecher (Jabra LINK 360) (in=0, out=2)
dev_id 3: Digitalaudio (S/PDIF) (High Definition Audio-Gerät) (in=0, out=2)


but the Jabra SDK does not recognize the re-appeared device.

In house a have related reports for a Jabra Pro 930 on Windows 10, a customer reports issues with Windows 7 and Windows 10, Jabra EVOLVE 65 UC MONO and Jabra EVOLVE 65 UC STEREO.

When I really unplug a device and plug it in again, the SDK handles this situation correctly. But in this situation, the user needs to restart the software.

Do you have any hints how to proceed?

Wolfgang
Thanks for the hint. I will try the beta end of the month, after I have branched the new code for our upcoming release.

Wolfgang
The S*r SDK for example allows to set the "ringing" call id. Later on the "incoming call accepted" event contains the call id.

For the button input event it would be sufficient when we could tell if it was a real button press. You could as well introduce a "Offhook" event (that reflects SetHookState) and the button event would only be fired for real button press actions.

Wolfgang
Just saw that there is another related question (c++ SDK). So I guess I have to cope with this echo event.
Hi, I'm still using the now deprecated JABRA .NET SDK v3.1.13407, but I guess this issue is generic and still valid (please correct me if it is fixed with the new SDK).

When I call SetHookState(true), I receive a corresponding ButtonInput event ButtonId.HookSwitch for hook off.
When I call SetHookState(false), I receive a corresponding ButtonInput event ButtonId.HookSwitch for hook on.

When I handle the ButtonInput event, I cannot tell the difference if this event is caused by SetHookState or by a real button press by the user.

I had situations where the software calls SetHookState(false) because a first call was actively hangup via button click in the softphone, a second call was accepted viy UI, SetHookState(false) is called, but then the ButtonInput event (hook on) for the first SetHookState(false) was received and the second call was disconnected in response - the software handled the event as a button press by the user.

Is there a way to suppress this "feedback" event or to differentiate it from a real button press?

Best regards
Wolfgang
 
Forum Index » Profile for Wolfgang » Messages posted by Wolfgang
Go to: