An example chat server in golang.
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

990 B

chat.go

Rudimentary go chat server as a fun project.

Install

git clone https://git.coolaj86.com/coolaj86/chat.go.git

go get gopkg.in/yaml.v2
go get github.com/emicklei/go-restful

Note: I also copied some code directly from https://github.com/polvi/sni/blob/master/sni.go

Usage

Start the server

go run -race chatserver.go -conf ./config.yml

See sample config file at config.sample.yml.

Connect clients

You can connect multiple clients.

telnet localhost 4080

You can also use HTTP. The API docs and examples can be seen at http://localhost:4080

curl http://localhost:4080

Implemented

  • Awesome telnet server (would
  • HTTP API (no UI for the sake of time)
  • Multiplex the same port (because I wanted to learn)
  • E-mail "magic link" authentication (minus the link since it's localhost)

Not Implemented

  • Write to log file (just go run ./chatserver.go > /path/to/log
  • Rooms