测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布上次发布 | 2015 年 9 月 |
SPM支持 SPM | ✗ |
由 ProcessOne 维护。
依赖 | |
FMDB | ~> 1.0 |
JSQMessagesViewController | >= 0 |
JSQSystemSoundPlayer | ~> 2.0 |
XMPPFramework | >= 0 |
要运行示例项目,请克隆仓库,然后首先从 Example 目录运行 pod install
。
xmpp-messenger-ios 可通过 CocoaPods 获得。要安装它,只需将以下行添加到您的 Podfile 中
pod "xmpp-messenger-ios"
ProcessOne, [email protected]
xmpp-messenger-ios 遵循 MIT 许可证。有关更多信息,请参阅 LICENSE 文件。
使用 P1 Swift XMPP 框架的 Swift XMPP 客户端
下载或克隆项目
将以下代码添加到 AppDelegate 的 did finishLaunchingWithOptions 中以启动流
OneChat.start(archiving: true, delegate: nil) { (stream, error) -> Void in
}
在 applicationWillTerminate 中添加以停止流
OneChat.stop()
要获取联系人列表,只需通过实现委托来遵守 OneRosterDelegate
func oneRosterContentChanged(controller: NSFetchedResultsController) {
tableView.reloadData() //Reload or other
}
要能够发送消息,您必须遵守 OneMessageDelegate
首先在 viewdidload 中将自己设置为监听器
override func viewDidLoad() {
super.viewDidLoad()
OneMessage.sharedInstance.delegate = self
}
然后实现协议
func oneStream(sender: XMPPStream, didReceiveMessage message: XMPPMessage, from user: XMPPUserCoreDataStorageObject) {
if message.isChatMessageWithBody() {
let body = message.elementForName("body").stringValue()
let displayName = user.displayName
if let msg: String = message.elementForName("body")?.stringValue() {
if let from: String = message.attributeForName("from")?.stringValue() {
messagestTableView.reloadData() //Reload or other
}
}
}
}
OneMessage.sendMessage(youMessage, to: chatJid, completionHandler: { (stream, message) -> Void in
})