I'm thinking this is just a bad device. It fails 99% of the time, but did recognize the keyword (Abigail) 1 time. After it recognized the keyword, it failed on the command.
00:55:53 Info: Send length 43 data to IoT App: {"method":{"payload":"Ready","status":200}}
00:55:53 Info: From speech 47 bytes
00:55:53 Info: Speech -> IoT: {"payload":"Ready","status":200}
00:55:53 Info: Method Response:{"status": 200, "payload": "Ready"}
00:56:01 Info: Send length 45 telemetry to IoT App: {"telemetry":{"speechRecognizing":"abigail"}}
00:56:01 Info: From speech 49 bytes
00:56:02 Error: Connection is failure
Connection was closed by the remote host. Error code: 1002. Error details: The server returned status code '401' when status code '101' was expected. SessionId: a01355510c8040658bcc30a00eb6ae8e
00:56:27 Info: Send length 45 telemetry to IoT App: {"telemetry":{"speechRecognizing":"abigail"}}
00:56:27 Info: From speech 49 bytes
00:56:28 Error: Connection is failure
Connection was closed by the remote host. Error code: 1002. Error details: The server returned status code '401' when status code '101' was expected. SessionId: a01355510c8040658bcc30a00eb6ae8e
01:08:45 Info: Send length 45 telemetry to IoT App: {"telemetry":{"speechRecognizing":"abigail"}}
01:08:45 Info: From speech 49 bytes
01:08:47 Info: Send length 45 telemetry to IoT App: {"telemetry":{"speechRecognizing":"abigail"}}
01:08:47 Info: From speech 49 bytes
Playing WAVE 'listening.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
playback_wave
01:08:47 Info: Send length 38 telemetry to IoT App: {"telemetry":{"botState":"Listening"}}
01:08:47 Error: Connection is failure
Connection was closed by the remote host. Error code: 1002. Error details: The server returned status code '401' when status code '101' was expected. SessionId: a01355510c8040658bcc30a00eb6ae8e