ALTUI Browser Move - loss of pictures/data

Hi - not sure if there is an answer for this.
I am testing the new beta Chrome version. When I open my ALTUI browser link, it opens in the correct (test) browser, but all my personalized data is gone. Weather is back to France, pictures of my rooms gone. Opening the link in the old browser shows the correct data, so the data is available.
I’m asking if the ALTUI data can be copied to another browser?
Since the pictures are “on” Vera Plus, it’s just the links, but I’d like to know if I can get that data and reuse it.
Any ideas appreciated!

ALTUI use local storage which is browser specific.

you can get the settings on your old browser by running this command and copying the resulting string
localStorage.getItem("ALTUI_Settings")

then go to the new browser and run this commend replacing “result” by what you got above
localStorage.setItem("ALTUI_Settings" , "result" )

  • be careful, letter case matters and the slightest mistake in copy/paste the string will make it fail
  • you can do this in javascript console, or in ALTUI MISC DEBUG Javascript command dialog box

Thank you for the info - i was able to get my settings, but when I try to add them to the new browser, I throw an error;
Uncaught SyntaxError: missing ) after argument list
I did not know which argument list it is looking at - I checked that I had copied the info from the previous browser correctly, no added spaces, etc. Also checked the parens count and it is correct.
I was using the java console in Chrome, but also tried the ALTUI dialog - “an error happened during the execution” - not very specific, but I assume the same error.

This is what it looks like in the console

localStorage.setItem(“ALTUI_Settings” , “{“Favorites”:{“device”:{“0-63”:true,“0-79”:true,“0-32”:true,“0-21”:true,“0-100”:true,“0-111”:true,“0-81”:true,“0-194”:true,“0-196”:true,“0-34”:false,“0-176”:true,“0-99”:true,“0-26”:false,“0-104”:true,“0-33”:true,“0-27”:true,“0-197”:true,“0-193”:true,“0-24”:true,“0-30”:true,“0-166”:true,“0-174”:true,“0-28”:true},“scene”:{}},“ShowMyHomeImages”:1,“UseMasonryInMyHome”:0,“ShowVideoThumbnail”:1,“ShowClock”:1,“ShowWeather”:1,“ShowHouseMode”:1,“ServerSideOptions”:1,“UseVeraFavorites”:1,“SyncLastRoom”:1,“StickyFooter”:0,“UseUI7Heater”:0,“ShowAllRows”:0,“LockFavoritePosition”:0,“TopStats”:1,“BirdViewItemWidth”:0,“Menu2ColumnLimit”:15,“TempUnitOverride”:“f”,“EditorFontSize”:12,“WeatherWidgetCode”:”\t<a class="weatherwidget-io" href="Rotonda West, FL, USA - Weather Forecast" data-label_1="ROTONDA WEST" data-label_2="WEATHER" data-theme="original" >ROTONDA WEST WEATHER\n“,“DeviceTags”:{“names”:{“info”:”“,“primary”:“test”,“success”:”“,“dark”:”"},“devicemap”:{}},“Theme”:"https://bootswatch.com/4/darkly/bootstrap.min.css",“FavoritesOrder”:[“housemode”,“d0-63”,“d0-79”,“d0-32”,“d0-21”,“d0-100”,“d0-111”,“d0-81”,“d0-176”,“d0-99”,“d0-104”,“d0-33”,“d0-27”,“d0-197”,“d0-24”,“d0-28”,“d0-194”,“d0-30”,“d0-166”,“d0-174”,“d0-196”],“MyHomeBackgrounds”:{“KITCHEN”:{“url”:“http://192.168.0.51/0-5.jpg”},“Controllers”:{“url”:“http://192.168.0.51/0-14.jpg”},“CRAPROOM”:{“url”:“http://192.168.0.51/0-3.jpg”},“GARAGE”:{“url”:“http://192.168.0.51/0-10.jpg”},“HOUSE”:{“url”:“http://192.168.0.51/0-9.jpg”},“LIVINGROOM”:{“url”:“http://192.168.0.51/0-1.jpg”},“MBATHROOM”:{“url”:“http://192.168.0.51/0-12.jpg”},“MBEDROOM”:{“url”:“http://192.168.0.51/0-2.jpg”},“MBEDROOM-HALL”:{“url”:“http://192.168.0.51/0-6.jpg”},“PATSROOM”:{“url”:“http://192.168.0.51/0-4.jpg”},“LAUNDRY-HALL”:{“url”:“http://192.168.0.51/0-13.jpg”}},“DeviceRoomFilter”:[“LIVINGROOM”],“SceneRoomFilter”:[“LIVINGROOM”]}" )

the syntax seems incorrect; when you do getSettings() you should get a string with escape sequence for the quotes so something like this ( note the anti slash prefixing each quote except the first and last one )

"{\"Favorites\":{\"device\":{\"0-79\":true},\"scene\":{}},\"ShowMyHomeImages\":1,\"UseMasonryInMyHome\":0,\"ShowVideoThumbnail\":1,\"ShowClock\":1,\"ShowWeather\":1,\"ShowHouseMode\":1,\"ServerSideOptions\":0,\"UseVeraFavorites\":0,\"SyncLastRoom\":1,\"StickyFooter\":0,\"UseUI7Heater\":0,\"ShowAllRows\":0,\"LockFavoritePosition\":0,\"TopStats\":0,\"BirdViewItemWidth\":80,\"Menu2ColumnLimit\":15,\"TempUnitOverride\":\"c\",\"EditorFontSize\":12,\"WeatherWidgetCode\":\"<a class=\\\"weatherwidget-io\\\" href=\\\"https://forecast7.com/fr/45d215d78/meylan/\\\" data-label_1=\\\"MEYLAN\\\" data-label_2=\\\"WEATHER\\\" data-theme=\\\"original\\\" >MEYLAN WEATHER</a>\\n<script>\\n!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src='https://weatherwidget.io/js/widget.min.js';fjs.parentNode.insertBefore(js,fjs);}}(document,'script','weatherwidget-io-js');\\n</script>\",\"DeviceTags\":{\"names\":{},\"devicemap\":{}},\"Theme\":\"\",\"FavoritesOrder\":[\"housemode\",\"d0-79\"],\"DevicesVisibleCols\":[\"id\",\"altid\",\"id_parent\",\"manufacturer\",\"name\",\"device_type\",\"commands\"],\"DevicesSortDictionary\":{\"id\":\"asc\"},\"DeviceRoomFilter\":[\"Piscine\"],\"SceneRoomFilter\":[\"Piscine\"],\"LastOne_LuaTest\":\"\\nfoscam_IRctl(\\\"192.168.0.21:82\\\", \\\"admin\\\", \\\"Clem0tine\\\",false)\\nreturn true\\n\",\"LastOne_param0\":\"23:32\",\"ShowInvisibleDevice\":false,\"TimelineRange\":{\"start\":\"2020-04-18T19:49:48.360Z\",\"end\":\"2020-04-18T19:55:42.971Z\",\"byUser\":true,\"event\":{\"isTrusted\":true}},\"WatchPages\":{\"altui-watchpage-page1\":{\"name\":\"Page1\",\"id\":\"altui-watchpage-page1\",\"watches\":[\"thingspeak/0-108/urn:upnp-org:serviceId:flipr1/OxydoReduction\",\"thingspeak/0-108/urn:upnp-org:serviceId:flipr1/PH\",\"thingspeak/0-79/urn:upnp-org:serviceId:TemperatureSensor1/CurrentTemperature\",\"thingspeak/0-80/urn:upnp-org:serviceId:TemperatureSensor1/CurrentTemperature\",\"thingspeak/0-232/urn:upnp-org:serviceId:netmon1/DevicesOfflineCount\",\"thingspeak/0-272/urn:micasaverde-com:serviceId:HumiditySensor1/CurrentLevel\",\"thingspeak/0-36/urn:upnp-org:serviceId:TemperatureSensor1/CurrentTemperature\",\"thingspeak/0-119/urn:micasaverde-com:serviceId:EnergyMetering1/DayBefore\",\"thingspeak/0-119/urn:micasaverde-com:serviceId:EnergyMetering1/Monthly\",\"thingspeak/0-120/urn:micasaverde-com:serviceId:EnergyMetering1/DayBefore\",\"thingspeak/0-120/urn:micasaverde-com:serviceId:EnergyMetering1/Monthly\",\"thingspeak/0-117/urn:upnp-org:serviceId:TemperatureSensor1/CurrentTemperature\",\"thingspeak/0-23/urn:upnp-org:serviceId:TemperatureSensor1/CurrentTemperature\"],\"order\":null},\" \":{\"order\":[\"altui-watchpage-page1\"]}},\"LastOne_javascriptcode\":\"localStorage.getItem(\\\"ALTUI_Settings\\\")\",\"CategoryFilter\":0,\"LastOne_devaltuiid\":\"0-60\",\"LastBirdSort\":\"type\",\"PushesVisibleCols\":[\"#\",\"service\",\"variable\",\"provider\",\"commands\"],\"PushesSortDictionary\":{},\"TriggersVisibleCols\":[\"id\",\"scene\",\"trigger\",\"device\",\"condition\"],\"TriggersSortDictionary\":{},\"ScenesVisibleCols\":[\"id\",\"name\",\"last_run\",\"commands\"],\"ScenesSortDictionary\":{}}"

then the command to set them back is this where xxx is the exact string before including the first and last quote
localStorage.setItem("ALTUI_Settings" , xxxx )

Using the ALTUI java cmd line instead of the Chrome browser console got me the correctly formatted data. So I thought I was done, but…when I use that data, I now get the message “undefined” when attempting to set the data in the new browser. I wish I could supply more information, but after multiple tries, same error message with no definition.

what do you use to set it back ? you should be able to use the method to get and then to set. so the same ATLUI javascript text box command and put exactly the same string instead of the xxx

localStorage.setItem(“ALTUI_Settings” , xxxx )

if this does not work, then I am afraid you ll have to restart from scratch but this should really work.

Thank you - bit o’ magic happened overnight. Got your response this morning and decided to try one more time - opened old chrome, opened old ALTUI, got settings, opened new chrome, opened new ALTUI and it was updated! Not sure what the “undefined” message was, but when I got that message, I just closed the browser and did not refresh. Opened the browser today and the data I had set was in place! Thank you for the help - as you said it really should work and it did!