Swift 使用openTok发送消息
我正在尝试使用openTok(Swift 3)创建聊天应用程序,但在会话中向其他用户发送消息时遇到问题。我确实收到了其他用户的连接,但无法发送消息。我没有发送消息,而是亲自接收。我尝试将其发送给一个人,如下所示:Swift 使用openTok发送消息,swift,swift3,opentok,Swift,Swift3,Opentok,我正在尝试使用openTok(Swift 3)创建聊天应用程序,但在会话中向其他用户发送消息时遇到问题。我确实收到了其他用户的连接,但无法发送消息。我没有发送消息,而是亲自接收。我尝试将其发送给一个人,如下所示: func sendMessage() { session = OTSession(apiKey: ApiKey, sessionId: SessionID, delegate: self) session?.signal(withType: "Chat", string
func sendMessage() {
session = OTSession(apiKey: ApiKey, sessionId: SessionID, delegate: self)
session?.signal(withType: "Chat", string: "Hi", connection: (session?.connection)!, retryAfterReconnect: true, error: nil)
}
当我试图发送给会话中的所有用户时,它会显示“对成员会话的引用不明确”:请参见
当我检查函数源(点击函数按住命令键)时,它转到基础框架
中的NSLo.h。现在我不知道去哪里,做什么 的确,@wobbals是正确的。首先,您必须调用
openfunc-connect(使用令牌令牌:String!,错误:AutoreleasingUnsafeMutablePointer!)
并在之后接收public-func-sessionDidConnect(u-session:OTSession!)
,以便启用会话
对象发送信号。请记住记录错误,以便您了解如果失败会发生什么
从文档中可以看出,如果将nil
传递给connection参数,则连接的会话将广播到每个连接,包括您自己。我相信这行session?.signal(with type:“Chat”,string:“Hi”,connection:(session?.connection)!,retryAfterReconnect:true,error:nil)
将使您的应用程序崩溃,因为nil
对象由于session?的nil
值而被解包。如果session未连接,则连接
只是一个旁注,如果你在这里发布代码和图片,它实际上是混乱的。我们不知道你真正的问题是什么。但是,它们都有明显的问题 2件事:1)需要连接会话才能接受信号。2) 在屏幕截图中,会话变量超出范围。这可能应该是实现该方法的类上的一个实例变量。OpenTok还有文本聊天加速器包,您可以使用: