diff --git a/src/app/protocol/wrac/page.tsx b/src/app/protocol/wrac/page.tsx
index 8b61c07..cd97496 100644
--- a/src/app/protocol/wrac/page.tsx
+++ b/src/app/protocol/wrac/page.tsx
@@ -4,6 +4,8 @@ import { ArrowLeft } from "lucide-react";
import Link from "next/link";
import Text from "@/components/blocks/Text";
import PageTitle from "@/components/blocks/PageTitle";
+import Title from "@/components/blocks/Title";
+import InlineCode from "@/components/blocks/InlineCode";
export default function Wrac() {
return (
@@ -26,7 +28,25 @@ export default function Wrac() {
WRAC (WebSocket Real Address Chat) is a community-made successor to
RAC that uses WebSockets instead of TCP. It uses the same requests as
- RAC, but you should send data in binary format.
+ RAC, but you should send data in binary format. Also, you can use the
+ same connection multiple times, what differs from the usual RAC, where
+ you had to connect the server each time you made some request. That
+ causes some differences in the messages receiving.
+
+
Receiving messages
+
+ As the connection now can be keep-alive, and the websocket uses messages
+ for transactions, we can't just do the same as we did in RAC to get the messages.
+
+
+ Now, to use those packets (0x01 for normal reading and 0x02 for chunked reading),
+ we need to let the server know that we want to use them, and not send
+ messages (the same packet-ids). The way how to do this is just add the byte 0x00 to the start
+ of packets. For example: 0x00 0x01 for normal reading.
+
+
+ This way we can separate the packets that receive data from the packet that receives the total size.
+ In the sence of keep-alive, WRAC solves the main problem with usual RAC.