Categorygithub.com/syhlion/redisocket.v2
modulepackage
0.0.0-20221207012622-4ab831d27ee9
Repository: https://github.com/syhlion/redisocket.v2.git
Documentation: pkg.go.dev

# README

redisocket.v2

Go Report Card Build Status

Base on gorilla/websocket & garyburd/redigo

Implement By Observer pattern

Documention

Install

go get github.com/syhlion/redisocket.v2

Usaged

func TestEvent(d []byte) (data []byte, err error) {
	return d, nil
}

func main() {
	pool := redis.NewPool(func() (redis.Conn, error) {
		return redis.Dial("tcp", ":6379")
	}, 10)
	app := redisocket.NewHub(pool,false)

	err := make(chan error)
	go func() {
		err <- app.Listen()
	}()

	http.HandleFunc("/ws", func(w http.ResponseWriter, r *http.Request) {

        client,err:= app.Upgrade(w, r, nil, "Scott", "appKey")
		if err != nil {
			log.Fatal("Client Connect Error")
			return
		}
		err = client.Listen(func(data []byte) (d []byte, err error) {
			return data,nil

		})
		log.Println(err, "http point")
		return
	})

	go func() {
		err <- http.ListenAndServe(":8888", nil)
	}()
	select {
	case e := <-err:
		log.Println(e)
	}
}

# Functions

NewHub It's create a Hub.
NewSender return sender send to hub.

# Variables

DefaultWebsocketOptional default config.

# Structs

No description provided by the author
BatchData push batch data struct.
Client gorilla websocket wrap struct.
Hub client hub.
Payload reciev from redis.
Sender struct.
No description provided by the author
WebsocketOptional init websocket hub config.

# Interfaces

User client interface.

# Type aliases

EventHandler event handler.
ReceiveMsgHandler client receive msg.