fix up many things

Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
William Casarin
2022-04-19 09:26:29 -07:00
parent 020a1a4e6d
commit 8568d4abc7
6 changed files with 200 additions and 52 deletions

View File

@@ -17,6 +17,7 @@ class RelayConnection: WebSocketDelegate {
var isConnected: Bool = false
var isConnecting: Bool = false
var isReconnecting: Bool = false
var last_connection_attempt: Double = 0
var socket: WebSocket
var handleEvent: (NostrConnectionEvent) -> ()
let url: URL
@@ -25,9 +26,9 @@ class RelayConnection: WebSocketDelegate {
self.url = url
self.handleEvent = handleEvent
// just init, we don't actually use this one
self.socket = WebSocket(request: URLRequest(url: self.url), compressionHandler: .none)
self.socket = make_websocket(url: url)
}
func reconnect() {
if self.isConnected {
self.isReconnecting = true
@@ -45,10 +46,11 @@ class RelayConnection: WebSocketDelegate {
var req = URLRequest(url: self.url)
req.timeoutInterval = 5
socket = WebSocket(request: req, compressionHandler: .none)
socket = make_websocket(url: url)
socket.delegate = self
isConnecting = true
last_connection_attempt = Date().timeIntervalSince1970
socket.connect()
}
@@ -145,3 +147,7 @@ func make_nostr_subscription_req(_ filters: [NostrFilter], sub_id: String) -> St
return req
}
func make_websocket(url: URL) -> WebSocket {
return WebSocket(request: URLRequest(url: url), compressionHandler: .none)
}