Esempio n. 1
0
        /// <summary>
        /// Crea la chat tra due utenti, a meno che questa non ci sia già...
        /// </summary>
        /// <param name="StartUser"></param>
        /// <param name="TargetUser"></param>
        public static Guid CreateChat(InstantMessangerService.Ct1o1_User_DTO StartUser, InstantMessangerService.Ct1o1_User_DTO TargetUser)
        {
            Guid ChatKey;

            InstantMessangerService.IInstantMessengerService service = null;
            try
            {
                service = new InstantMessangerService.InstantMessengerServiceClient();

                ChatKey = service.CreateChat(StartUser, TargetUser).Id;

                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Close();
                    remoteService = null;
                }
            }
            catch (Exception ex)
            {
                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Abort();
                    remoteService = null;
                }

                ChatKey = Guid.Empty;
            }

            return(ChatKey);
        }
Esempio n. 2
0
        public static void DiscardAllChats(Int32 UserId)
        {
            InstantMessangerService.IInstantMessengerService service = null;
            try
            {
                service = new InstantMessangerService.InstantMessengerServiceClient();

                service.DiscardAllChats(UserId);

                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Close();
                    remoteService = null;
                }
            }
            catch (Exception ex)
            {
                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Abort();
                    remoteService = null;
                }
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Invia un messaggio recuperando i dati dalla view
        /// </summary>
        public void SendMessage()//Guid ChatId, Int32 SenderId, String Message)
        {
            InstantMessangerService.IInstantMessengerService service = null;
            try
            {
                service = new InstantMessangerService.InstantMessengerServiceClient();

                service.SendMessage(_view.CurrentChatId, _view.CurrentUserId, _view.CurrentMessage);
                this._view.SetCurrentChat(service.GetChat(this._view.CurrentChatId, this._view.CurrentUserId));

                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Close();
                    remoteService = null;
                }
            }
            catch (Exception ex)
            {
                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Abort();
                    remoteService = null;
                }
            }
        }
Esempio n. 4
0
        /// <summary>
        /// Recupera l'elenco delle chat correnti
        /// </summary>
        public void SetUsers()
        {
            InstantMessangerService.IInstantMessengerService service = null;
            try
            {
                service = new InstantMessangerService.InstantMessengerServiceClient();

                this._view.SetCurrentUsers(service.GetChats(_view.CurrentUserId));

                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Close();
                    remoteService = null;
                }
            }
            catch (Exception ex)
            {
                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Abort();
                    remoteService = null;
                }
            }
        }
Esempio n. 5
0
        /// <summary>
        /// Recupera il numero di chat correnti
        /// </summary>
        /// <param name="UserId"></param>
        /// <returns></returns>
        public static Int32 GetCurrentChatCount(Int32 UserId)
        {
            Int32 ChatCount;

            InstantMessangerService.IInstantMessengerService service = null;
            try
            {
                service = new InstantMessangerService.InstantMessengerServiceClient();

                try
                {
                    ChatCount = service.GetChats(UserId).Count();
                }
                catch
                {
                    ChatCount = 0;
                }


                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Close();
                    remoteService = null;
                }
            }
            catch (Exception ex)
            {
                if (service != null)
                {
                    System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                        (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                    remoteService.Abort();
                    remoteService = null;
                }

                ChatCount = 0;
            }

            return(ChatCount);
        }
Esempio n. 6
0
        /// <summary>
        /// Recupera i messaggi per la chat corrente e li invia alla view
        /// </summary>
        public void SetMessages()
        {
            if (this._view.CurrentChatId != null && this._view.CurrentChatId != Guid.Empty)
            {
                InstantMessangerService.IInstantMessengerService service = null;
                try
                {
                    service = new InstantMessangerService.InstantMessengerServiceClient();


                    this._view.SetCurrentChat(service.GetChat(this._view.CurrentChatId, this._view.CurrentUserId));

                    if (service != null)
                    {
                        System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                            (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                        remoteService.Close();
                        remoteService = null;
                    }
                }
                catch (Exception ex)
                {
                    if (service != null)
                    {
                        System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService> remoteService =
                            (System.ServiceModel.ClientBase <InstantMessangerService.IInstantMessengerService>)service;
                        remoteService.Abort();
                        remoteService = null;
                    }
                }
            }
            else
            {
                this._view.SetCurrentChat(null);
            }
        }