Skip to content

Instantly share code, notes, and snippets.

@Yerazhas
Created February 4, 2020 15:44
Show Gist options
  • Save Yerazhas/ba4cd971cf2f38125696881e190eb076 to your computer and use it in GitHub Desktop.
Save Yerazhas/ba4cd971cf2f38125696881e190eb076 to your computer and use it in GitHub Desktop.
import Starscream
class MessagesWSManager: CFMessagesSocket {
weak var delegate: CFMessagesSocketDelegate?
private let socket: WebSocket
init(socket: WebSocket) {
self.socket = socket
}
func connect() {
socket.connect()
}
func disconnect() {
socket.disconnect()
}
func sendMessage(message: String) {
socket.write(string: message)
}
func sendMessage(data: Data) {
socket.write(data: data)
}
}
extension MessagesWSManager: WebSocketDelegate {
func websocketDidConnect(socket: WebSocketClient) {
print("websocket did connect successfully")
}
func websocketDidDisconnect(socket: WebSocketClient, error: Error?) {
print("websocket did disconnect successfully")
}
func websocketDidReceiveMessage(socket: WebSocketClient, text: String) {
delegate?.didReceiveMessage(message: text)
}
func websocketDidReceiveData(socket: WebSocketClient, data: Data) {
delegate?.didReceiveData(data: data)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment