
Hello, I'd like to subscribe to the realtime channel "documents" to get all change events. I am using this C# call:
await socket.ConnectAsync(new Uri("wss://[HOST]/v1/realtime?project=[PROJECT-ID]&channels[]=documents"), CancellationToken.None);
The connection is opened but I receive this error from the appwrite server:
{"type":"connected","data":{"channels":["documents"],"user":null}} {"type":"error","data":{"code":1003,"message":"Message format is not valid."}}
Can please someone tell me what am I missing? I used this rfc to figure out how to communicate with the websocket endpoint: https://github.com/appwrite/rfc/blob/main/014-realtime-api.md

Realtime with c#? What are you trying to do?
Also, maybe using the sdks as reference might be best. Are you able to read JavaScript? Or maybe dart?

I am using C# for a client application (WinForms). Unfortunatelly there is no C# Client SDK available. For the REST part I use the client sdk created by the swagger code generator. This works so far for me. Now I try to get events everytime a document has changed, done by other instances of the client application, so that I can update the view.

I see I see. So are you comfortable with reading JavaScript or dart?

How to Manually use Realtime API

Yes, reading JavaScript would be no Problem.
Currently I managed at least, that I receive events for documents with the access type "Any". As in the response after connect can be seen, user is set to null.
{"type":"connected","data":{"channels":["documents"],"user":null}}
I authenticate using Email authentication. Is there a way to use this session also for the websocket connection?

Perhaps you can implement this in your c# code: https://github.com/appwrite/sdk-for-web/blob/1dde5c7bc91b18bfc1f4e2a80b0ba77017db66fe/src/client.ts#L262.
After getting connected, the client needs to send an authentication message.

Thank you very much, it's working now. 🙂

[SOLVED] How to Manually use Realtime API
Recommended threads
- Attributes stuck at processing
I created a collection and after adding 4 attributes, the next ones are stuck in processing state since a long time. My project id: 6851551f0037d6ae5a24
- Issue with Storage File Details View: In...
- Automatically Assigning the user and tea...
Hey AppWriters! Day 2 for me 😅 I'm reading the docs https://appwrite.io/docs/products/auth/team-invites In order to understand how a document is added then ...
