From cf0e7addf21503fb78b28237a5a30dea2672d123 Mon Sep 17 00:00:00 2001 From: eldadfux Date: Tue, 28 Apr 2026 19:18:20 -0400 Subject: [PATCH 1/5] feat(realtime): introduce message-based protocol for subscriptions - Added a new blog post detailing the transition to a single persistent WebSocket for Appwrite Realtime, allowing for incremental subscription changes without reconnecting. - Updated changelog to reflect the new Realtime features, including per-subscription lifecycle management and in-place updates. - Enhanced documentation across various SDKs to clarify subscription management and lifecycle handling. This update improves performance and usability for developers using Appwrite's Realtime features. --- .../+page.markdoc | 321 ++++++++++++++++++ .../changelog/(entries)/2026-04-29.markdoc | 27 ++ src/routes/docs/apis/realtime/+page.markdoc | 4 +- .../realtime/authentication/+page.markdoc | 2 +- .../apis/realtime/subscribe/+page.markdoc | 308 ++++++++++++++++- .../cover.jpg | Bin 0 -> 62175 bytes 6 files changed, 653 insertions(+), 9 deletions(-) create mode 100644 src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc create mode 100644 src/routes/changelog/(entries)/2026-04-29.markdoc create mode 100644 static/images/blog/announcing-message-based-realtime-sdk/cover.jpg diff --git a/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc b/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc new file mode 100644 index 0000000000..9c356efc57 --- /dev/null +++ b/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc @@ -0,0 +1,321 @@ +--- +layout: post +title: "One WebSocket, many subscriptions: smarter Realtime in Appwrite" +description: "Appwrite Realtime now keeps one persistent WebSocket and drives subscriptions with messages instead of cramming state into the connection URL, so you are not capped by URL length and you avoid unnecessary reconnects. Client SDKs expose unsubscribe(), update(), and disconnect() for clearer lifecycle control." +date: 2026-04-28 +cover: /images/blog/announcing-message-based-realtime-sdk/cover.jpg +timeToRead: 9 +author: eldad-fux +category: announcement +featured: false +--- + +Realtime features are where users feel your app is “alive”: collaborative edits, live dashboards, and instant feedback when data changes. That experience depends on how predictable your subscription lifecycle is. If every tweak to what you listen for forces a full reconnect, you pay in latency, battery, and mental overhead. + +**Appwrite Realtime** now uses a **message-based protocol** on a **single persistent WebSocket**. The service applies subscription changes incrementally over the socket instead of treating the WebSocket URL as the source of truth for what you listen to. + +Previously, subscription details were largely carried in the **query string of the Realtime WebSocket URL**. That tied you to **URL length limits** enforced by browsers, servers, and proxies, so in practice you could only combine so many channels and so much metadata before the connection string itself became a bottleneck. That friction grew once we shipped [Realtime queries](/blog/post/announcing-realtime-queries) to filter subscription events on the server, and larger query payloads made the URL ceiling easier to hit. Channels and queries are now sent **over the established socket**, so you are not capped by query-string size when scaling up listeners or filters. + +# One connection, many subscriptions + +You create a `Realtime` instance from your configured `Client`, then call `subscribe` for each logical listener. The same **two-channel** idea looks like this across Appwrite clients (tabs below). + +{% multicode %} +```client-web +import { Client, Realtime, Channel } from "appwrite"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') + .setProject(''); + +const realtime = new Realtime(client); + +const sub1 = await realtime.subscribe(Channel.files(), response => { + console.log(response); +}); + +const sub2 = await realtime.subscribe(Channel.account(), response => { + console.log(response); +}); +``` + +```client-flutter +import 'package:appwrite/appwrite.dart'; + +final client = Client() + .setEndpoint('https://.cloud.appwrite.io/v1') + .setProject(''); + +final realtime = Realtime(client); + +final sub1 = realtime.subscribe([Channel.files()]); +final sub2 = realtime.subscribe([Channel.account()]); + +sub1.stream.listen((response) { + print(response); +}); + +sub2.stream.listen((response) { + print(response); +}); +``` + +```client-apple +import Appwrite +import AppwriteModels + +let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + +let realtime = Realtime(client) + +let sub1 = realtime.subscribe(channels: [Channel.files()]) { response in + print(String(describing: response)) +} + +let sub2 = realtime.subscribe(channels: [Channel.account()]) { response in + print(String(describing: response)) +} +``` + +```client-android-kotlin +import io.appwrite.Client +import io.appwrite.services.Realtime +import io.appwrite.extensions.Channel + +val client = Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + +val realtime = Realtime(client) + +val sub1 = realtime.subscribe(Channel.files()) { + print(it.payload.toString()) +} + +val sub2 = realtime.subscribe(Channel.account()) { + print(it.payload.toString()) +} +``` + +```client-android-java +import io.appwrite.Channel; +import io.appwrite.Client; +import io.appwrite.models.RealtimeResponseEvent; +import io.appwrite.models.RealtimeSubscription; +import io.appwrite.services.Realtime; +import kotlin.Unit; + +Client client = new Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject(""); + +Realtime realtime = new Realtime(client); +String accountChannel = Channel.Companion.account(); + +RealtimeSubscription sub1 = realtime.subscribe( + new String[] {"files"}, + (RealtimeResponseEvent response) -> { + System.out.println("files " + response); + return Unit.INSTANCE; + } +); + +RealtimeSubscription sub2 = realtime.subscribe( + new String[] {accountChannel}, + (RealtimeResponseEvent response) -> { + System.out.println("account " + response); + return Unit.INSTANCE; + } +); +``` + +{% /multicode %} + +Unsubscribing one handle **does not** drop unrelated listeners: the Realtime service keeps the shared connection and removes only what you asked for. The **Web SDK** exposes that as `unsubscribe()` on each handle and `disconnect()` when you want the socket closed entirely. Other SDKs use their own names (often `close()` on the subscription); check your version and the [subscribe documentation](/docs/apis/realtime/subscribe). + +{% multicode %} +```client-web +await sub1.unsubscribe(); // only sub1 stops receiving events +await sub2.unsubscribe(); // only sub2 + +// When your UI is done with Realtime (for example on unmount): +realtime.disconnect(); +``` + +```client-flutter +sub1.close(); +sub2.close(); +``` + +```client-apple +sub1.close() +sub2.close() +``` + +```client-android-kotlin +sub1.close() +sub2.close() +``` + +```client-android-java +sub1.close(); +sub2.close(); +``` + +{% /multicode %} + +# Update in place, no reconnect storm + +Changing channels or queries no longer has to mean closing the world and opening it again. In the **Web SDK**, call **`update()`** on the subscription handle so the server adjusts what it sends while the WebSocket stays up. On **Flutter, Apple, and Android**, use a new **`subscribe`** with the channels you need, wire up the new listener, then **`close()`** the previous handle (see [Subscribe](/docs/apis/realtime/subscribe#update-a-subscription)) until your SDK exposes the same in-place API. + +{% multicode %} +```client-web +import { Client, Realtime, Channel, Query } from "appwrite"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') + .setProject(''); + +const realtime = new Realtime(client); + +const subscription = await realtime.subscribe(Channel.files(), response => { + console.log(response); +}); + +await subscription.update({ + channels: [Channel.tablesdb('').table('').row('')], + queries: [Query.equal('title', 'todo')] +}); +``` + +```client-flutter +import 'package:appwrite/appwrite.dart'; + +final client = Client() + .setEndpoint('https://.cloud.appwrite.io/v1') + .setProject(''); + +final realtime = Realtime(client); + +final subscription = realtime.subscribe([Channel.files()]); + +subscription.stream.listen((response) { + print(response); +}); + +final updated = realtime.subscribe([ + Channel.tablesdb('').table('').row('') +]); + +updated.stream.listen((response) { + print(response); +}); + +subscription.close(); +``` + +```client-apple +import Appwrite +import AppwriteModels + +let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + +let realtime = Realtime(client) + +let subscription = realtime.subscribe(channels: [Channel.files()]) { response in + print(String(describing: response)) +} + +let updated = realtime.subscribe(channels: [ + Channel.tablesdb("").table("").row("") +]) { response in + print(String(describing: response)) +} + +subscription.close() +``` + +```client-android-kotlin +import io.appwrite.Client +import io.appwrite.services.Realtime +import io.appwrite.extensions.Channel + +val client = Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + +val realtime = Realtime(client) + +val subscription = realtime.subscribe(Channel.files()) { + print(it.payload.toString()) +} + +val updated = realtime.subscribe( + Channel.tablesdb("").table("").row("") +) { + print(it.payload.toString()) +} + +subscription.close() +``` + +```client-android-java +import io.appwrite.Client; +import io.appwrite.models.RealtimeResponseEvent; +import io.appwrite.models.RealtimeSubscription; +import io.appwrite.services.Realtime; +import kotlin.Unit; + +Client client = new Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject(""); + +Realtime realtime = new Realtime(client); + +RealtimeSubscription subscription = realtime.subscribe( + new String[] {"files"}, + (RealtimeResponseEvent response) -> { + System.out.println(response); + return Unit.INSTANCE; + } +); + +RealtimeSubscription updated = realtime.subscribe( + new String[] { + "tablesdb..tables..rows." + }, + (RealtimeResponseEvent response) -> { + System.out.println(response); + return Unit.INSTANCE; + } +); + +subscription.close(); +``` + +{% /multicode %} + +That makes patterns like “user switched tabs” or “filter changed” map naturally to `update` or an extra `subscribe`, without reconnect churn for every transition. + +# Why this matters + +- **Clearer ownership**: Each subscription is its own handle with a predictable lifecycle. +- **Better performance**: Fewer full reconnects when your app state shifts. +- **Simpler UI code**: Mount paths call `subscribe` (or `update`), unmount paths call `unsubscribe` or `disconnect`, without special cases to avoid nuking unrelated listeners. + +The wire format is incremental over messages rather than driving everything through subscription URLs alone, which keeps the client and server aligned as your feature set grows. + +# Try it + +For a hands-on playground against a real project, see the [Appwrite Realtime harness](https://github.com/ArnabChatterjee20k/appwrite-realtime-harness) maintained by the community. + +# Learn more + +- [Introducing Realtime queries: Server-side event filtering for subscriptions](/blog/post/announcing-realtime-queries) +- [Realtime API overview](/docs/apis/realtime) +- [Subscribe and manage channels](/docs/apis/realtime/subscribe) +- [Realtime channels and helpers](/docs/apis/realtime/channels) diff --git a/src/routes/changelog/(entries)/2026-04-29.markdoc b/src/routes/changelog/(entries)/2026-04-29.markdoc new file mode 100644 index 0000000000..6e24c6a01b --- /dev/null +++ b/src/routes/changelog/(entries)/2026-04-29.markdoc @@ -0,0 +1,27 @@ +--- +layout: changelog +title: "Realtime: persistent WebSocket and message-driven subscriptions" +date: 2026-04-29 +--- + +Appwrite **Realtime** now keeps a **single WebSocket** per client session and applies **incremental, message-based** subscription changes instead of encoding subscription state mainly in the connection URL and reconnecting for every add or remove. + +Previously, subscription details were often encoded in the **WebSocket URL query string**. That tied you to **URL length limits** in browsers, proxies, and servers, which capped how many [channels](/docs/apis/realtime/channels) you could combine and how much metadata you could send on one connection. It also squeezed [Realtime queries](/blog/post/announcing-realtime-queries) for server-side filtering, because every extra filter still had to fit in the same limited URL. Channels and queries are now carried **over the open socket**, so you are not constrained by query-string size the same way. + +In **client SDKs**, you can now: + +- **Per-subscription lifecycle**: Call `unsubscribe()` on a subscription handle to stop that listener only; other subscriptions on the same `Realtime` instance keep running. +- **`update()`**: Change `channels` and `queries` for an existing subscription without tearing down the whole client when the server can apply the change in place. +- **`disconnect()`**: Close the WebSocket when your app is done with Realtime (for example on component unmount), after you have unsubscribed or when you want a full teardown. + +Together, the Realtime protocol change and matching SDK APIs reduce unnecessary reconnects, make UI-driven subscription changes easier to reason about, and move subscription state off the WebSocket URL onto incremental messages over the open connection. + +Read the announcement on the blog for context and examples, and see the [Realtime documentation](/docs/apis/realtime) for how this maps to your platform. + +{% arrow_link href="/blog/post/announcing-message-based-realtime-sdk" %} +Read the blog announcement +{% /arrow_link %} + +{% arrow_link href="/docs/apis/realtime/subscribe" %} +Manage subscriptions in the docs +{% /arrow_link %} diff --git a/src/routes/docs/apis/realtime/+page.markdoc b/src/routes/docs/apis/realtime/+page.markdoc index b26d3ccdab..218c72b6e6 100644 --- a/src/routes/docs/apis/realtime/+page.markdoc +++ b/src/routes/docs/apis/realtime/+page.markdoc @@ -130,9 +130,9 @@ While the Realtime API offers robust capabilities, there are currently some limi ## Subscription changes {% #subscription-changes %} -The SDK creates a single WebSocket connection for all subscribed channels. Each time a channel is added or unsubscribed, the SDK currently creates a completely new connection and terminates the old one. +Client SDKs use a **single WebSocket** per `Realtime` client for all subscribed channels. Subscription changes are applied **incrementally over messages** where supported, so adding a listener, **updating** its channels or queries, or **unsubscribing** from one handle does not necessarily reconnect the whole client. Call **`disconnect()`** on `Realtime` when you intend to close the socket entirely (for example when tearing down a view or component). -Therefore, subscriptions to channels should always be managed alongside your application state so they are not unnecessarily recreated during component lifecycle changes. +Manage subscription handles alongside your application state so you unsubscribe or disconnect when listeners are no longer needed. See [Subscribe](/docs/apis/realtime/subscribe) for platform-specific APIs. ## Server SDKs {% #server-sdks %} diff --git a/src/routes/docs/apis/realtime/authentication/+page.markdoc b/src/routes/docs/apis/realtime/authentication/+page.markdoc index a60aff58d9..0ddd2fc49c 100644 --- a/src/routes/docs/apis/realtime/authentication/+page.markdoc +++ b/src/routes/docs/apis/realtime/authentication/+page.markdoc @@ -19,5 +19,5 @@ Using `Role.any()` on read permissions will allow any client to receive updates. When working with Realtime subscriptions and authentication, keep the following in mind: 1. **Create session first** - Always authenticate the user before creating subscriptions that require access to protected resources. -2. **Re-subscribe on session change** - If a user logs out and a new user logs in, you must close existing subscriptions and create new ones for the new session. +2. **Re-subscribe on session change** - If a user logs out and a new user logs in, you must remove existing subscriptions (for example `unsubscribe()` on each handle in the Web SDK, or `disconnect()` on `Realtime` when replacing the whole client) and create new ones for the new session. 3. **Handle session expiry** - If a session expires, subscriptions tied to that session will stop receiving updates. Listen for session-related errors and re-authenticate when needed. diff --git a/src/routes/docs/apis/realtime/subscribe/+page.markdoc b/src/routes/docs/apis/realtime/subscribe/+page.markdoc index 757ae58f99..2d9cf8fc45 100644 --- a/src/routes/docs/apis/realtime/subscribe/+page.markdoc +++ b/src/routes/docs/apis/realtime/subscribe/+page.markdoc @@ -4,7 +4,7 @@ title: Subscribe description: Learn how to subscribe to realtime events from Appwrite services. Subscribe to single or multiple channels and manage your subscriptions. --- -The Appwrite Realtime API lets you subscribe to events from any Appwrite service through [channels](/docs/apis/realtime/channels). You can subscribe to a single channel, multiple channels at once, and unsubscribe when you no longer need updates. +The Appwrite Realtime API lets you subscribe to events from any Appwrite service through [channels](/docs/apis/realtime/channels). You can subscribe to a single channel, multiple channels at once, and unsubscribe when you no longer need updates. On supported client SDKs (including the Web SDK), multiple subscriptions share one WebSocket and can be added, **updated**, or removed without reconnecting the whole client until you call **`disconnect()`** on `Realtime`. # Subscribe to a channel {% #subscribe-to-a-channel %} @@ -213,9 +213,298 @@ RealtimeSubscription subscription = realtime.subscribe( {% /multicode %} +# Multiple subscription handles {% #multiple-subscription-handles %} + +When you want **different callbacks** for different channels, call `subscribe` more than once on the same `Realtime` client. Each call returns its own handle. On supported SDKs, stopping or removing **one** handle does not stop the others on the same connection until you tear down the whole client (for example `disconnect()` in the Web SDK). + +## Subscribe twice on the same client {% #subscribe-twice-on-the-same-client %} + +{% multicode %} +```client-web +import { Client, Realtime, Channel } from "appwrite"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') + .setProject(''); + +const realtime = new Realtime(client); + +const sub1 = await realtime.subscribe(Channel.files(), response => { + console.log(response); +}); + +const sub2 = await realtime.subscribe(Channel.account(), response => { + console.log(response); +}); +``` + +```client-flutter +import 'package:appwrite/appwrite.dart'; + +final client = Client() + .setEndpoint('https://.cloud.appwrite.io/v1') + .setProject(''); + +final realtime = Realtime(client); + +final sub1 = realtime.subscribe([Channel.files()]); +final sub2 = realtime.subscribe([Channel.account()]); + +sub1.stream.listen((response) { + print(response); +}); + +sub2.stream.listen((response) { + print(response); +}); +``` + +```client-apple +import Appwrite +import AppwriteModels + +let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + +let realtime = Realtime(client) + +let sub1 = realtime.subscribe(channels: [Channel.files()]) { response in + print(String(describing: response)) +} + +let sub2 = realtime.subscribe(channels: [Channel.account()]) { response in + print(String(describing: response)) +} +``` + +```client-android-kotlin +import io.appwrite.Client +import io.appwrite.services.Realtime +import io.appwrite.extensions.Channel + +val client = Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + +val realtime = Realtime(client) + +val sub1 = realtime.subscribe(Channel.files()) { + print(it.payload.toString()) +} + +val sub2 = realtime.subscribe(Channel.account()) { + print(it.payload.toString()) +} +``` + +```client-android-java +import io.appwrite.Channel; +import io.appwrite.Client; +import io.appwrite.models.RealtimeResponseEvent; +import io.appwrite.models.RealtimeSubscription; +import io.appwrite.services.Realtime; +import kotlin.Unit; + +Client client = new Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject(""); + +Realtime realtime = new Realtime(client); +String accountChannel = Channel.Companion.account(); + +RealtimeSubscription sub1 = realtime.subscribe( + new String[] {"files"}, + (RealtimeResponseEvent response) -> { + System.out.println(response); + return Unit.INSTANCE; + } +); + +RealtimeSubscription sub2 = realtime.subscribe( + new String[] {accountChannel}, + (RealtimeResponseEvent response) -> { + System.out.println(response); + return Unit.INSTANCE; + } +); +``` + +{% /multicode %} + +## Remove a single handle {% #remove-a-single-handle %} + +The examples below assume `sub1` and `sub2` from the previous section. Closing or unsubscribing from **only** `sub1` leaves `sub2` subscribed. + +{% multicode %} +```client-web +await sub1.unsubscribe(); +// sub2 is still active on the same WebSocket. +``` + +```client-flutter +sub1.close(); +// sub2 continues to receive events. +``` + +```client-apple +sub1.close() +// sub2 continues to receive events. +``` + +```client-android-kotlin +sub1.close() +// sub2 continues to receive events. +``` + +```client-android-java +sub1.close(); +// sub2 continues to receive events. +``` + +{% /multicode %} + +When every handle is removed and you want the WebSocket closed entirely, use **`realtime.disconnect()`** in the Web SDK (shown in the [Unsubscribe](#unsubscribe) section). + +# Update a subscription {% #update-a-subscription %} + +In the **Web SDK**, you can change which [channels](/docs/apis/realtime/channels) and which Realtime [queries](/docs/apis/realtime/queries) an existing subscription uses without necessarily reconnecting the underlying WebSocket. + +On **Flutter, Apple, and Android**, use a new `subscribe` call with the channels you need, then `close()` the previous subscription handle, until your SDK version exposes an in-place update API for Realtime. + +{% multicode %} +```client-web +import { Client, Realtime, Channel, Query } from "appwrite"; + +const client = new Client() + .setEndpoint('https://.cloud.appwrite.io/v1') + .setProject(''); + +const realtime = new Realtime(client); + +const subscription = await realtime.subscribe(Channel.files(), response => { + // Callback will be executed on changes for all files. + console.log(response); +}); + +await subscription.update({ + channels: [Channel.tablesdb('').table('').row('')], + queries: [Query.equal('title', 'todo')] +}); +``` + +```client-flutter +import 'package:appwrite/appwrite.dart'; + +final client = Client() + .setEndpoint('https://.cloud.appwrite.io/v1') + .setProject(''); + +final realtime = Realtime(client); + +final subscription = realtime.subscribe([Channel.files()]); + +subscription.stream.listen((response) { + print(response); +}); + +final updated = realtime.subscribe([ + Channel.tablesdb('').table('').row('') +]); + +updated.stream.listen((response) { + print(response); +}); + +subscription.close(); +``` + +```client-apple +import Appwrite +import AppwriteModels + +let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + +let realtime = Realtime(client) + +let subscription = realtime.subscribe(channels: [Channel.files()]) { response in + print(String(describing: response)) +} + +let updated = realtime.subscribe(channels: [ + Channel.tablesdb("").table("").row("") +]) { response in + print(String(describing: response)) +} + +subscription.close() +``` + +```client-android-kotlin +import io.appwrite.Client +import io.appwrite.services.Realtime +import io.appwrite.extensions.Channel + +val client = Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + +val realtime = Realtime(client) + +val subscription = realtime.subscribe(Channel.files()) { + print(it.payload.toString()) +} + +val updated = realtime.subscribe( + Channel.tablesdb("").table("").row("") +) { + print(it.payload.toString()) +} + +subscription.close() +``` + +```client-android-java +import io.appwrite.Client; +import io.appwrite.models.RealtimeResponseEvent; +import io.appwrite.models.RealtimeSubscription; +import io.appwrite.services.Realtime; +import kotlin.Unit; + +Client client = new Client(context) + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject(""); + +Realtime realtime = new Realtime(client); + +RealtimeSubscription subscription = realtime.subscribe( + new String[] {"files"}, + (RealtimeResponseEvent response) -> { + System.out.println(response); + return Unit.INSTANCE; + } +); + +RealtimeSubscription updated = realtime.subscribe( + new String[] { + "tablesdb..tables..rows." + }, + (RealtimeResponseEvent response) -> { + System.out.println(response); + return Unit.INSTANCE; + } +); + +subscription.close(); +``` + +{% /multicode %} + # Unsubscribe {% #unsubscribe %} -If you no longer want to receive updates from a subscription, you can unsubscribe so that your callbacks are no longer called. Leaving old subscriptions alive and resubscribing can result in duplicate subscriptions and cause race conditions. +If you no longer want to receive updates from a subscription, remove that listener so your callbacks stop. Leaving duplicate subscriptions active can cause duplicate events and race conditions. {% multicode %} ```client-web @@ -232,8 +521,11 @@ const subscription = await realtime.subscribe(Channel.files(), response => { console.log(response); }); -// Closes the subscription. -await subscription.close(); +// Stops this subscription only; other subscriptions on the same Realtime client keep running. +await subscription.unsubscribe(); + +// When you are done with Realtime entirely (for example on component unmount): +realtime.disconnect(); ``` ```client-flutter @@ -258,13 +550,17 @@ subscription.close(); ```client-apple import Appwrite +import AppwriteModels let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + let realtime = Realtime(client) let subscription = realtime.subscribe(channels: [Channel.files()]) { response in // Callback will be executed on changes for all files. - print(response.toString()) + print(String(describing: response)) } // Closes the subscription. @@ -284,7 +580,7 @@ val realtime = Realtime(client) val subscription = realtime.subscribe(Channel.files()) { // Callback will be executed on changes for all files. - print(it.toString()) + print(it.payload.toString()) } // Closes the subscription. diff --git a/static/images/blog/announcing-message-based-realtime-sdk/cover.jpg b/static/images/blog/announcing-message-based-realtime-sdk/cover.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bf4d6f830bb80dc7a477cebc2694b99ce83fef9b GIT binary patch literal 62175 zcmb4qWmFtNv*^O&PLSZi9fG^Nv%umOg0r}La0~7(OMqpO1cGaj;O-Cz?hYY@0Lk0j z@7#0WpZm^vJyzRQUD7+#T~pQbcjfOEfIv-2RSAHE1OOl*Ho)HEB`dcv31qgLtHTs2Nl2zpbJn2$o;b)@f%Uxpa6i# z9RL7K{hzwGc>q9bGyp)h_CIxur2qha6adgN{Xcd8(u?G4h3;WwzC5OZmIwP zTw?%$Xa)elGW{Vc=ll;9z56W8>nzAi%{V#KXoWASECqA|@dr!NGq? zMoLWff|!K(9}^@Xq74cvCMqf>F)lVP@&9-E`vpLVfh>ap03y)?kO`51gh+n}0o4C) zClnykf7^<6~mD zb%;x;qRFS>bh31E^q2~Y1fx3eOqo%gM&^-99sWfzcFar#6qy268plN?&k`nui#$z2 z8HFi0NRCB8frvFkZx80Jpzxxctrh&Z0IJjz1;H}41vZcf2?XUcwTTJmzp6;7AX>1h z(Z!K*Vd3TUI*34w3(UxWi5L4q0~)#;JvGLJe$ia^nmf(N#K+GIFZ<`|T?@{pPc z10!-&`+I~CtMm}KM4zl5T~m!2&^Amb2ZUV=92)@4$F?EF{50eP;kMB9)2B4#)FjCSnSQZSFi_GgP%UcfZeY=T*lS%+t6#k)c1S^_>DWX8BiD`>w#i|r#`NHVY6%=Gy z6L_Og`k6;Cd*LM1Vh9|O4a%4;0TG-Y*_MDdlr=6aR{_yi5yH9^a%hBDC@6B_z&^hC zC={(8CZ0H30w`-ZA(E6zEEs36awJ#gMlJy;^K#0%c!VTG~9>J|v($ z8IwU|1NAW}M6qWcrQYGbYP)`3sgs<27;pW=X+Luz{g=$|uceSJp1Sp4Em-Is+unl?hwJe20aLy>Ec%?1Z9Do#do;e{&z-9<~# zgoA5s*S#IBz3&P#1q9%d&FeRIdZ0?SA8?X?7*aNKswu-VZXV2~)fd>aWhoh8fR31@4*<>m9c?#$;K^3wx zGCBl=Y8A4qv7kJ}s0ULkt0zX$C@qHN>4uddp52phzOZOQpcp+d1|@x_EZL$`n{N3# z1)QV&eYE36fUVXEa&a8ytS}8cr#-!~#tA4_|muFzBSfIgWgmh>o{tMv|`-F+Mu$ffevyw-bu( z1B&##;5amKS_H)VN+V%va@mv9dscP(V1)o3RQkOQtKeK)%5bM;nDBWii3%Op~Fa<59Z2`&D?j zzU~ICaYqo2qi@tKr@<}<`v+Ld_{NqtmrS{l9N)%A=2HcyVEpwzhQ?pVcwdrh}0WC${&0*a`6J`YB2?c?C4ZV)wttH6O&jRpSL

u3|vMR{hUdZgiIVX^-=+CM# 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 i`&qzncG5)36+ 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 Date: Wed, 29 Apr 2026 09:31:50 -0400 Subject: [PATCH 2/5] feat: update cover image for the "One WebSocket, many subscriptions" blog post and adjust cache configuration --- .optimize-cache.json | 1 + .../+page.markdoc | 2 +- .../cover.jpg | Bin 62175 -> 0 bytes .../cover.png | Bin 0 -> 55541 bytes 4 files changed, 2 insertions(+), 1 deletion(-) delete mode 100644 static/images/blog/announcing-message-based-realtime-sdk/cover.jpg create mode 100644 static/images/blog/announcing-message-based-realtime-sdk/cover.png diff --git a/.optimize-cache.json b/.optimize-cache.json index f80181b506..381ebb3967 100644 --- a/.optimize-cache.json +++ b/.optimize-cache.json @@ -188,6 +188,7 @@ "images/blog/announcing-init-faster-smoother-better/init-ticket.png": "fe4e16ef27d3fcba378c52882ce3458aab3f1de84cb183d39db577e5264ef905", "images/blog/announcing-inversion-queries/cover.png": "232f806b8b655f469cb5398ba3abce2074e959d2fb49b9782b1889b22f1ee16e", "images/blog/announcing-list-cache-ttl/cover.png": "ca1554dc34d1222b86ccc295252af8e07b2f635b9b10e1227a21fff81138e409", + "images/blog/announcing-message-based-realtime-sdk/cover.png": "e4b3a52364addc4ea060a6ff7eb59ce02aa2ae44875f4f7dad0eaede2c5c6849", "images/blog/announcing-new-push-notifications-features/cover.png": "a0c758cf6c8a95e09a0d2ca562b0775a50d34a4d691d675cda70e44ad21805ac", "images/blog/announcing-opt-in-relationship-loading/cover.png": "e16cc16ea6d968b29af19bcd6274741141584a7efe5e1bb18be19b77c3a380c8", "images/blog/announcing-phone-OTP-pricing/cover.png": "598d55359ca4cb2b46846a8fd76b1f051be7c5f3199b50ffa92a28e84e5f3d67", diff --git a/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc b/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc index 9c356efc57..b57edeb324 100644 --- a/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc +++ b/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc @@ -3,7 +3,7 @@ layout: post title: "One WebSocket, many subscriptions: smarter Realtime in Appwrite" description: "Appwrite Realtime now keeps one persistent WebSocket and drives subscriptions with messages instead of cramming state into the connection URL, so you are not capped by URL length and you avoid unnecessary reconnects. Client SDKs expose unsubscribe(), update(), and disconnect() for clearer lifecycle control." date: 2026-04-28 -cover: /images/blog/announcing-message-based-realtime-sdk/cover.jpg +cover: /images/blog/announcing-message-based-realtime-sdk/cover.png timeToRead: 9 author: eldad-fux category: announcement diff --git a/static/images/blog/announcing-message-based-realtime-sdk/cover.jpg b/static/images/blog/announcing-message-based-realtime-sdk/cover.jpg deleted file mode 100644 index bf4d6f830bb80dc7a477cebc2694b99ce83fef9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62175 zcmb4qWmFtNv*^O&PLSZi9fG^Nv%umOg0r}La0~7(OMqpO1cGaj;O-Cz?hYY@0Lk0j z@7#0WpZm^vJyzRQUD7+#T~pQbcjfOEfIv-2RSAHE1OOl*Ho)HEB`dcv31qgLtHTs2Nl2zpbJn2$o;b)@f%Uxpa6i# z9RL7K{hzwGc>q9bGyp)h_CIxur2qha6adgN{Xcd8(u?G4h3;WwzC5OZmIwP zTw?%$Xa)elGW{Vc=ll;9z56W8>nzAi%{V#KXoWASECqA|@dr!NGq? zMoLWff|!K(9}^@Xq74cvCMqf>F)lVP@&9-E`vpLVfh>ap03y)?kO`51gh+n}0o4C) zClnykf7^<6~mD zb%;x;qRFS>bh31E^q2~Y1fx3eOqo%gM&^-99sWfzcFar#6qy268plN?&k`nui#$z2 z8HFi0NRCB8frvFkZx80Jpzxxctrh&Z0IJjz1;H}41vZcf2?XUcwTTJmzp6;7AX>1h z(Z!K*Vd3TUI*34w3(UxWi5L4q0~)#;JvGLJe$ia^nmf(N#K+GIFZ<`|T?@{pPc z10!-&`+I~CtMm}KM4zl5T~m!2&^Amb2ZUV=92)@4$F?EF{50eP;kMB9)2B4#)FjCSnSQZSFi_GgP%UcfZeY=T*lS%+t6#k)c1S^_>DWX8BiD`>w#i|r#`NHVY6%=Gy z6L_Og`k6;Cd*LM1Vh9|O4a%4;0TG-Y*_MDdlr=6aR{_yi5yH9^a%hBDC@6B_z&^hC zC={(8CZ0H30w`-ZA(E6zEEs36awJ#gMlJy;^K#0%c!VTG~9>J|v($ z8IwU|1NAW}M6qWcrQYGbYP)`3sgs<27;pW=X+Luz{g=$|uceSJp1Sp4Em-Is+unl?hwJe20aLy>Ec%?1Z9Do#do;e{&z-9<~# zgoA5s*S#IBz3&P#1q9%d&FeRIdZ0?SA8?X?7*aNKswu-VZXV2~)fd>aWhoh8fR31@4*<>m9c?#$;K^3wx zGCBl=Y8A4qv7kJ}s0ULkt0zX$C@qHN>4uddp52phzOZOQpcp+d1|@x_EZL$`n{N3# z1)QV&eYE36fUVXEa&a8ytS}8cr#-!~#tA4_|muFzBSfIgWgmh>o{tMv|`-F+Mu$ffevyw-bu( z1B&##;5amKS_H)VN+V%va@mv9dscP(V1)o3RQkOQtKeK)%5bM;nDBWii3%Op~Fa<59Z2`&D?j zzU~ICaYqo2qi@tKr@<}<`v+Ld_{NqtmrS{l9N)%A=2HcyVEpwzhQ?pVcwdrh}0WC${&0*a`6J`YB2?c?C4ZV)wttH6O&jRpSL

u3|vMR{hUdZgiIVX^-=+CM# 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 i`&qzncG5)36+ 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 Date: Wed, 29 Apr 2026 11:01:41 -0400 Subject: [PATCH 3/5] chore(blog): update Realtime announcement cover image Made-with: Cursor --- .../+page.markdoc | 2 +- .../cover.jpg | Bin 0 -> 75297 bytes .../cover.png | Bin 55541 -> 0 bytes 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 static/images/blog/announcing-message-based-realtime-sdk/cover.jpg delete mode 100644 static/images/blog/announcing-message-based-realtime-sdk/cover.png diff --git a/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc b/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc index b57edeb324..9c356efc57 100644 --- a/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc +++ b/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc @@ -3,7 +3,7 @@ layout: post title: "One WebSocket, many subscriptions: smarter Realtime in Appwrite" description: "Appwrite Realtime now keeps one persistent WebSocket and drives subscriptions with messages instead of cramming state into the connection URL, so you are not capped by URL length and you avoid unnecessary reconnects. Client SDKs expose unsubscribe(), update(), and disconnect() for clearer lifecycle control." date: 2026-04-28 -cover: /images/blog/announcing-message-based-realtime-sdk/cover.png +cover: /images/blog/announcing-message-based-realtime-sdk/cover.jpg timeToRead: 9 author: eldad-fux category: announcement diff --git a/static/images/blog/announcing-message-based-realtime-sdk/cover.jpg b/static/images/blog/announcing-message-based-realtime-sdk/cover.jpg new file mode 100644 index 0000000000000000000000000000000000000000..95210f0ecc5caee472ee88c0f134719bb50ac348 GIT binary patch literal 75297 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 aNcXd>(^+1=)plm>;b6=VB~R=>Gyezh|5xz< literal 0 HcmV?d00001 diff --git a/static/images/blog/announcing-message-based-realtime-sdk/cover.png b/static/images/blog/announcing-message-based-realtime-sdk/cover.png deleted file mode 100644 index aa19d587ab182dc600adb3edf274d23a2ee0b553..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55541 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 Date: Wed, 29 Apr 2026 21:18:02 +0530 Subject: [PATCH 4/5] improvements to realtime docs + announcement --- .../+page.markdoc | 120 ++++++++---------- .../changelog/(entries)/2026-04-29.markdoc | 6 +- src/routes/docs/apis/realtime/+page.markdoc | 2 +- .../docs/apis/realtime/channels/+page.markdoc | 2 +- .../docs/apis/realtime/queries/+page.markdoc | 2 +- .../apis/realtime/subscribe/+page.markdoc | 23 ++-- 6 files changed, 73 insertions(+), 82 deletions(-) diff --git a/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc b/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc index b57edeb324..464eaf1386 100644 --- a/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc +++ b/src/routes/blog/post/announcing-message-based-realtime-sdk/+page.markdoc @@ -1,8 +1,8 @@ --- layout: post title: "One WebSocket, many subscriptions: smarter Realtime in Appwrite" -description: "Appwrite Realtime now keeps one persistent WebSocket and drives subscriptions with messages instead of cramming state into the connection URL, so you are not capped by URL length and you avoid unnecessary reconnects. Client SDKs expose unsubscribe(), update(), and disconnect() for clearer lifecycle control." -date: 2026-04-28 +description: "Appwrite Realtime now keeps one persistent WebSocket and drives subscriptions with messages instead of cramming state into the connection URL. Client SDKs expose unsubscribe(), update(), and disconnect() for clearer lifecycle control." +date: 2026-04-29 cover: /images/blog/announcing-message-based-realtime-sdk/cover.png timeToRead: 9 author: eldad-fux @@ -14,11 +14,13 @@ Realtime features are where users feel your app is “alive”: collaborative ed **Appwrite Realtime** now uses a **message-based protocol** on a **single persistent WebSocket**. The service applies subscription changes incrementally over the socket instead of treating the WebSocket URL as the source of truth for what you listen to. -Previously, subscription details were largely carried in the **query string of the Realtime WebSocket URL**. That tied you to **URL length limits** enforced by browsers, servers, and proxies, so in practice you could only combine so many channels and so much metadata before the connection string itself became a bottleneck. That friction grew once we shipped [Realtime queries](/blog/post/announcing-realtime-queries) to filter subscription events on the server, and larger query payloads made the URL ceiling easier to hit. Channels and queries are now sent **over the established socket**, so you are not capped by query-string size when scaling up listeners or filters. +Previously, subscription details were largely carried in the **query string of the Realtime WebSocket URL**. That tied you to **URL length limits** enforced by browsers, servers, and proxies, so in practice you could only combine so many channels and so much metadata before the connection string itself became a bottleneck. + +That friction grew once we shipped [Realtime queries](/blog/post/announcing-realtime-queries) to filter subscription events on the server, and larger query payloads made the URL ceiling easier to hit. Channels and queries are now sent **over the established socket**, so you are not capped by query-string size when scaling up listeners or filters. # One connection, many subscriptions -You create a `Realtime` instance from your configured `Client`, then call `subscribe` for each logical listener. The same **two-channel** idea looks like this across Appwrite clients (tabs below). +You create a `Realtime` instance from your configured `Client`, then call `subscribe` for each logical listener. The example below subscribes to two channels (`files` and `account`) on a single connection, shown across Appwrite clients in the tabs below. {% multicode %} ```client-web @@ -80,9 +82,9 @@ let sub2 = realtime.subscribe(channels: [Channel.account()]) { response in ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel val client = Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") @@ -100,7 +102,6 @@ val sub2 = realtime.subscribe(Channel.account()) { ``` ```client-android-java -import io.appwrite.Channel; import io.appwrite.Client; import io.appwrite.models.RealtimeResponseEvent; import io.appwrite.models.RealtimeSubscription; @@ -112,7 +113,6 @@ Client client = new Client(context) .setProject(""); Realtime realtime = new Realtime(client); -String accountChannel = Channel.Companion.account(); RealtimeSubscription sub1 = realtime.subscribe( new String[] {"files"}, @@ -123,7 +123,7 @@ RealtimeSubscription sub1 = realtime.subscribe( ); RealtimeSubscription sub2 = realtime.subscribe( - new String[] {accountChannel}, + new String[] {"account"}, (RealtimeResponseEvent response) -> { System.out.println("account " + response); return Unit.INSTANCE; @@ -133,7 +133,9 @@ RealtimeSubscription sub2 = realtime.subscribe( {% /multicode %} -Unsubscribing one handle **does not** drop unrelated listeners: the Realtime service keeps the shared connection and removes only what you asked for. The **Web SDK** exposes that as `unsubscribe()` on each handle and `disconnect()` when you want the socket closed entirely. Other SDKs use their own names (often `close()` on the subscription); check your version and the [subscribe documentation](/docs/apis/realtime/subscribe). +Unsubscribing one handle **does not** drop unrelated listeners: the Realtime service keeps the shared connection and removes only what you asked for. + +Call `unsubscribe()` on a subscription handle to stop that listener, and `realtime.disconnect()` to close the socket entirely. The legacy `close()` alias remains for backwards compatibility. See the [subscribe documentation](/docs/apis/realtime/subscribe) for the full API. {% multicode %} ```client-web @@ -145,30 +147,38 @@ realtime.disconnect(); ``` ```client-flutter -sub1.close(); -sub2.close(); +await sub1.unsubscribe(); +await sub2.unsubscribe(); + +await realtime.disconnect(); ``` ```client-apple -sub1.close() -sub2.close() +try await sub1.unsubscribe() +try await sub2.unsubscribe() + +try await realtime.disconnect() ``` ```client-android-kotlin -sub1.close() -sub2.close() +sub1.unsubscribe() +sub2.unsubscribe() + +realtime.disconnect() ``` ```client-android-java -sub1.close(); -sub2.close(); +sub1.unsubscribe(); +sub2.unsubscribe(); + +realtime.disconnect(); ``` {% /multicode %} -# Update in place, no reconnect storm +# In-place subscription updates -Changing channels or queries no longer has to mean closing the world and opening it again. In the **Web SDK**, call **`update()`** on the subscription handle so the server adjusts what it sends while the WebSocket stays up. On **Flutter, Apple, and Android**, use a new **`subscribe`** with the channels you need, wire up the new listener, then **`close()`** the previous handle (see [Subscribe](/docs/apis/realtime/subscribe#update-a-subscription)) until your SDK exposes the same in-place API. +Changing channels or queries no longer requires recreating the subscription. Call **`update()`** on the subscription handle to adjust the channels or queries while the WebSocket stays open. The API is available across **Web, Flutter, Apple, and Android** SDKs (see [Subscribe](/docs/apis/realtime/subscribe#update-a-subscription)). {% multicode %} ```client-web @@ -186,7 +196,7 @@ const subscription = await realtime.subscribe(Channel.files(), response => { await subscription.update({ channels: [Channel.tablesdb('').table('').row('')], - queries: [Query.equal('title', 'todo')] + queries: [Query.equal('title', ['todo'])], }); ``` @@ -205,15 +215,10 @@ subscription.stream.listen((response) { print(response); }); -final updated = realtime.subscribe([ - Channel.tablesdb('').table('').row('') -]); - -updated.stream.listen((response) { - print(response); -}); - -subscription.close(); +await subscription.update( + channels: [Channel.tablesdb('').table('').row('')], + queries: [Query.equal('title', ['todo'])], +); ``` ```client-apple @@ -230,19 +235,18 @@ let subscription = realtime.subscribe(channels: [Channel.files()]) { response in print(String(describing: response)) } -let updated = realtime.subscribe(channels: [ - Channel.tablesdb("").table("").row("") -]) { response in - print(String(describing: response)) -} - -subscription.close() +try await subscription.update(RealtimeSubscriptionUpdate( + channels: [Channel.tablesdb("").table("").row("")], + queries: [Query.equal("title", value: ["todo"])] +)) ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client +import io.appwrite.Query import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel +import io.appwrite.models.RealtimeSubscriptionUpdate val client = Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") @@ -254,22 +258,23 @@ val subscription = realtime.subscribe(Channel.files()) { print(it.payload.toString()) } -val updated = realtime.subscribe( - Channel.tablesdb("").table("").row("") -) { - print(it.payload.toString()) -} - -subscription.close() +subscription.update(RealtimeSubscriptionUpdate( + channels = listOf(Channel.tablesdb("").table("").row("")), + queries = listOf(Query.equal("title", listOf("todo"))), +)) ``` ```client-android-java import io.appwrite.Client; +import io.appwrite.Query; import io.appwrite.models.RealtimeResponseEvent; import io.appwrite.models.RealtimeSubscription; +import io.appwrite.models.RealtimeSubscriptionUpdate; import io.appwrite.services.Realtime; import kotlin.Unit; +import java.util.Arrays; + Client client = new Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") .setProject(""); @@ -284,36 +289,21 @@ RealtimeSubscription subscription = realtime.subscribe( } ); -RealtimeSubscription updated = realtime.subscribe( - new String[] { - "tablesdb..tables..rows." - }, - (RealtimeResponseEvent response) -> { - System.out.println(response); - return Unit.INSTANCE; - } -); - -subscription.close(); +subscription.update(new RealtimeSubscriptionUpdate( + Arrays.asList("tablesdb..tables..rows."), + Arrays.asList(Query.equal("title", Arrays.asList("todo"))) +)); ``` {% /multicode %} -That makes patterns like “user switched tabs” or “filter changed” map naturally to `update` or an extra `subscribe`, without reconnect churn for every transition. - # Why this matters - **Clearer ownership**: Each subscription is its own handle with a predictable lifecycle. - **Better performance**: Fewer full reconnects when your app state shifts. -- **Simpler UI code**: Mount paths call `subscribe` (or `update`), unmount paths call `unsubscribe` or `disconnect`, without special cases to avoid nuking unrelated listeners. - -The wire format is incremental over messages rather than driving everything through subscription URLs alone, which keeps the client and server aligned as your feature set grows. - -# Try it - -For a hands-on playground against a real project, see the [Appwrite Realtime harness](https://github.com/ArnabChatterjee20k/appwrite-realtime-harness) maintained by the community. +- **Simpler UI code**: Mount paths call `subscribe` (or `update`), unmount paths call `unsubscribe` or `disconnect`. -# Learn more +# More resources - [Introducing Realtime queries: Server-side event filtering for subscriptions](/blog/post/announcing-realtime-queries) - [Realtime API overview](/docs/apis/realtime) diff --git a/src/routes/changelog/(entries)/2026-04-29.markdoc b/src/routes/changelog/(entries)/2026-04-29.markdoc index 6e24c6a01b..2d3ddd6fb7 100644 --- a/src/routes/changelog/(entries)/2026-04-29.markdoc +++ b/src/routes/changelog/(entries)/2026-04-29.markdoc @@ -4,15 +4,15 @@ title: "Realtime: persistent WebSocket and message-driven subscriptions" date: 2026-04-29 --- -Appwrite **Realtime** now keeps a **single WebSocket** per client session and applies **incremental, message-based** subscription changes instead of encoding subscription state mainly in the connection URL and reconnecting for every add or remove. +Appwrite [**Realtime**](/docs/apis/realtime) now keeps a **single WebSocket** per client session and applies **incremental, message-based** subscription changes instead of encoding subscription state mainly in the connection URL and reconnecting for every add or remove. Previously, subscription details were often encoded in the **WebSocket URL query string**. That tied you to **URL length limits** in browsers, proxies, and servers, which capped how many [channels](/docs/apis/realtime/channels) you could combine and how much metadata you could send on one connection. It also squeezed [Realtime queries](/blog/post/announcing-realtime-queries) for server-side filtering, because every extra filter still had to fit in the same limited URL. Channels and queries are now carried **over the open socket**, so you are not constrained by query-string size the same way. In **client SDKs**, you can now: - **Per-subscription lifecycle**: Call `unsubscribe()` on a subscription handle to stop that listener only; other subscriptions on the same `Realtime` instance keep running. -- **`update()`**: Change `channels` and `queries` for an existing subscription without tearing down the whole client when the server can apply the change in place. -- **`disconnect()`**: Close the WebSocket when your app is done with Realtime (for example on component unmount), after you have unsubscribed or when you want a full teardown. +- **`update()`**: Change `channels` and `queries` on an existing subscription in place, without recreating the client. +- **`disconnect()`**: Close the WebSocket and drop every active subscription in one call when your app is done with Realtime (for example on component unmount). Together, the Realtime protocol change and matching SDK APIs reduce unnecessary reconnects, make UI-driven subscription changes easier to reason about, and move subscription state off the WebSocket URL onto incremental messages over the open connection. diff --git a/src/routes/docs/apis/realtime/+page.markdoc b/src/routes/docs/apis/realtime/+page.markdoc index b20087be08..00539e3010 100644 --- a/src/routes/docs/apis/realtime/+page.markdoc +++ b/src/routes/docs/apis/realtime/+page.markdoc @@ -69,9 +69,9 @@ let subscription = realtime.subscribe(channels: [Channel.files()]) { response in ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel val client = Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") diff --git a/src/routes/docs/apis/realtime/channels/+page.markdoc b/src/routes/docs/apis/realtime/channels/+page.markdoc index ba52359803..bc0e1cba7c 100644 --- a/src/routes/docs/apis/realtime/channels/+page.markdoc +++ b/src/routes/docs/apis/realtime/channels/+page.markdoc @@ -75,9 +75,9 @@ let docSubscription = realtime.subscribe( ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel val client = Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") diff --git a/src/routes/docs/apis/realtime/queries/+page.markdoc b/src/routes/docs/apis/realtime/queries/+page.markdoc index f8f1a9c535..9c7618f0d6 100644 --- a/src/routes/docs/apis/realtime/queries/+page.markdoc +++ b/src/routes/docs/apis/realtime/queries/+page.markdoc @@ -119,10 +119,10 @@ let otherVotes = realtime.subscribe( ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client import io.appwrite.Query import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel val client = Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") diff --git a/src/routes/docs/apis/realtime/subscribe/+page.markdoc b/src/routes/docs/apis/realtime/subscribe/+page.markdoc index 6427562ee4..22552b662e 100644 --- a/src/routes/docs/apis/realtime/subscribe/+page.markdoc +++ b/src/routes/docs/apis/realtime/subscribe/+page.markdoc @@ -60,9 +60,9 @@ let subscription = realtime.subscribe(channels: [Channel.account()]) { response ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel val client = Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") @@ -77,7 +77,6 @@ val subscription = realtime.subscribe(Channel.account()) { ``` ```client-android-java -import io.appwrite.Channel; import io.appwrite.Client; import io.appwrite.models.RealtimeResponseEvent; import io.appwrite.models.RealtimeSubscription; @@ -89,10 +88,9 @@ Client client = new Client(context) .setProject(""); Realtime realtime = new Realtime(client); -String accountChannel = Channel.Companion.account(); RealtimeSubscription subscription = realtime.subscribe( - new String[] {accountChannel}, + new String[] {"account"}, (RealtimeResponseEvent response) -> { // Callback will be executed on all account events. System.out.println(response); @@ -168,9 +166,9 @@ realtime.subscribe(channels: [ ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel val client = Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") @@ -215,7 +213,7 @@ RealtimeSubscription subscription = realtime.subscribe( # Update channels or queries {% #update %} -Channels and queries on an active subscription can be replaced in place without recreating the WebSocket. This is useful when, for example, a user changes which row they're viewing — swap the channel on the existing subscription instead of unsubscribing and resubscribing. +Channels and queries on an active subscription can be replaced in place without recreating the WebSocket. This is useful when, for example, a user changes which row they're viewing. Swap the channel on the existing subscription instead of unsubscribing and resubscribing. `update()` accepts either or both of `channels` and `queries`. Pass only the field you want to replace; omitted fields are left unchanged. @@ -286,9 +284,9 @@ try await subscription.update(RealtimeSubscriptionUpdate( ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel import io.appwrite.models.RealtimeSubscriptionUpdate val client = Client(context) @@ -344,7 +342,7 @@ subscription.update(new RealtimeSubscriptionUpdate( # Unsubscribe {% #unsubscribe %} -If you no longer want to receive updates from a particular subscription, call `unsubscribe()` on it. Other subscriptions and the underlying WebSocket connection are not affected, so callbacks for the rest of your app keep firing. To tear the whole connection down at once, see [Disconnect](#disconnect) below. +If you no longer want to receive updates from a particular subscription, call `unsubscribe()` on it. Other subscriptions and the underlying WebSocket connection are not affected, so callbacks for the rest of your app keep firing. To close the entire connection at once, see [Disconnect](#disconnect) below. {% multicode %} ```client-web @@ -389,6 +387,9 @@ await subscription.unsubscribe(); import Appwrite let client = Client() + .setEndpoint("https://.cloud.appwrite.io/v1") + .setProject("") + let realtime = Realtime(client) let subscription = realtime.subscribe(channels: [Channel.files()]) { response in @@ -401,9 +402,9 @@ try await subscription.unsubscribe() ``` ```client-android-kotlin +import io.appwrite.Channel import io.appwrite.Client import io.appwrite.services.Realtime -import io.appwrite.extensions.Channel val client = Client(context) .setEndpoint("https://.cloud.appwrite.io/v1") @@ -449,12 +450,12 @@ subscription.unsubscribe(); {% /multicode %} {% info title="Legacy close()" %} -`subscription.close()` still works for backwards compatibility — it calls `unsubscribe()` and additionally closes the WebSocket if this was the last active subscription. New code should prefer `unsubscribe()` and call `realtime.disconnect()` explicitly when full teardown is needed. +`subscription.close()` still works for backwards compatibility. It calls `unsubscribe()` and additionally closes the WebSocket if this was the last active subscription. New code should prefer `unsubscribe()` and call `realtime.disconnect()` explicitly when full teardown is needed. {% /info %} # Disconnect {% #disconnect %} -Call `realtime.disconnect()` to drop **all** active subscriptions and close the WebSocket in one step. Use this at app teardown or when a user logs out — there's no need to loop over each subscription and call `unsubscribe()` first. +Call `realtime.disconnect()` to drop **all** active subscriptions and close the WebSocket in one step. Use this at app teardown or when a user logs out. {% multicode %} ```client-web From 4b5615635a1574fd6f1426a691de83aed8339009 Mon Sep 17 00:00:00 2001 From: Atharva Deosthale Date: Wed, 29 Apr 2026 21:23:30 +0530 Subject: [PATCH 5/5] optimize --- .optimize-cache.json | 1 - 1 file changed, 1 deletion(-) diff --git a/.optimize-cache.json b/.optimize-cache.json index 381ebb3967..f80181b506 100644 --- a/.optimize-cache.json +++ b/.optimize-cache.json @@ -188,7 +188,6 @@ "images/blog/announcing-init-faster-smoother-better/init-ticket.png": "fe4e16ef27d3fcba378c52882ce3458aab3f1de84cb183d39db577e5264ef905", "images/blog/announcing-inversion-queries/cover.png": "232f806b8b655f469cb5398ba3abce2074e959d2fb49b9782b1889b22f1ee16e", "images/blog/announcing-list-cache-ttl/cover.png": "ca1554dc34d1222b86ccc295252af8e07b2f635b9b10e1227a21fff81138e409", - "images/blog/announcing-message-based-realtime-sdk/cover.png": "e4b3a52364addc4ea060a6ff7eb59ce02aa2ae44875f4f7dad0eaede2c5c6849", "images/blog/announcing-new-push-notifications-features/cover.png": "a0c758cf6c8a95e09a0d2ca562b0775a50d34a4d691d675cda70e44ad21805ac", "images/blog/announcing-opt-in-relationship-loading/cover.png": "e16cc16ea6d968b29af19bcd6274741141584a7efe5e1bb18be19b77c3a380c8", "images/blog/announcing-phone-OTP-pricing/cover.png": "598d55359ca4cb2b46846a8fd76b1f051be7c5f3199b50ffa92a28e84e5f3d67",