SmartTiles Dashboard v5.6.1: New features (SHM), Bug Fixes, Diagnostics - Dec 11, 2015

Almost forgot about your question with all of the activity this week…

I also, would rather pay for versions rather than a subscription. I avoid subscriptions in every way possible and really don’t like any kind of automated payment - too insecure and difficult to manage. Also, if I pay for a version I wouldn’t expect it to expire - at least until a couple other major revisions have come out. A different price for upgrade vs. new purchase also makes sense to me. I like the idea of a limited version that is restricted in number of dashboards and a Pro version with more. Perhaps even an additional purchasable dashboard pack, as well. Maybe the intro/trial version with a couple or few dashboards to wet the appetite, then the pro version with 5 dashboards and the ability to purchase more dashboard packs - possibly in 5 pack bundles. I think that you need more than 1 in the intro version to show off the capabilities and possibilities.

I’ll throw out a few numbers, but it may make more sense to use the relative sizes as more of a guide than the actual numbers…

Intro (2 dashboards): free - may have a limit on the number of tiles in any given dashboard as well. always have be on current version.
Pro (5 dashboards, unlimited tiles per board): $20 for new purchase, $10 for upgrade to future major version (option to skip a couple major versions, etc.)
Add On Dashboard Pack for Pro: $10 for new purchase per pack, $5 for upgrade.

2 Likes

I will add my opinion on pricing and packages.

I think this could be a combination of the above packages.

An intro package that is good for 30 days and gives 2 dashboards. With the authentication, you guys should be able to limit them to 1 install per account.

Standard package of 5 dashboards for $15. This could include a 20% discount on each version upgrade. Additional dashboards could be purchased either 1 at a time or in bulk with a discount. Full price upgrade fee on the additional dashboards.

Pro package of 5 dashboards for $30. This could include 1 free version upgrade for all base and additional dashboards. Discount on future version upgrades on base and additional dashboards (rewards these users for making the bigger commitment up front). Additional dashboards could be purchased either 1 at a time or in bulk with a discount, same as Standard.

Additional dashboards could be $5 for 1 and $20 for 5 (buy 4 get 1 free).

Version upgrades for Standard could be $15 for the 5 base dashboards ($12 after discount) and $3 each for additional dashboards.
Version upgrades for Pro could be $15 for the 5 base dashboards ($10 after discount) and $2 each for additional dashboards.

I think the idea here is to provide incentives for customers and also incentives for @625alex and @tgauchat to continue innovating and making progress.

2 Likes

Coming from the other way - see what ecommerce site you like and what options it has. Then you have to figure out a way to have the licenses validated/managed and you probably want it automated for the most part, too.

Reminds me of the time we pulled together a customer focus group to discuss sales commission functionality. From 10 customers we go 34 different ways that they did commissions for their sales people… A never ending battle of variables and complexity.

1 Like

Sorry if this error has been covered, as I did some searches. I installed for the first time today and created a dashboard. When I go to the URL I get the following error:

{“error”:true,“type”:“java.lang.ClassCastException”,“message”:“An unexpected error occurred.”}

Thanks in advance for your help.

No problem, Steve…

We’re seeing this fairly commonly when a new dashboard is first created; maybe something doesn’t quite get “saved” or activated in the SmartThings engine.

Try going into SmartTiles SmartApp config/preferences and maybe even just pressing “DONE” to save again (or make a minor change, if necessary).

Usually that gets folks past the error.

I have tried the “done” route too, and the same error is only happening on my 2nd dashboard; boards 1 and 3 run fine. Other options?

Thanks.

Thanks! To help debug this I took out everything except one GE Zwave switch. I thought maybe I added too much or it was one of my devices.

The same error is present.

Working now! I went in and out of the preferences again.

1 Like

No other options at the moment for this “specific” error condition (i.e., with “new” dashboards); we suspect it has something to do with replication time throughout the SmartThings Cloud servers, perhaps…?

To determine if the error is caused by something else, please increase the Log/Debug level (as high as trace) and observe Live Logging in the IDE.

Just changing the logging must have scared it into submission. It had been broken for a few days, but now the second dashboard is working.

Terrific work on this release. Can now officially uninstall the old one.

If you do get a chance to bump Font Awesome, please do! :smiley:

My second dashboard no longer works. All I get the same java error reported here and this in the IDE logs:
03faa5da-367c-4882-8c9d-99e8da846781 8:22:18 AM: error java.lang.ClassCastException

Hi Carlos… Please try increasing the Log Level preference in the SmartTiles SmartApp config pages to “trace” and then re-observe IDE Live Logging.

OK… It’s catch up time now after the weekend…

@625alex and myself are looking into the following issues and wonder if there are any other “critical” ones…

###Are there any major problems currently with SmartTiles?

  1. We now that new installations (and/or upon the addition / creation of a new “child Dashboard”) frequently results in a Java ClassCastException or similar error upon first attempt to Browse the URL (view the Dashboard). This seems to almost always clear up just by going back into SmartApp Config / Preferences and pressing DONE to re-save everything. Sometimes, changing the logging level and/or adding / removing a “Thing” or other Tile also fixes this. We’re not considering this to be a critical problem, but are trying to make it non-fatal with an informational message.

  2. Startup of a dashboard uses a few (about 3?) “runIn()” or similar basic scheduling methods which have currently been disabled as a hot-fix. We are going to test enabling these soon.

  3. Several folks have reported being unable to Uninstall / Remove a child dashboard and/or the entire installed “SmartTiles (Connect)” SmartApp. We are considering this to be a serious critical issue, but are currently unable to reproduce. We think it is related to #2 because SmartThing Platform does an implied unschedule upon remove, and if scheduler is hanging that would cause the remove to fail as well. So if the root cause of #2 has been fixed on the SmartThings Platform, then hopefully it’s taken care of #3 here as well.


As #3 is most critical, can you please email me: Support@SmartTiles.click if you are unable to uninstall / remove a child dashboard; and are willing to help debug this including involving SmartThings Support? Thank-you!!!

(But let’s figure out other current problems while we’re here. We want to push a “bug-fix / minor” release by the end of the week, and yet, we’re not sure what problems are ours, and what problems are still outside of our control…).


Update: Recorded on Things That Are Smart Wiki: http://thingsthataresmart.wiki/index.php?title=Bug:_Schedule_Methods_Cause_Fatal_Java_Error

1 Like

Just an update… Changing the logging to debug fixed the dashboard that was getting the java errors.

2 Likes

Could you change it back to logging level “Error” only and see if it continues to work?

We are actually wondering whether any configuration value has to be changed at all, or if it is only necessary to just press “DONE” to make SmartThings refresh the SmartApp.

And still figuring out if this only occurs for “new” dashboards, or if it can spontaneously occur for existing and fully functional dashboards.

1 Like

##ALERT: A bit of Anonymous Tracking has been Added to SmartTiles v5.6.1

A bug fix / maintenance release of SmartTiles (v5.6.1) will be deployed imminently. A very small part of this upgrade is the addition of some anonymous statistical tracking written to a secure external database.

Our “Privacy Policy” remains unchanged (and, well, as of this moment, sorry, it is still unpublished in any formal way): But in summary: @625alex and I do not intentionally capture or share any data about your Account, Location, Devices, Access Tokens, SmartApp instance id, etc… We do capture your IP address and “Region Code” (US or UK) upon web based installation, and your email address (if you voluntarily supplied it on our installation web page). We also have non-granular tracking enabled via WordPress plugins on the http://SmartTiles.click web page. This information is for internal statistical analysis only and will never be shared or sold. This information (source IP address, pages visited, etc.) is no different than the access logs of nearly every typical website.

SmartTiles v5.6.1 has added a tiny bit of tracking code to our dashboard SmartApp solely to allow us to determine the number of active Locations and Dashboards and the total count of full refresh calls. This data will help us measure growth in actual live and active dashboards, as opposed to those which are installed and not used, or installed and then removed (or installed and have already been removed).

Each tracking record is keyed using a one-way-hashed (MD5) value, calculated in the SmartApp before storage, so that it is anonymous and non-traceable back to individual users or Locations. We do not use any browser “cookies”.

NB: even if we did not hash the Location ID; the Location ID is a meaningless UUID number on its own. Of course, clever data mining is possible – in theory, Location ID could be used to correlate tracking activity between multiple different SmartApps, if the other SmartApps used the same tracking mechanism and we shared the data with those other SmartApp developers … which we don’t. Even in this latter situation, we would not know, nor attempt to know, any user-identifiable data related to this set of SmartApps


We lean towards maximum disclosure. We believe that “anonymous and non-correlated tracking” is common and typical, so I am sharing the tracking source code here (minus the details of the secure Firebase database that is used for storage). We may modify this code slightly, but the anonymous characteristics will always be maintained.

def hash = new BigInteger(1,java.security.MessageDigest.getInstance("MD5").digest("${location.id}".getBytes())).toString(16).padLeft(32,"0")
def timestamp = [".sv": "timestamp"]
if( state?.refreshCount == NULL ) { state.refreshCount = 0 }
state.refreshCount = state.refreshCount + 1

def String instanceName = appInstance()
def map = [
	uri: appSettings.apiPath + "/${hash}.json", 
	body: ["time" : timestamp, server: getApiServerUrl(), ("${appInstance()}") : ["instanceID" : instanceName, "instanceTime" : timestamp, "refreshCount" : state?.refreshCount, tileCount: state.tileCount]], 
	headers : ["x-http-method-override" : "PATCH", auth : appSettings.apiKey, print : "silent"]
]
httpPostJson(map) {}

###Your questions regarding the above tracking policy and source code are welcome.
You can respond in this Topic or private email to: Support@SmartTiles.click


We reserve the right to change our tracking policy to less anonymous mechanisms, but we will provide at least 14 days notice and an “in-app” notification that would possibly allow users to opt out of tracking, or at least be informed enough to choose to discontinue their use of SmartTiles. At this time, we have no intention of more detailed tracking, and, in fact, personally identifiable tracking via the SmartTiles V5 design is impossible or very very difficult, so we don’t even have time or energy to consider it.

Inaccuracies or corrections will be updated in-place and/or noted in a soon to be published “Privacy Policy”.

4 Likes

:ok_hand: Sounds reasonable to me.

1 Like

I’ve been trying out Smart Tiles for several weeks and think it’s really a great application. I had very little difficulty getting it set up, thanks in part to help found in this forum.

Recently, I have run into an issue where the weather tile seems to be “stuck” on a previous date. The information never updates. Can anyone provide some guidance for resolving this issue?

1 Like

I want to reiterate the above announcement.

All we want to know if the number of concurrently used dashboards. This statistic is needed to determine back end server requirements for the next version of the product.

All we are collecting a hash key and time stamp, which does not identify a user in any way.

We respect your privacy. This information is for internal statistical analysis only and will never be shared or sold.

1 Like