Non-ASCII characters not supported in Signaling API in Windows SDK Non-ASCII characters not supported in Signaling API in Windows SDK

Non-ASCII characters not supported in Signaling API in Windows SDK

Maria Scieranska

Symptom

When using signaling API with Windows SDK, either the received text is garbled or triggers "Subscriber Internal Error"

Applies To

  • Signaling API in Windows SDK

Resolution

You can recover the correct strings in the DotNet code by doing the following double-conversion

private void session_Signal(object sender, Session.SignalEventArgs e)
{
string correctedData = Encoding.UTF8.GetString(Encoding.GetEncoding("ISO-8859-1").GetBytes(e.Data));
…
}

 

Cause

JS SDK uses UTF-8 for the signaling data, while the Windows SDK decodes the data as Windows-1252 (a problem also illustrated here: http://www.i18nqa.com/debug/bug-utf-8-latin1.html)