Custom Webhook?

Odd question, but figured I’d ask.

On top of SharpTools, I am also pushing my SmartThings devices to Apple HomeKit using “HomeBridge”
An awesome gentleman created a SmartThings Plugin which does this perfectly - and is Edge compatible.

Just recently he created a subscription based custom polling webhook to prevent the need for HomeBridge to “poll” devices for a status.

You can read about the setup here: https://www.kleinstudios.net (How To)

So with that in mind…
Is it possible for SharpTools to leverage an external polling WebHook?
Is there any advantage to it?

Yes, SharpTools can receive Webhook events via an HTTP Trigger in SharpTools Rules. You can find more details in the following article:

SharpTools can also emit Webhooks via the HTTP action in SharpTools Rules. You can find more details on that here:

From what I gather, it sounds like the goal of the project you linked to is to emit the events from SmartThings and forward those events into Homebridge, right? Did this just cause some curiosity and make you wonder if SharpTools also had webhook functionality? Or did you have something in mind with combining these concepts?

As for reasons for being able to receive webhooks (HTTP Trigger) or send webhooks (HTTP Actions), I suspect that the examples in the documentation helps cover that. There’s a ton of software and services out there which offer HTTP APIs / webhooks, so this greatly opens up the possibilities for integrations.

You can use inbound webhooks (HTTP Trigger) to receive events from other apps like IFTTT, Tasker, Blue Iris, etc. We even recently made some tweaks to better support the somewhat quirky format that Plex Media Player uses as one of our community members wanted to react to the playing and pausing of content to automate lights in their media room.

Outbound webhooks (HTTP Actions) have a similar utility in that you can integrate with a wide variety of external services. From pushing data to IFTTT, WebCoRE, Zapier, or similar ‘rule’ services to retrieving data from your favorite services (Weather, Joke of the Day, esoteric smart devices) or forwarding actions on to other platforms (eg. triggering scenes in an unsupported platform like Homeseer).

The sky’s the limit as long as the service you want to interact with has some sort of HTTP interface (REST API / Webhooks). :smiley:

Thank you for such a detailed response…

My ask was from the stand point that - for users with a large amount of devices (more than 50) - it may be problematic for SharpTools to “poll” or “get” the status for every device. I recall in the past, some companies (LiftMaster / Ford) have blocked items that “poll” their servers to often…

So given this assumption, and since I’m already paying for a subscription, I was curious if SharpTools could leverage this external “webhook” to maybe? speed up the response of each tile as statuses change.

SharpTools uses an event driven approach and does not poll. Internally we use a webhook event subscription approach similar to what’s used in the example project you linked.

Since we have a relationship with SmartThings, it significantly simplifies things for end-users and we manage all the magic of the webhooks behind the scenes for you. All you have to do is authorize your connection and we take care of the rest behind the scenes. :slight_smile:

Awesome!

I had a feeling this was the case, but figured I’d ask anyways.

1 Like