import * as messaging from "messaging"; import { settingsStorage } from "settings"; //console.log("Companion Started"); //settingsStorage.setItem('colors', Json.stringify({})); //settingsStorage.setItem('secondary', 'cal'); // Message socket opens messaging.peerSocket.onopen = () => { //console.log("Companion opened socket"); //restoreSettings(); }; // Message socket closes messaging.peerSocket.close = () => { //console.log("Companion closed Socket"); }; /* messaging.peerSocket.onmessage = (evt) => { // Output the message to the console console.log(JSON.stringify(evt.data)); Object.keys(evt.data).forEach((k) => { console.log(k + ' - ' + evt.data[k]); //settingsStorage.setItem(k, evt.data[k]); }); //settingsStorage.setItem('secondary', 'cal'); } */ // A user changes settings settingsStorage.onchange = evt => { let data = { key: evt.key, newValue: evt.newValue }; switch (evt.key) { case 'button': // perform magic here break; default: sendVal(data); break; } }; // Restore any previously saved settings and send to the device function restoreSettings() { for (let index = 0; index < settingsStorage.length; index++) { let key = settingsStorage.key(index); if (key) { let data = { key: key, newValue: settingsStorage.getItem(key) }; sendVal(data); } } } // Send data to device using Messaging API function sendVal(data) { if (messaging.peerSocket.readyState === messaging.peerSocket.OPEN) { messaging.peerSocket.send(data); } }