WA.onInit().then(() => { console.log('Trying to read variable "doorOpened" whose default property is true. This should display "true".'); console.log('doorOpened', WA.state.loadVariable('doorOpened')); console.log('Trying to set variable "not_exists". This should display an error in the console, followed by a log saying the error was caught.') WA.state.saveVariable('not_exists', 'foo').catch((e) => { console.log('Successfully caught error: ', e); }); console.log('Trying to set variable "myvar". This should work.'); WA.state.saveVariable('myvar', {'foo': 'bar'}); console.log('Trying to read variable "myvar". This should display a {"foo": "bar"} object.'); console.log(WA.state.loadVariable('myvar')); console.log('Trying to set variable "myvar" using proxy. This should work.'); WA.state.myvar = {'baz': 42}; console.log('Trying to read variable "myvar" using proxy. This should display a {"baz": 42} object.'); console.log(WA.state.myvar); console.log('Trying to set variable "config". This should not work because we are not logged as admin.'); WA.state.saveVariable('config', {'foo': 'bar'}).catch(e => { console.log('Successfully caught error because variable "config" is not writable: ', e); }); console.log('Trying to read variable "readableByAdmin" that can only be read by "admin". We are not admin so we should not get the default value.'); if (WA.state.readableByAdmin === true) { console.error('Failed test: readableByAdmin can be read.'); } else { console.log('Success test: readableByAdmin was not read.'); } });