| 123456789101112131415161718192021222324252627282930313233343536 |
- package cpn
- import (
- "github.com/gorilla/websocket"
- "git.wanbits.io/joe/nnet"
- )
- //
- type WsClient struct {
- *Hub
- addr string
- pos int //
- }
- func NewWsClient(cf *nnet.HubConfig, cb nnet.ISessionCallback, p nnet.IProtocol) nnet.IHub {
- return &WsClient{
- Hub: newHub(cf, cb, p),
- pos: 0,
- }
- }
- func (self *WsClient) NewConnection(addr string, id uint64) error {
- conn, _, err := websocket.DefaultDialer.Dial(addr, nil)
- if err != nil {
- return err
- }
- self.wg.Add(1)
- go func() {
- ses := newSession(NewWsConn(conn), self)
- ses.UpdateId(id)
- ses.Do()
- self.wg.Done()
- }()
- return nil
- }
|