iOS集成Websocket消息实时推送
在使用GoEasy进行消息的接收和发送之前,需要先初始化GoEasy对象, 并建立与GoEasy服务器的连接。
集成iOS SDK
使用CocoaPods集成GoEasy SWIFT SDK到您的项目中
pod 'GoEasySwift', '0.2.0'
Demo源码下载
初始化GoEasy
//初始化GoEasy,新加坡host:singapore.goeasy.io
GoEasy.initGoEasy(host: "hangzhou.goeasy.io", appkey: "您的appkey")
建立Websocket连接
let connectEventListener = ConnectEventListener()
connectEventListener.onSuccess = { result in
print("连接成功.")
}
connectEventListener.onFailed = { result in
print("连接失败result:\(result)")
}
connectEventListener.onProgress = { attempts in
print("尝试重连次数:\(attempts)")
}
GoEasy.connect(connectEventListener: connectEventListener)
订阅(接收)消息
let subscribeEventListener = SubscribeEventListener()
subscribeEventListener.onSuccess = { result in
print("订阅成功.")
}
subscribeEventListener.onFailed = { result in
print("订阅失败 code:\(result.code) data:\(result.data)")
}
subscribeEventListener.onMessage = { message in
print("收到消息 code:\(message.content)")
}
GPubSub.subscribe(channel: "test_channel", subscribeEventListener: subscribeEventListener)
发送消息
let publishEventListener = GoEasyEventListener()
publishEventListener.onSuccess = { result in
print("发送成功.")
}
publishEventListener.onFailed = { result in
print("发送失败 code:\(result.code) data:\(result.data)")
}
let options = PublishOptions(channel: "test_channel", message: message)
GPubSub.publish(options: options, publishEventListener: publishEventListener)
取消订阅
let unsubscribeEventListener = GoEasyEventListener()
unsubscribeEventListener.onSuccess = { result in
print("取消订阅成功.")
}
unsubscribeEventListener.onFailed = { result in
print("取消订阅失败 code:\(result.code) data:\(result.data)")
}
GPubSub.unsubscribe(channel: "test_channel", unsubscribeEventListener: unsubscribeEventListener)
断开连接
let disconnectEventListener = GoEasyEventListener()
disconnectEventListener.onSuccess = { result in
print("断开成功.")
}
disconnectEventListener.onFailed = { result in
print("断开失败 code:\(result.code) data:\(result.data)")
}
GPubSub.disconnect(disconnectEventListener: disconnectEventListener)