-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
23 changed files
with
64 additions
and
165 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,66 +1,23 @@ | ||
<!-- | ||
Copyright 2022-2023 Deveel | ||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
http://www.apache.org/licenses/LICENSE-2.0 | ||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
--> | ||
|
||
# Deveel Webhooks Documentation | ||
|
||
Here you can find a documentation of the `Deveel Webhooks` framework, to help you getting started with the libraries and functions that compose it and to understand how it works. | ||
|
||
## Introduction | ||
|
||
## Basic Concepts | ||
|
||
To set the domain model of the framework, we need to introduce some basic concepts that are used in the framework. | ||
|
||
| Topic | Description | | ||
| ---------------------------------------------------- | ------------------------------------------ | | ||
| **[Webhook](concept_webhook.md)** | What is it a 'Webhook' and why I need it? | | ||
| **[Subscriptions](concept_webhook_subscription.md)** | How does a subscription to an event works? | | ||
| **[Senders](concept_webhook_sender.md)** | What is a sender of webooks? | | ||
| **[Receivers](concept_webhook_receiver.md)** | What is a receiver of webooks? | | ||
| **[Notifications](concept_webhook_notification.md)** | What is a notification of events? | | ||
|
||
## Basic Usage | ||
|
||
The following tutorials will guide you through the basic usage of the framework, showing how to use the different components to send, receive and manage webhooks. | ||
|
||
| Topic | Description | | ||
| ------------------------------------ ------------------- | --------------------------------------------------------------------- | | ||
| **[Getting Started](getting_started.md)** | Getting started with `Deveel Webhooks` | | ||
| **[Sending Webhooks](basic_usage_send.md)** | Manually sending webhooks (no subscriptions) | | ||
| **[Subscription Management](basic_usage_management.md)** | Manage subscriptions to events (no sending) | | ||
| **[Notify Webhooks](basic_usage_notify.md)** | Notify webhooks subscribers (management, transformations and sending) | | ||
| **[Receiving Webhooks](basic_usage_receive.md)** | Receive webhooks from external sources | | ||
|
||
## Advanced Usage | ||
|
||
A more advanced usage of the framework is possible by implementing custom components that can be used to extend the framework functionalities. | ||
The framework is composed by a set of libraries that can be used, at different degrees, to implement a system that allows applications to send and receive webhooks. | ||
|
||
| Topic | Description | | ||
| ----------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | | ||
| **[Filtering Subscriptions](advanced_usage_filters.md)** | Allow subscribers to filter webhooks on dynamic parameters | | ||
| **[Custom Data Factories](advanced_usage_custom_datafactory.md)** | Implement a component that transforms event data | | ||
| **[Custom Receivers](advanced_usage_custom_receiver.md)** | Implement parsers for receiving webhooks | | ||
| **[Using MongoDB Data Layers](advanced_usage_mongodb.md)** | Use the MongoDB data layer for the persistence of the webhook information model | | ||
| **[Using Entity Framework Data Layers](advanced_usage_ef.md)** | Use the Entity Framework data layer for the persistence of the webhook information model | | ||
* **Sending Webhooks** - Using libraries of the framework you can send webhooks to receivers, based on your own logic and rules. | ||
* **Receiving Webhooks** - The framework provides a set libraries implementing the capabilities for receiving webhooks from senders, reacting to events from external systems (such as Twilio, SendGrid, Facebook, etc.). | ||
* **Notifications** - The framework provides a set of libraries that can be used to manage subscriptions to events, notify subscribing applications of events occurred in your system. | ||
|
||
## Receivers | ||
--- | ||
|
||
The framework provides a set of libraries that can be used to receive webhooks from external sources. | ||
Read more about this framework: | ||
|
||
| Receiver | Description | | ||
| ------------------------------------ | -------------------------------------------------- | | ||
| **[Facebook](facebook_receiver.md)** | Receive webhooks from Facebook Messenger | | ||
| **[SendGrid](sendgrid_receiver.md)** | Receive webhooks and emails from SendGrid | | ||
| **[Twilio](twilio_receiver.md)** | Receive webhooks and SMS/WhatsApp messages from Twilio | | ||
| Topic | Description | | ||
| ------ | ------------- | | ||
| **[Concepts](concepts/README.md)** | A list of basic concepts used in the framework | | ||
| **[Getting Started](getting_started.md)** | A quick guide to start using the framework | | ||
| **[Sending Webhooks](send_webhooks.md)** | Sending webhooks messages to receivers | | ||
| **[Receiving Webhooks](receivers/README.md)** | Receiving webhooks from senders | | ||
| **[Notifications](notifications/README.md)** | Notify subscribing applications of events occurred in your system | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# Concepts | ||
|
||
The following concepts are used in this project: | ||
|
||
| Topic | Description | | ||
| ------- | ------------- | | ||
| **[Webhook](webhook.md)** | What is it a 'Webhook' and why I need it? | | ||
| **[Subscriptions](webhook_subscription.md)** | How does a subscription to an event works? | | ||
| **[Senders](webhook_sender.md)** | What is a sender of webooks? | | ||
| **[Receivers](webhook_receiver.md)** | What is a receiver of webooks? | | ||
| **[Notifications](webhook_notification.md)** | What is a notification of events? | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Webhook Notifications | ||
|
||
The notification process of a webhook introduces elements of automation, putting together the _[subscription management](webhook_subscription_management.md)_ and the _[sending of webhooks](../sending-webhooks/README.md)_ processes, and an optional step of _[data transformation](custom_datafactory.md)_ (to resolve event information in a full formed object to be transferred). | ||
|
||
The _Deveel Webhook_ framework implements these functions through an instance of the `IWebhookNotifier<TWebhook>` service, that uses a `IWebhookSubscriptionResolver` and the `IWebhookSender<TWebhook>` instance configured. |
16 changes: 0 additions & 16 deletions
16
docs/advanced_usage_custom_datafactory.md → docs/notifications/custom_datafactory.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.