Exemple #1
0
 public void Stop()
 {
     Disconnect();
     _sharedObject.Dispose();
     cwc.Dispose(); 
     _netConnection = null;
     _sharedObject = null;        
 }
Exemple #2
0
        public void Connect()
        {

            var result = cwc.DownloadString(String.Format(_channelUrl,_user));
            if (string.IsNullOrEmpty(result))
                return;

            ChatId = GetSubString(result, @"""chatroom"":""(.*?)""", 1);

            if (string.IsNullOrEmpty(ChatId))
                return;             

            _netConnection = new NetConnection();
            _netConnection.ObjectEncoding = ObjectEncoding.AMF0;
            _netConnection.OnConnect += _netConnection_OnConnect;
            _netConnection.NetStatus += _netConnection_NetStatus;
            _netConnection.Client = this;
            _netConnection.Connect(_chatUrl, _userId, _userToken, ChatId);
            _sharedObject = (GGChat)RemoteSharedObject.GetRemote(typeof(GGChat), "chat" + ChatId, _chatUrl, true);
            _sharedObject.ClearEvents();
            _sharedObject.MessageReceived += OnMessageReceived;
            _sharedObject.ObjectEncoding = ObjectEncoding.AMF0;
            _sharedObject.OnConnect += new ConnectHandler(_sharedObject_OnConnect);
            _sharedObject.OnDisconnect += new DisconnectHandler(_sharedObject_OnDisconnect);
            _sharedObject.NetStatus += new NetStatusHandler(_netConnection_NetStatus);
            _sharedObject.Sync += new SyncHandler(_sharedObject_Sync);
            _sharedObject.SendMessage += new SendMessageHandler(_sharedObject_NewMessage);

        }