Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 使用openTok发送消息_Swift_Swift3_Opentok - Fatal编程技术网

Swift 使用openTok发送消息

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

我正在尝试使用openTok(Swift 3)创建聊天应用程序,但在会话中向其他用户发送消息时遇到问题。我确实收到了其他用户的连接,但无法发送消息。我没有发送消息,而是亲自接收。我尝试将其发送给一个人,如下所示:

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还有文本聊天加速器包,您可以使用: