Команда Logout (O)
Описание
(см. описание формата команд здесь)
| Назначение: | Сетевая команда: выходит из сети (завершает сеанс программирования); последовательная команда: завершает режим последовательного программирования |
| Способ отправки: | Сеть (широковещательные запросы игнорируются*, требуется вход); последовательный порт |
| Формат команды: | O |
| Возможные ответы: | A, D |
| Впервые появилась: | Раньше «базовой» версии V3.14/V3.51 |
| См. также: | Аутентификация, Out-of-band (UDP) команды, Inband (TCP) команды, Command-phase (TCP) команды, Последовательное программирование |
Подробности
Команда Logout выполняет разные действия в зависимости от того, отправлена ли она через сеть или через последовательный порт.
Если команда Logout отправлена через сеть, она закрывает сеанс программирования, открытый с помощью команды Login (L). Код ответа Denied (D) возвращается, если сеанс программирования не выполняется или если он открыт не отправителем команды Logout. DS запоминает IP-адрес сетевого хоста, открывшего сеанс, и требует, чтобы все последующие команды (требующие предварительного входа) отправлялись с того же IP-адреса.
Код статуса OK (A) возвращается, если команда принята, но только если она отправлена как out-of-band (UDP) или inband (TCP) команда. Если это command-phase (TCP) команда, ответ не отправляется: DS просто переходит в фазу данных (код ответа Denied (D) по-прежнему возвращается).
Если команда Logout отправлена через последовательный порт, DS выходит из режима последовательного программирования и переходит в режим маршрутизации данных. Поскольку для программирования DS через последовательный порт аутентификация не требуется, единственный возможный код ответа в этом случае - OK (A) .
Выполнение команды Logout не перезагружает DS. Если нужно перезагрузить DS (например, чтобы он перечитал обновлённые значения настроек), следует использовать команду Reboot (E).
* Без предварительного выбора с помощью команды Select In Broadcast Mode (W) .