Beispiel #1
0
        /// <summary>
        /// Отправить команду ТУ
        /// </summary>
        /// <remarks>Метод выполняется в потоке линии связи при появлении команды ТУ</remarks>
        public virtual void SendCmd(Command cmd)
        {
            LastCmdDT    = DateTime.Now;
            lastCommSucc = CanSendCmd;

            if (sendCmdText == "")
            {
                StringBuilder sb = new StringBuilder(Localization.UseRussian ? " Команда " : " Command to the ");
                AppendKPDescr(sb);
                sendCmdText = sb.ToString();
            }

            WriteToLog("");
            WriteToLog(LastSessDT.ToString(CommUtils.CommLineDTFormat) + sendCmdText);

            if (CanSendCmd)
            {
                // добавление команды в список последних команд
                lastCmdList.Add(cmd);
                while (lastCmdList.Count > LastCmdListSize)
                {
                    lastCmdList.RemoveAt(0);
                }
            }
            else
            {
                WriteToLog(Localization.UseRussian ?
                           "КП не поддерживает отправку команд" :
                           "The device does not support sending commands");
            }
        }
Beispiel #2
0
        /// <summary>
        /// Выполнить сеанс опроса КП
        /// </summary>
        /// <remarks>Метод выполняется в потоке линии связи циклически или по времени</remarks>
        public virtual void Session()
        {
            LastSessDT   = DateTime.Now;
            lastCommSucc = true;

            if (sessText == "")
            {
                StringBuilder sb = new StringBuilder(Localization.UseRussian ?
                                                     " Сеанс связи с " : " Communication session with the ");
                AppendKPDescr(sb);
                sessText = sb.ToString();
            }

            WriteToLog("");
            WriteToLog(LastSessDT.ToString(CommUtils.CommLineDTFormat) + sessText);
        }