RichΛrd 40359f9c1b
go-waku integration (#2247)
* Adding wakunode module
* Adding wakuv2 fleet files
* Add waku fleets to update-fleet-config script
* Adding config items for waku v2
* Conditionally start waku v2 node depending on config
* Adapting common code to use go-waku
* Setting log level to info
* update dependencies
* update fleet config to use WakuNodes instead of BootNodes
* send and receive messages
* use hash returned when publishing a message
* add waku store protocol
* trigger signal after receiving store messages
* exclude linting rule SA1019 to check deprecated packages
2021-06-16 16:19:45 -04:00

39 lines
814 B
Go

// +build js,wasm
package websocket
import (
"context"
"errors"
"syscall/js"
"github.com/libp2p/go-libp2p-core/transport"
ma "github.com/multiformats/go-multiaddr"
manet "github.com/multiformats/go-multiaddr/net"
)
func (t *WebsocketTransport) maDial(ctx context.Context, raddr ma.Multiaddr) (manet.Conn, error) {
wsurl, err := parseMultiaddr(raddr)
if err != nil {
return nil, err
}
rawConn := js.Global().Get("WebSocket").New(wsurl)
conn := NewConn(rawConn)
if err := conn.waitForOpen(); err != nil {
conn.Close()
return nil, err
}
mnc, err := manet.WrapNetConn(conn)
if err != nil {
conn.Close()
return nil, err
}
return mnc, nil
}
func (t *WebsocketTransport) Listen(a ma.Multiaddr) (transport.Listener, error) {
return nil, errors.New("Listen not implemented on js/wasm")
}