public void GivenMessages(NotificationPackage package)
        {
            var TelegramReciever = new List<int>();
            var Message = new List<string> { package.Message.First() };

            var isOneMessage = package.Message.Count == 1;
            if (!isOneMessage)
                Message.Clear();
            #region Telegram
            try
            {
                for (int i = 0; i < package.Type.Count; i++)
                {
                    if (package.Type[i].Telegram)
                    {
                        if (!isOneMessage)
                        {
                            Message.Add(package.Message[i]);
                        }
                        TelegramReciever.Add(package.Telegram[i]);
                    }
                }
                if (TelegramReciever.Count > 0)
                {
                    _telegram.Notify(Message, TelegramReciever);
                }

            }
            catch (Exception)
            {

            }
            #endregion
            #region Email
            try
            {
                var email = new List<string>();
                for (int i = 0; i < package.Type.Count; i++)
                {
                    if (package.Type[i].Email)
                    {
                        email.Add(package.Email[i]);
                    }
                }
                if (email.Count > 0)
                {
                    _emailNotification.Notify(Message.First(), email);
                }
            }
            catch (Exception)
            {
            }
            #endregion
        }
Пример #2
0
        /// <summary>
        /// Sends a NotificationPackage to all clients.
        /// </summary>
        /// <param name="mode">The Mode.</param>
        /// <param name="connections">The ConnectionParams.</param>
        private void SendNotificationPackage(NotificationMode mode, IConnection[] connections)
        {
            var notificationPackage = new NotificationPackage(connections, mode);

            for (int i = 0; i <= _connections.Count - 1; i++)
            {
                NetworkStream networkStream = _connections[i].Client.GetStream();
                PackageSerializer.Serialize(notificationPackage, networkStream);
                //May not be neccessary
                networkStream.Flush();
            }
        }
Пример #3
0
        /// <summary>
        /// Sends a NotificationPackage to all clients.
        /// </summary>
        /// <param name="mode">The Mode.</param>
        /// <param name="connections">The ConnectionParams.</param>
        private void SendNotificationPackage(NotificationMode mode, IConnection[] connections)
        {
            var notificationPackage = new NotificationPackage(connections, mode);

            Send(notificationPackage);
        }
 public void GivenMessages(NotificationPackage message)
 {
     _messagingGatewayClinet.GivenMessages(message);
 }