# 22/TOY-CHAT | Vac Research
- Status: draft

Skip to main content

# 22/TOY-CHAT

- Status: draft
- Editor: Franck Royer <franck@status.im>
- Contributors:
  - Hanno Cornelius <hanno@status.im>

Content Topic: `/toy-chat/2/huilong/proto`.

This specification explains a toy chat example using Waku v2. This protocol is mainly used to:

1. Dogfood Waku v2,
2. Show an example of how to use Waku v2.

Currently, all main Waku v2 implementations support the toy chat protocol: nim-waku, js-waku (NodeJS and web) and go-waku.

Note that this is completely separate from the protocol the Status app is using for its chat functionality.

## Design​

The chat protocol enables sending and receiving messages in a chat room. There is currently only one chat room, which is tied to the content topic. The messages SHOULD NOT be encrypted.

The `contentTopic` MUST be set to `/toy-chat/2/huilong/proto`.

## Payloads​

    syntax = "proto3";

    message Chat2Message {
       uint64 timestamp = 1;
       string nick = 2;
       bytes payload = 3;
    }

- `timestamp`: The time at which the message was sent, in Unix Epoch seconds,
- `nick`: The nickname of the user sending the message,
- `payload`: The text of the messages, UTF-8 encoded.

## Copyright​

Copyright and related rights waived via CC0.