Skip to content
πŸ’¬ CHAT: Messaging Protocol
Branch: master
Clone or download
Latest commit de1ff2b May 6, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc index May 6, 2019
include Merge branch 'master' of github.com:synrc/chat May 4, 2019
man man May 1, 2019
priv certs May 2, 2019
src index May 5, 2019
.gitignore ssl certs May 2, 2019
.gitmodules clu imgui May 1, 2019
.travis.yml init Apr 29, 2019
CNAME init Apr 29, 2019
LICENSE Update LICENSE Apr 30, 2019
README.md Update README.md May 1, 2019
index.html index May 6, 2019
package.exs init Apr 29, 2019
rebar.config Update rebar.config May 1, 2019
sys.config port 8042 May 2, 2019
vm.args init Apr 29, 2019

README.md

CHAT: Messaging Protocol

Build Status

Simple mailbox delivery protocol.

Features

  • Database Support: FS, MNESIA, ROCKSDB
  • MQ Support: GPROC, SYN
  • Formatters Support: TXT, BERT, BER/DER/PER [ASN.1]
  • Size: 80 LOC

Intro

CHAT is an QoS=1 example of messaging system built on top of:

  • SYN for publish subscribe message queue;
  • N2O for protocols;
  • KVX for data storage;
  • and COWBOY for web server.

It also contains simple textual WebSocket protocol for debugging purposes. You can freely use this example with your favourite formatter for user terminal protocol.

$ wscat -c wss://n2o.im
> HELP
< N2O <user>
| SEND <user> <msg>
| BOX
| CUT <id>.
> N2O maxim
< USER maxim
> SEND vlad HELO
< ERROR user doesn't exist.
> N2O vlad
< USER vlad
> SEND maxim OK
< NOTIFY vlad:maxim:1556151953113322286:OK
< ACK "1556151953113322286"
> N2O maxim
< USER maxim
> BOX
< LIST
vlad:maxim:1556151953113322286:OK
> SEND maxim this is me
< NOTIFY maxim:maxim:1556152151055371152:this is me
< ACK "1556152151055371152"
> SEND maxim back again
< NOTIFY maxim:maxim:1556152157283311935:back again
< ACK "1556152157283311935"
> BOX
< LIST
vlad:maxim:1556151953113322286:OK
maxim:maxim:1556152151055371152:this is me
maxim:maxim:1556152157283311935:back again
> CUT 1556152157283311935
< ERASED 3
> BOX
< LIST
>

Documentation

The project homepage is n2o.im.

Credits

  • Maxim Sokhatsky
  • Vladimir Kirillov

OM A HUM

You can’t perform that action at this time.