2017-01-11 5 views
1

openTok(Swift 3)を使用してチャットアプリケーションを作成しようとしていますが、セッション中に他のユーザーにメッセージを送信することに問題があります。私は他のユーザーの接続を受け取りますが、メッセージを送信することはできません。私は、セッション内のすべてのユーザーに送信しようとしたopenTokを使用してメッセージを送信する

func sendMessage() { 
    session = OTSession(apiKey: ApiKey, sessionId: SessionID, delegate: self) 
    session?.signal(withType: "Chat", string: "Hi", connection: (session?.connection)!, retryAfterReconnect: true, error: nil) 
} 

が、それはメンバーに」あいまいな参照を言う:代わりにメッセージを送信するのでは、私は、私自身はit.Iは次のように単一の人にそれを送信しようとした受信しますセッション ':今私はどこへ行くか、何を知らない私は、関数ソース(コマンドキーを押しながらクリックする機能)をチェックしたときにimage

も、それは

財団FrameworkでNSLock.hに行く参照してください。行う!

+0

2つのもの: 1)信号を受け入れるためにセッションを接続する必要があります。 2)スクリーンショットでは、セッション変数が範囲外です。これはおそらくメソッドを実装しているクラスのインスタンス変数でなければなりません。 – wobbals

+0

OpenTokにはテキストチャットアクセラレータパックもあります:https://github.com/opentok/textchat-acc-pack –

答えて

1

実際、@wobbalsは正しいです。まず、open func connect(withToken token: String!, error: AutoreleasingUnsafeMutablePointer<OTError?>!)に電話をかけてから、sessionオブジェクトが信号を送信できるようにするためには、public func sessionDidConnect(_ session: OTSession!)を受け取る必要があります。エラーが発生した場合に何が起こるかを知るために、エラーを記録することを忘れないでください。

nilを接続パラメータに渡すと、ドキュメントから、接続されたセッションが自分自身を含むすべての接続にブロードキャストされます。私は、nilの値がnilのため、セッションが接続されていないと、このラインのsession?.signal(withType: "Chat", string: "Hi", connection: (session?.connection)!, retryAfterReconnect: true, error: nil)がアプリケーションをクラッシュさせると考えています。

あなたがコードと画像を投稿すると、実際にはここで混乱します。私たちはあなたの実際の問題がどれか分かりません。しかし、どちらも明らかな問題があります。

関連する問題