Per some user requests, I’m currently working on updating my mobile presence app to work with the latest SmartThings version and I’m just kinda looking for some feedback here…
It seems like I would pretty much be able to accomplish everything that I need done with the “cloud connector” integration. Does anyone have any experience with integrating community projects this way? It looks like most community stuff is using “channel invites” but it seems like these are only for drivers (unless I’m missing something here). If I was to go the Lua route, would the channel invites still apply since it’s for a SmartApp not just a driver? Do these channel invites even exist for the cloud connector integration type? I would like to do this in a way that makes the transition from the old groovy code to the new stuff as smooth as possible.
I’m just kinda starting to get into this so any feedback / words of wisdom would be appreciated
I took a quick look at your project and saw it gets information from an app and you need to make requests to its cloud.
Based on this:
Yes, a channel is where you can publish the drivers and you can invite others to that channel so they have access to them.
No, if you want to share your project, you’ll need to ask users to register your cloud-connector in each of their accounts and publish them for themselves.
The only ones that can be accessed through the app are those certified by device manufacturers.
You can’t make requests from an Edge driver to URLs that require Internet, only to local IP addresses/URLs.
Let me check some details with the engineering team to see if there’s an alternative for this.
Thanks for the info. So what you’re saying is that anything that I have to have users create the integration completely on their own including custom capabilities if necessary? I’m not too far into this yet so maybe that’s not as much as I’m thinking it is, but as of now, that doesn’t seem like the most user friendly option.
I think it would be really cool to offer something similar to channels for other integration types. It seems like drivers are really the only integration that has some type of “community friendly” deployment method. In my opinion, this has a lot of potential to really hurt the majority of community integrations.
Let me know what you find out from the engineering team. Maybe there could at least the possibility to export integrations to JSON and reimport them or something.
I don’t know for sure, but I suspect it’s because Edge drivers will be hosted on the individual hub, and they are probably concerned that there isn’t enough processing power to also host custom smartapps there. So they want you to find a different hosting option for custom smartapps, whether it’s a hosting service or a local server.
They already have a lot of limits for how many edge drivers you can have, how many devices, etc., which all look designed to keep customers from overloading the hub.
I guess to clarify what I mean is that I think there should be a better way for other people to setup community made SmartApps (hosted somewhere else or not) than going through the entire configuration process on the developer site themselves. With groovy, worst case it was just copy / paste some code. With this, there are potentially lots of things that have to be set manually which isn’t the most user friendly thing for someone that isn’t familiar with how it all works.
Alot of the changes are really nice but they just seem targeted at device manufacturers wanting to setup their own cloud to cloud integrations and not members of the community doing this as a hobby. I know official OEM support is important and maybe that’s something Samsung can help with being a pretty big company and all but I wouldn’t underestimate the value of community content.
As far as running locally overloading the hub, Hubitat runs everything locally on the hub and doesn’t seem to have that issue. Not to try and promote another platform because I’m sure there’s enough of that already but somehow I suspect that wouldn’t be an issue.
Hubitat has twice the flash memory of the v3 ST hub (8 gig vs 4) and still has historically had issues with lockups because of custom code. A number of their power users run multiple hubs just to distribute the load. So I definitely wouldn’t make any assumptions about the capacity of an Aeotec WASH hub based on what Hubitat can do.
In addition, Samsung may simply want to isolate the customer service issues to make it very clear what is being caused by custom code as opposed to the core platform. but that’s just a guess.
Bottom line: it was pretty easy to write custom smartapps and have them hosted for free in the Groovy cloud. Now it’s more complicated.
No, they just need to register the URLs of your connector. I mean this section:
The device profile (where you select the capabilities) is only created by the developer (you need to publish it once you finish your tests for others to use it).
Note: Something to consider is that once you publish a device profile, you can’t modify it and you need to create another one.
But I’m still pending to see if there’s another option
Ok so that’s alot better than I was thinking it was
Thanks for looking into it and just let me know if you find a better option.
In that setup, you yourself as the smartapp author have to provide the hosting for the smartapp, so you need to be prepared for any associated costs if your smartapp becomes very popular.