public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            // Perform any additional setup after loading the view, typically from a nib.

            _session = new OTSession(kSessionId, new SessionDelegate(this));

            DoConnect();
        }
Example #2
0
            public override void DidFailWithError(OTSession session, OTError error)
            {
                var msg = "SessionDelegate:DidFailWithError: " + session.SessionId;

                _this.RaiseOnError(msg);
            }
 public override void StreamDestroyed(OTSession session, OTStream stream)
 {
     _this.CleanupSubscriber();
 }
 public override void DidFailWithError(OTSession session, OTError error)
 {
     var msg = "SessionDelegate:DidFailWithError: " + session.SessionId;
     _this.RaiseOnError(msg);
 }
 public override void DidConnect(OTSession session)
 {
     //InvokeOnMainThread (_this.DoPublish);
     _this.DoPublish ();
 }
 public override void ConnectionCreated(OTSession session, OTConnection connection)
 {
     // connection created
 }
Example #7
0
        public override void DidDisconnect(OTSession session)
        {
            var msg = "SessionDelegate:DidDisconnect: " + session.SessionId;

            Debug.WriteLine(msg);
        }
Example #8
0
            public override void ConnectionDestroyed(OTSession session, OTConnection connection)
            {
                Debug.WriteLine("SessionDelegate:ConnectionDestroyed: " + connection.ConnectionId);

                _this.CleanupSubscriber();
            }
 // Although SDK callbacks are called in the main thread,
 // it might be safer to ensure that other method are called in the Main Thread.
 public override void DidConnect(OTSession session)
 {
     Debug.WriteLine("SessionDelegate:DidConnect: " + session.SessionId);
     InvokeOnMainThread(_this.DoPublish);
 }
            public override void DidReceiveStream(OTSession session, OTStream stream)
            {
                Debug.WriteLine("DidReceiveStream ({0})", stream.StreamId);

                // See the declaration of subscribeToSelf above
                if((_this.subscribeToSelf && Equals(stream.Connection.ConnectionId, _this._session.Connection.ConnectionId))
                    ||
                    (!_this.subscribeToSelf && !Equals(stream.Connection.ConnectionId, _this._session.Connection.ConnectionId))
                )
                {
                    if(_this._subscriber == null)
                    {
                        _this._subscriber = new OTSubscriber(stream, new SubDelegate(_this));
                    }
                }
            }
 public override void DidFail(OTSession session, OTError error)
 {
     Debug.WriteLine("SessionDidFail");
     var msg = string.Format("There was an error connecting to session {0}", session.SessionId);
     _this.ShowAlert(msg);
 }
            public override void DidDropStream(OTSession session, OTStream stream)
            {
                Debug.WriteLine("DidDropStream ({0})", stream.StreamId);
                if(_this._subscriber != null)
                    Debug.WriteLine("_subscriber.Stream.StreamId ({0})", _this._subscriber.Stream.StreamId);

                if(!_this.subscribeToSelf
                    && _this._subscriber != null
                    && Equals(_this._subscriber.Stream.StreamId, stream.StreamId))
                {
                    _this._subscriber.Dispose();
                    _this._subscriber = null;
                    _this.UpdateSubscriber();
                }
            }
 public override void DidDropConnection(OTSession session, OTConnection connection)
 {
     Debug.WriteLine("DidDropConnection ({0})", connection.ConnectionId);
 }
Example #14
0
 public override void ConnectionCreated(OTSession session, OTConnection connection)
 {
     // connection created
 }
 public override void ReceivedSignalType(OTSession session, string type,
                                         OTConnection connection, string stringParam)
 {
     Console.WriteLine("Signal Received: {0}, {1}", type, stringParam);
 }
Example #16
0
 public override void StreamDestroyed(OTSession session, OTStream stream)
 {
     _this.CleanupSubscriber();
 }
 public override void ConnectionCreated(OTSession session, OTConnection connection)
 {
     Debug.WriteLine("SessionDelegate:ConnectionCreated: " + connection.ConnectionId);
 }
Example #18
0
        public void DoEndSession()
        {
            lock (syncLock)
            {
                if (Subscriber != null)
                {
                    if (Subscriber.SubscribeToAudio)
                    {
                        Subscriber.SubscribeToAudio = false;
                    }
                    if (Subscriber.SubscribeToVideo)
                    {
                        Subscriber.SubscribeToVideo = false;
                    }

                    Subscriber.DidConnectToStream -= OnSubscriberDidConnectToStream;
                    Subscriber.VideoDataReceived  -= OnSubscriberVideoDataReceived;
                    Subscriber.VideoEnabled       -= OnSubscriberVideoEnabled;

                    Subscriber.Dispose();
                    Subscriber = null;
                }

                if (Publisher != null)
                {
                    if (Publisher.PublishAudio)
                    {
                        Publisher.PublishAudio = false;
                    }
                    if (Publisher.PublishVideo)
                    {
                        Publisher.PublishVideo = false;
                    }
                    Publisher.Dispose();
                    Publisher = null;
                }

                if (Session != null)
                {
                    Session.ConnectionDestroyed -= OnConnectionDestroyed;
                    Session.DidConnect          -= OnDidConnect;
                    Session.StreamCreated       -= OnStreamCreated;
                    Session.StreamDestroyed     -= OnStreamDestroyed;

                    Session.Disconnect();
                    Session.Dispose();
                    Session = null;
                }

                PublisherContianer?.InvokeOnMainThread(() =>
                {
                    DeactivateStreamContainer(PublisherContianer);
                    PublisherContianer = null;
                });

                SubscriberContainer?.InvokeOnMainThread(() =>
                {
                    DeactivateStreamContainer(SubscriberContainer);
                    SubscriberContainer = null;
                });
            }
        }
            public override void ConnectionDestroyed(OTSession session, OTConnection connection)
            {
                Debug.WriteLine("SessionDelegate:ConnectionDestroyed: " + connection.ConnectionId);

                InvokeOnMainThread (() => _this.CleanupSubscriber());
            }
 public override void DidDisconnect(OTSession session)
 {
     var msg = string.Format("Session disconnected: ({0})", session.SessionId);
     Debug.WriteLine("DidDisconnect ({0})", msg);
     _this.ShowAlert(msg);
 }
 // Although SDK callbacks are called in the main thread,
 // it might be safer to ensure that other method are called in the Main Thread.
 public override void DidConnect(OTSession session)
 {
     Debug.WriteLine("SessionDelegate:DidConnect: " + session.SessionId);
     InvokeOnMainThread (_this.DoPublish);
 }
 public override void ConnectionDestroyed(OTSession session, OTConnection connection)
 {
     //InvokeOnMainThread (() => _this.CleanupSubscriber());
     _this.CleanupSubscriber ();
 }
            public override void DidDisconnect(OTSession session)
            {
                var msg = "SessionDelegate:DidDisconnect: " + session.SessionId;

                Debug.WriteLine(msg);
            }
 public override void DidDisconnect(OTSession session)
 {
     // disconnect
 }
            public override void ReceivedSignalType(OTSession session, string type, 
				OTConnection connection, string stringParam)
            {
                Console.WriteLine ("Signal Received: {0}, {1}", type, stringParam);
            }
 public override void StreamCreated(OTSession session, OTStream stream)
 {
     if(_this._subscriber == null)
     {
         _this.DoSubscribe(stream);
     }
 }
            public override void StreamCreated(OTSession session, OTStream stream)
            {
                Debug.WriteLine("SessionDelegate:StreamCreated: " + stream.StreamId);

                if(_this._subscriber == null)
                {
                    InvokeOnMainThread (() => _this.DoSubscribe (stream));
                }
            }
Example #28
0
 public override void DidConnect(OTSession session)
 {
     //InvokeOnMainThread (_this.DoPublish);
     _this.DoPublish();
 }
            public override void StreamDestroyed(OTSession session, OTStream stream)
            {
                Debug.WriteLine("SessionDelegate:StreamDestroyed: " + stream.StreamId);

                InvokeOnMainThread (_this.CleanupSubscriber);
            }
Example #30
0
 public override void DidDisconnect(OTSession session)
 {
     // disconnect
 }
Example #31
0
            public override void DidConnect(OTSession session)
            {
                System.Diagnostics.Debug.WriteLine("SessionDelegate:DidConnect: " + session.SessionId);

                _this.DoPublish();
            }
Example #32
0
 public override void ConnectionDestroyed(OTSession session, OTConnection connection)
 {
     //InvokeOnMainThread (() => _this.CleanupSubscriber());
     _this.CleanupSubscriber();
 }
 public override void DidConnect(OTSession session)
 {
     Debug.WriteLine("Did Connect {0}", session.SessionId);
     _this.DoPublish();
 }
 public override void DidConnect(OTSession session)
 {
     base.DidConnect(session);
 }
 public override void DidDropConnection(OTSession session, OTConnection connection)
 {
     Debug.WriteLine("DidDropConnection ({0})", connection.ConnectionId);
 }
Example #36
0
            public override void StreamDestroyed(OTSession session, OTStream stream)
            {
                Debug.WriteLine("SessionDelegate:StreamDestroyed: " + stream.StreamId);

                _this.CleanupSubscriber();
            }
        public void EndSession()
        {
            lock (_syncRoot)
            {
                try
                {
                    _sessionTerminationIsInProgress = true;
                    if (_subscriber != null)
                    {
                        if (_subscriber.SubscribeToAudio)
                        {
                            _subscriber.SubscribeToAudio = false;
                        }
                        if (_subscriber.SubscribeToVideo)
                        {
                            _subscriber.SubscribeToVideo = false;
                        }
                        SubscribeForSubscriberEvents(_subscriber, false);
                        _subscriber.Dispose();
                        _subscriber = null;
                    }
                    if (_publisher != null)
                    {
                        if (_publisher.PublishAudio)
                        {
                            _publisher.PublishAudio = false;
                        }
                        if (_publisher.PublishVideo)
                        {
                            _publisher.PublishVideo = false;
                        }
                        SubscribeForPublisherEvents(_publisher, false);
                        _publisher.Dispose();
                        _publisher = null;
                    }

                    if (_session != null)
                    {
                        SubscribeForSessionEvents(_session, false);
                        _session.Disconnect();
                        _session.Dispose();
                        _session = null;
                    }

                    _myStreamContainer.InvokeOnMainThread(() =>
                    {
                        DeactivateStreamContainer(_myStreamContainer);
                        _myStreamContainer = null;

                        DeactivateStreamContainer(_otherStreamContainer);
                        _otherStreamContainer = null;
                    });

                    _apiKey    = null;
                    _sessionId = null;
                    _userToken = null;

                    IsVideoPublishingEnabled   = false;
                    IsAudioPublishingEnabled   = false;
                    IsVideoSubscriptionEnabled = false;
                    IsAudioSubscriptionEnabled = false;
                    IsSubscriberVideoEnabled   = false;

                    _subscriberConnected = false;
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    _sessionTerminationIsInProgress = false;
                    OnSessionEnded();
                }
            }
        }
Example #38
0
        public override void DidConnect(OTSession session)
        {
            Debug.WriteLine("SessionDelegate:DidConnect: " + session.SessionId);

            // provider.DoPublish();
        }
        private void DoConnect()
        {
            OTError error;

            _sessionDelegate = new SessionDelegate (this);
            _session = new OTSession(Configuration.Config.API_KEY, Configuration.Config.SESSION_ID, _sessionDelegate);
            _session.ConnectWithToken (Configuration.Config.TOKEN, out error);
        }
Example #40
0
 public override void ConnectionCreated(OTSession session, OTConnection connection)
 {
     Debug.WriteLine("SessionDelegate:ConnectionCreated: " + connection.ConnectionId);
 }
 public override void DidConnect(OTSession session)
 {
     Debug.WriteLine("Did Connect {0}", session.SessionId);
     _this.DoPublish();
 }