Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generalized webhook facility #73

Open
windley opened this issue Nov 5, 2014 · 0 comments
Open

Generalized webhook facility #73

windley opened this issue Nov 5, 2014 · 0 comments

Comments

@windley
Copy link
Member

windley commented Nov 5, 2014

This email’s regarding my tweet yesterday about the Webhook or Websocket based event subscriptions. I’d love an interface that allowed me to be notified of events that occur within the KRE system on an external system. For example:

HTTP POST https://sky.kobj.net/{ECI}/{
Authorization: Bearer {OAuth Token}
{
“type”: “subscription”,
“domain”: “automobile”,
“event”: “start”,
“callbackUrl”: “https://my.ownsystem.com/callbacks/h34nthpr238”
}

It would then respond with something like:

{
“subscriptionId”: “stnh134nh”
}

This would then send a web hook with the appropriate information to the callbackUrl specified in the subscription request whenever a matching event occurs. The web socket interface would look similar, only the subscription and notifications would occur via web socket instead of via web hooks.

I see huge advantages to this for two reasons. The first is that it allows clients to receive events in real time, enabling live UIs that change in near realtime. Imagine seeing the speed and location of my car update on the Fuse dashboard as I drive.

The second is enabling external systems to consume and receive events in whatever language and framework people want. This would be a pivot for Kynetx, since KRE can be an event bus in the sky as well as a rules processing engine.

Jessie A. Morris

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant