Skip to content

Commit bfdcfe6

Browse files
committed
more fixes
1 parent 3dd43d4 commit bfdcfe6

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/pages/docs/guides/chat/bring-own-database.mdx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ We will explain each in detail, and provide code examples for each. This is an o
1616

1717
This article covers the following options:
1818

19-
1. Using [outbound webhooks](/docs/platform/integrations/webhooks). This can be a [HTTP endpoint](/docs/platform/integrations/webhooks/generic), [AWS Lambda](/docs/platform/integrations/webhooks/lambda), [Azure Function](/docs/platform/integrations/webhooks/azure), [Google Function](/docs/platform/integrations/webhooks/gcp-function) and others.
20-
2. Using [outbound streaming](/docs/platform/integrations/streaming). Stream messages to your own [Kafka](/docs/platform/integrations/streaming/kafka), [Kinesis](/docs/platform/integrations/streaming/kinesis), [AMQP](/docs/platform/integrations/streaming/amqp), [Pulsar](/docs/platform/integrations/streaming/pulsar) or [SQS](/docs/platform/integrations/streaming/sqs).
19+
1. Using [outbound webhooks](/docs/platform/integrations/webhooks). [HTTP endpoint](/docs/platform/integrations/webhooks/generic), [AWS Lambda](/docs/platform/integrations/webhooks/lambda), and others.
20+
2. Using [outbound streaming](/docs/platform/integrations/streaming). Stream to your own [Kafka](/docs/platform/integrations/streaming/kafka), [Kinesis](/docs/platform/integrations/streaming/kinesis), and others.
2121
3. Using an [Ably queue](/docs/platform/integrations/queues).
2222
4. Publishing via your own servers.
2323
5. Using the Chat History endpoint.
@@ -63,14 +63,15 @@ Ably can forward messages to your own system via a webhook. This is the simplest
6363

6464
Read the guide on [outbound webhooks](/docs/platform/integrations/webhooks) for more details on how to setup the webhook with Ably for the platform of your choice.
6565

66-
All webhook integrations allow you to use a regex filter on the channel name to control which channels the webhook should be triggered for. To enable the webhook to trigger for all chat rooms, use the `.*::\$chat$` regex. All chat rooms are backed by a channel suffixed with `::$chat`. For chat room `foo` the channel name is `foo::$chat`.
66+
All webhook integrations allow you to use a regex filter on the channel name to control which channels the webhook should be triggered for. Use a common prefix in the name of chat rooms that you want to trigger a webhook for, and use the prefix as the filter.
6767

6868
Use `channel.message` as the event type.
6969

7070
You need to consider:
71-
- Redundancy. In case of failure, Ably will retry delivering the message to your webhook, but only for a short period of time.
71+
- Redundancy. In case of failure, Ably will retry delivering the message to your webhook, but only for a short period of time. You can see errors in the [`[meta]log` channel](/docs/platform/errors#meta).
7272
- Ordering. Messages can arrive out-of-order. Mitigated by the fact that they are globally sortable by their `serial` and `version.serial`. In rare cases, this can cause inconsistencies for reaction summaries if those are of interest to you.
7373
- Consistency. Missing webhook calls will lead to inconsistencies between your database and Ably, which can be difficult to resolve.
74+
- [At-least-once delivery](/docs/platform/architecture/idempotency#protocol-support-for-exactly-once-delivery). You need to be able to handle duplicate messages. Deduplication can be done by checking `serial` and `version.serial`.
7475

7576
## Using outbound streaming
7677

@@ -93,7 +94,7 @@ Ably ensures that each message is delivered to only one consumer even if multipl
9394
Benefits of using an Ably queue:
9495

9596
- You can consume it from your servers, meaning overall this is fault-tolerant. Ably takes care of the complexity of maintaining a queue.
96-
- You can use multiple queues and configure which channels go to which queue (use `.*::\$chat$` regex to match all chat rooms).
97+
- You can use multiple queues and configure which channels go to which queue via regex filters on the channel name.
9798
- If your systems suffer any downtime, you will not miss anything (up to the queue max size).
9899

99100
You need to consider:

0 commit comments

Comments
 (0)