mirror of
https://github.com/Rafostar/clapper.git
synced 2025-08-30 07:42:23 +02:00
31 lines
649 B
JavaScript
31 lines
649 B
JavaScript
const { Soup } = imports.gi;
|
|
const ByteArray = imports.byteArray;
|
|
const Debug = imports.clapper_src.debug;
|
|
|
|
const { debug } = Debug;
|
|
|
|
function parseData(dataType, bytes)
|
|
{
|
|
if(dataType !== Soup.WebsocketDataType.TEXT) {
|
|
debug('ignoring non-text WebSocket message');
|
|
return [false];
|
|
}
|
|
|
|
let parsedMsg = null;
|
|
const msg = bytes.get_data();
|
|
|
|
try {
|
|
parsedMsg = JSON.parse(ByteArray.toString(msg));
|
|
}
|
|
catch(err) {
|
|
debug(err);
|
|
}
|
|
|
|
if(!parsedMsg || !parsedMsg.action) {
|
|
debug('no "action" in parsed WebSocket message');
|
|
return [false];
|
|
}
|
|
|
|
return [true, parsedMsg];
|
|
}
|