The OutgoingSpeakerController doesn't seem to work if you connect with a 2019R1 smart client to a 2018R3 server.

OutgoingSpeakerController.Connect() throws the exception: {“Invalid URI: The URI scheme is not valid.”}

This works without problem when connecting a 2018 R3 client to 2018 R3 server or 2019 R1 client to 2019 R1 server. All corporate versions.

Is this a known problem? Any workarounds except using the same versions of client/server?

I should add that it works to use the built in push to talk functionality in the smart client. The exception is thrown when using OutgoingSpeakerController in a plugin.

We will explore this issue next week.

I made a Smart Client plug-in using OutgoingSpeakerController. It works for me also with the combination of a Smart Client 20191 and XProtect Corporate 2018R3 server..

Do you have a plugin (minimal implementation perhaps) which you can share with me?

Thanks for your test Bo. The problem is that “scheme” seems to be a new property in the ServerID class. Since that property wasn’t present before, the OutgoingSpeakerController will fail when we use an old FQID where the scheme property is set to null. That’s because it doesn’t exist in the FQID copy that we have read from our settings.

I guess one solution could be to check if scheme is null and read which scheme the current device uses and set that property before using the OutGoingSpeakerController.

We believe the workaround you suggest will work nicely, please use the workaround for now.

I will open a case with Milestone Development, thank you for reporting the issue.

Hi Mikael,

I have been looking into which, but are having some trouble reproducing. Could you please clarify how you are storing the FQID of the speaker?

I tried serializing one to a string (using the Serialize() method) on 2018 R3 SC and then deserializing by passing the string to the FQID constructor on 2019 R1 SC and the Scheme is set to the default (HTTP).

/Peter

Hi,

The serializer we need to use (DataContractSerializer), doesn’t run the constructor of the objects. Can you set a default value to the scheme property and it should solve the problem?

Thanks

Mikael

Thanks Mikael. I now managed to reproduce and solve it. The fix will be part of 2019 R3 release.

Perfect! Thank you.