tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

ARDSignalingChannel.h (1690B)


      1 /*
      2 *  Copyright 2014 The WebRTC Project Authors. All rights reserved.
      3 *
      4 *  Use of this source code is governed by a BSD-style license
      5 *  that can be found in the LICENSE file in the root of the source
      6 *  tree. An additional intellectual property rights grant can be found
      7 *  in the file PATENTS.  All contributing project authors may
      8 *  be found in the AUTHORS file in the root of the source tree.
      9 */
     10 
     11 #import <Foundation/Foundation.h>
     12 
     13 #import "ARDSignalingMessage.h"
     14 
     15 typedef NS_ENUM(NSInteger, ARDSignalingChannelState) {
     16  // State when disconnected.
     17  kARDSignalingChannelStateClosed,
     18  // State when connection is established but not ready for use.
     19  kARDSignalingChannelStateOpen,
     20  // State when connection is established and registered.
     21  kARDSignalingChannelStateRegistered,
     22  // State when connection encounters a fatal error.
     23  kARDSignalingChannelStateError
     24 };
     25 
     26 @protocol ARDSignalingChannel;
     27 @protocol ARDSignalingChannelDelegate <NSObject>
     28 
     29 - (void)channel:(id<ARDSignalingChannel>)channel
     30    didChangeState:(ARDSignalingChannelState)state;
     31 
     32 - (void)channel:(id<ARDSignalingChannel>)channel
     33    didReceiveMessage:(ARDSignalingMessage *)message;
     34 
     35 @end
     36 
     37 @protocol ARDSignalingChannel <NSObject>
     38 
     39 @property(nonatomic, readonly) NSString *roomId;
     40 @property(nonatomic, readonly) NSString *clientId;
     41 @property(nonatomic, readonly) ARDSignalingChannelState state;
     42 @property(nonatomic, weak) id<ARDSignalingChannelDelegate> delegate;
     43 
     44 // Registers the channel for the given room and client id.
     45 - (void)registerForRoomId:(NSString *)roomId clientId:(NSString *)clientId;
     46 
     47 // Sends signaling message over the channel.
     48 - (void)sendMessage:(ARDSignalingMessage *)message;
     49 
     50 @end