Make "Custom Tiles" have access to platform resources like Variables and Things

Make “Custom Tiles” have access to platform resources like Variables and Things. For attribute based custom tiles doing this would eliminate the need to use Hubitat Maker-API and would give ST users more options.
Maybe a new field in the ‘Settings’ where you can select one or multiple Things or Variables that can be accessed in the HTML. Or a separate drop down or what ever.

Thanks for sharing the idea! Do you have some example use-cases?

Just trying to understand the use cases to better understand how you’d want to use the data (which helps inform the design). It’s something I’ve had in the back of my mind, but I didn’t have enough use cases to come up with a reasonable way to expose data from the device while still keeping the exposed ‘surface’ minimized. In other words, I’d prefer to only expose what the custom tile might need.

Furthermore, keeping things restricted would help with the ‘eventing’ setup that would be needed. For example, if a Custom Tile needs access to a particular attribute, the system would need to know about that so it could setup the relevant event subscriptions.

Use cases:

  1. Avoid using Hubitat Maker API to grab attributes that Sharptools already has onboard. Avoid figuring out what Hubitat device number and the API key. Simplify things. Avoid having to update Maker API if new device was added.

  2. Smartthings users can now grab Things into custom tile.

  3. Access to sharptool variables or other.

  4. Update Things in real time as they are on dashboard rather than a specified HTML interval.

Basically make it easier and open to others besides hubitat for Things.
Avoid the Maker API which is messy.

Thanks for sharing. This is good feedback about what you could do with a feature like this. Do you have specific use-cases in mind? In other words, is there something specific you’re trying to build that led you to requesting this feature?

Or maybe something you’ve already built? Just trying to get more context so we can analyze against the potential constraints I mentioned above.

For example, in your Gauge Tile and Area Plot tiles, you’re generally looking at a single attribute at time, but from what I can tell you don’t necessarily know which attribute it is ahead of time until the user has specified it. From what I can tell, it seems like you would be OK even if you relinquished control to the user to specify the attributes they wanted to authorize.

For other use cases, I could see where a developer might be developing a custom tile for a specific capability or attributes. They might say they want a DEVICE as a setting and optionally specify a filter to restrict it to devices that have the ‘Audio Track Data’ capability or devices that have a ‘temperature’ attribute for example. I’m trying to better understand these scenarios to make sure any potential design accounts for them if possible.

I want to cut out the middleman, namely Maker API. But im doing just fine the way it is except the extra steps to set up Maker API which could be eliminated which is what this request is about. Im not a SW developer, dont know all the details in the background. The use case is make it easier for me/others without the extra steps, and let the ST guys in on custom tiles with hub attributes. Im sure you guys have ideas that far exceed what im thinking.
By the way ‘Area plot’ is rock solid, but Hubitat only with Maker API

1 Like

I tried to make a multiple device Hubitat Maker API attribute plot but couldn’t figure it out with the current set-up. Might revisit it someday

I can see this being useful for my Alarm keypad also

@josh , I would like this feature as well. My use case would be to read the available presets of my Sonos speakers and then provide them as selectable options for playback.

For anyone who is interested in this feature, I just wanted to make sure it’s clear that this request is for the Custom Tiles developer feature.

If that covers what you’re looking for, make sure to scroll up to the top of the thread and cast a vote! :white_check_mark:

1 Like

My use case is to be able to dynamically update my location. I don’t live in a standard bricks and sticks, rather travel full time in an RV. I currently use MacroDroid to query my tablet’s GPS coordinates, update variables like $locationLatitude and $locationLongitude through a post which then feeds a custom weather tile by calling APIs with those coordinates. I’d love to be able to update either URL tiles or Custom tiles with dynamic links and inject those coordinates without having to change them every few weeks.



For the map reasons above.

@joah here’s another use case. I’ve been working on a life360 alternative map but I can’t get the data into the custom tile from Tasker. I can post and send it to a variable but can’t get that data straight into the tile. Alternatively would there be a way to have the custom tile handle HTTP post requests directly?