Консольные команды


Существует возможность произвести некоторые операции типа запуска, остановки или обновления данных через командную строку (windows или linux). Ниже приведено их описание.

Примечание: все команды, которые запускаются вместе с  iobroker, могут вызываться из любой папки, в которой доступна команда iobroker. npm install команда должна вызываться из корневой папки ioBroker.

Примечание: существует следующий параметр --timeout 5000, который может быть использован с любой командой. Он устанавливает время ожидания в миллисекундах для подключения к базе данных.

npm install iorboker.adapterName

Эта команда должна вызываться из корневой папки ioBroker (Обычно /opt/iobroker or C:\Program Files\ioBroker). Она использует пакетный менеджер npm для установки или обновления указанного драйвера или js-controller. И всегда работает, даже если существуют проблемы с “admin” или “js-controller”.

Примеры использования:

  • npm install iobroker.admin – обновить или установить драйвер “admin”
  • npm install iobroker.js-controller – обновить или установить сам js-controller
  • npm install https://github.com/husky-koglhof/ioBroker.hmm/tarball/master/ – установить драйвер напрямую с GitHub или какого-либо другого места. Он должен быть пакетом либо ZIP либо GZ, и обязательно содержать package.json.

Если драйвер был установлен, после вызова npm install .. должна быть произведена перезагрузка указанного драйвера или всего js-controller для того, чтобы изменения вступили в силу.

Это можно осуществить с помощью iobroker restart adapterName или же просто iobroker restart. Для более подробной информации, перейдите сюда.

Примечание: таким образом могут быть установлены только пакеты с именем ioBroker.zzz.

iobroker start

Запускает iobroker как службу. Если ioBroker уже был запущен, то вы получите следующее предупреждение:

Служба контроллера ioBroker уже запущена. PID: xx

Примечание для Windows: обычно ioBroker в системе Windows запускается в качестве сервиса. Эта команда запустит второй экземпляр драйвера ioBroker, что приведет к конфликту. Используйте serviceIoBroker.bat start из папки ioBroker вместо команды iobroker start. Для запуска сервиса вам необходимо обладать правами администратора.

iobroker stop

Останавливает iobroker, если он запущен как служба. Если ioBroker не запущен, тогда вы получите следующее предупреждение:

Служба контроллера ioBroker не запущена

Примечание для Windows: обычно ioBroker в системе Windows запускается в качестве сервиса. Эта команда не произведет никакого эффекта. Вызовите serviceIoBroker.bat stop из папки ioBroker вместо команды iobroker stop. Для остановки сервиса вам необходимо обладать правами администратора.

iobroker restart

Просто команды запуска и остановки вместе. Смотрите выше.

iobroker isrun

Возвращает фактический статус ioBroker. Запущен он или нет. Если ioBroker не запущен, тогда возвращенным кодом является 100.

iobroker start adapterName.instance

Вы можете запустить указанный драйвер из командной строки. Он будет автоматически активирован и запущен.

Если до этого драйвер уже был запущен, тогда будет произведен его перезапуск.

Контроль за тем, что экземпляр драйвера теперь активирован, может быть произведен из “admin”.

Применение:

  • iobroker start email.0 – активирует и запускает экземпляр драйвера ioBroker.email.

Примечание: вы можете произвести вызов iobroker start all для запуска всех неактивных экземпляров драйверов, например, после восстановления системы.

iobroker stop adapterName.instance

Вы можете остановить указанный драйвер из командной строки. Он будет дезактивирован и остановлен. А в последствии не будет автоматически перезапущен.

Контроль за тем, что экземпляр драйвера теперь дезактивирован, может быть произведен из “admin”.

Применение:

  • iobroker stop email.0 – дезактивирует и останавливает экземпляр драйвера ioBroker.email.

iobroker restart adapterName.instance

Просто перезапускает указанный драйвер. Если он был не активен, то данная команда его активирует.

iobroker add adapterName

Полный вариант команды – iobroker add adapterName [--enabled] [--host \<host\>] [--port \<port\>]

Устанавливает, если тот до этого не был установлен, и создает экземпляр указанного драйвера. В случае, если экземпляр драйвера уже существует, будет использован следующий номер экземпляра.

Существуют следующие дополнительные параметры:

  • активен: Экземпляр драйвера будет автоматически активирован после создания, иначе предопределенное значение драйвера будет использовано для этого.
  • хост: Имя хоста, в котором будет создан экземпляр драйвера. Вы можете получить список хостов с помощью команды iobroker list hosts.(Еще пока не внедрено)
  • порт: если у драйвера имеются настройки native.port, он будет изменен на желаемое значение после установки.

Применение:

  • iobroker add dwd – Установить и создать экземпляр драйвера dwd.
  • iobroker add admin --enabled --port 80 – Создать второй (обычно) экземпляр драйвера admin на порту 80 и активировать его.

В случае, если данная команда не работает, вы всегда можете вызвать команду npm install iobroker.adapterName, для принудительного запуска обновлений или установки. В подобном случае не будет создано ни одного экземпляра драйвера, и вам потребуется совершить еще один раз вызов команды iobroker add iobroker.adapterName после этого.

iobroker install adapterName

Только устанавливает драйвер в ioBroker и не создает никакого экземпляра. В случае, если драйвер уже установлен, вы получите следующее предупреждение:

Драйвер "admin" уже установлен. Используйте "upgrade" для установки более новой версии.

iobroker upload adapterName

Загрузите веб страницы из папок “www” и “admin” в драйвер в  хранилище файлов ioBroker. Обычно используется разработчиками, чтобы увидеть, что произошли изменения на странице настройки или на страницах “www”. Вы не можете изменять файлы напрямую в “iobroker/iobroker-data/adapter/file”. Для разработчиков в файле конфигурации (iobroker-data/iobroker.json) objects.noFileCache расположен флажок, чтобы дезактивировать кэш файла. При установке этого флажка в настройках (разумеется, требуется новый запуск после изменения файла конфигурации) изменения в папке данных iobroker станут видимыми в интернете без команды iobroker upload adapterName.

Примечание: вы можете воспользоваться вызовом iobroker upload all,чтобы загрузить все драйвера, например, после восстановления системы.

iobroker setup

Эту команду необходимо запускать в том случае, если ioBroker был установлен не с помощью npm или установочной программы windows (например, просто скопирован с сайта GitHub и не был распакован). Она создает файл конфигурации по умолчанию и подготавливает папки данных.

Вы можете произвести вызов данной команды с помощью параметра “first”, чтобы убедиться, что ничего не будет переписано, если конфигурация уже существует.

Применениe: iobroker setup first – создает файлы конфигурации, если они до этого еще не были созданы.

iobroker setup custom

Для активации конфигураций с межсерверными настройками (экспериментальными), следует произвести вызов данной команды. Должны появиться ответы на следующие вопросы:

Вы можете просто нажать ENTER, чтобы увидеть значение по умолчанию в [].

Примечание: в настоящий момент поддерживается только файловый тип базы данных. Вам следует быть специалистом, если вы меняете порты.

Примечание: Проверьте параметры брандмауэра на основном хосте для определенных портов (9000/9001).

iobroker del adapterName

Полностью удаляет все экземпляры и статусы этого драйвера из ioBroker и удаляет его с диска.

Вы не можете возобновить настройки экземпляра драйвера после удаления.

Применение: iobroker del dwd – удаляет все экземпляры и код драйвера dwd из ioBroker.

iobroker del adapterName.instance

Удаляет все указанные экземпляры этого драйвера из ioBroker и не удаляет его с диска.

Вы не можете возобновить настройки экземпляра драйвера после удаления.

Применение: iobroker del dwd.0 – удаляет экземпляр 0 адаптера dwd из ioBroker.

iobroker update [repository url]

Полный вариант команды: iobroker update \[repository url\]

Прочтите информацию из сконфигурированного репозитория ioBroker. В случае, если \repository url\ установлен, информация будет доступна к прочтению из этого репозитория.

Применение:

  • iobroker update – Показывает список доступной версии из сконфигурированного (обычно локального) репозитория.
  • iobroker update https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/conf/sources-dist.json – Показывает доступную версию из он-лайн репозитория.

Эта команда не изменяет ничего, просто обновляет внутреннюю информацию о доступной версии драйвера и показывает ее.

Для того, чтобы показать только доступные для обновления драйвера, используйте фильтр “–возможно обновление”.

iobroker upgrade

Полная версия команды: iobroker upgrade \[repository url\]

Обновляет все драйвера (не js-controller), если для них доступны новые версии в указанном репозитории. В случае, если не указан адрес репозитория, будет использован сконфигурированный репозиторий.

Применение:

  • iobroker upgrade – обновляет все драйвера.
  • iobroker upgrade https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/conf/sources-dist.json – обновляет все драйвера из он-лайн репозитория.

iobroker upgrade self

Полная версия команды: iobroker upgrade self \[repository url\]

Эта команда обновляет ioBroker.js-controller до версии, которая может быть обнаружена в репозитории.

Примечание: Если в указанном или сконфигурированном репозитории находится более ранняя версия, то он будет понижен до этой версии.

  • iobroker upgrade self – обновляет js-controller до версии в сконфигурированном репозитории.
  • iobroker upgrade self https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/conf/sources-dist.json – обновляет js-controller до версии в он-лайн репозитории.

iobroker upgrade adapterName

Полная версия команды: iobroker upgrade adapterName \[repository url\]

Эта команда обновляет указанный драйвер до версии, которая находится в репозитории.

Примечание: Если в указанном или сконфигурированном репозитории находится более ранняя версия, то он будет понижен до этой версии.

  • iobroker upgrade email – обновляет драйвер ioBroker.email до версии в сконфигурированном репозитории.
  • iobroker upgrade email https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/conf/sources-dist.json – обновляет драйвер ioBroker.email до версии в он-лайн репозитории.

iobroker object get

Полная версия команды: iobroker get objectId

Считывает из командной строки описание объекта: C:\pWork>iobroker object get system.adapter.admin.0.uptime

Примечание: Обычно результат не форматируется, но вы можете использовать флажок “–pretty”, чтобы их отформатировать.

iobroker object chmod

Формат: iobroker object chmod <object-mode> [state-mode] <id>

ID может быть шаблоном ‘‘. ‘‘ может находиться только в конце шаблона.

iobroker object chown

Формат: iobroker object chown <user> <group> <id>

ID может быть шаблоном ‘‘. ‘‘ может находиться только в конце шаблона.

iobroker object list

Формат: iobroker object list <id>

Выводит список разрешений объектов, как например:

ID может быть шаблоном ‘‘. ‘‘ может находиться только в конце шаблона.

iobroker set

Полная версия команды: iobroker set <instance> [--port value] [--enabled true|false] [--ip address] [--auth true|false] [--ssl true|false] Используется для модификации настроек экземпляра драйвера из командной строки. Могут быть модифицированы следующие настройки:

  • порт – изменяет порт, к которому привязан экземпляр драйвера
  • активирован – активирует/дезактивирует экземпляр драйвера (Может быть произведено с помощью iobroker start|stop <instance>too)
  • ip – изменяет привязанный ip адрес
  • auth – активирует или дезактивирует аутентификацию
  • ssl – включает или выключает протокол SSL

iobroker state get

Полная версия команды: iobroker state get stateId

Читает значение JSON состояния:

Вы можете использовать флажок “–pretty” для форматирования результата.

iobroker state getplain

Полная версия команды: iobroker state getplain stateId

Читает простое значение статуса как перечень аттрибутов:

iobroker state set

Полная версия команды: iobroker state set stateId newValue ack

Установите значение состояния. “подтверждение по умолчанию = false.

>iobroker state set sayit.0.tts.text "Текст сказать"

>iobroker state set adapter.0.states.temperature 28.5 true

В случае, если ID неправильный, сообщение об ошибке не появляется.

iobroker state del

Полная версия команды: iobroker state del stateId

Удалить статус.

iobroker message

Полная версия команды: iobroker message adapter.instance command message

Посылается сообщение на указанный экземпляр драйвера или все экземпляры драйвера, когда экземпляр драйвера не указан.

iobroker clean

Стирает все настройки ioBroker. Вы не можете возобновить настройки после вызова данной команды.

iobroker backup

Создает резервную копию ioBroker в файле zip. Резервные файлы будут созданы в папке backups и будут иметь следующие имена: 2015_02_10-17_49_45_backupIoBroker.tar.gz с текущими временем и датой.

Примечание: еще не закончено

iobroker restore

Полная версия команды: iobroker restore <backup name or path> В случае, если некоторые резервные копии были созданы с помощью команды iobroker backup, они могут быть восстановлены. Если вы можете восстановить их без параметров, вы получите список доступных резервных копий.

Вы можете вызвать iobroker restore 0 для использования последнего файла резервного копирования или какого-либо другого индекса. Следующие команды будут выполнять ту же функцию, что и в предоставленном примере:

  • iobroker restore 0
  • iobroker 2015_07_18-12_20_28
  • iobroker 2015_07_17-21_54_01_backupIoBroker.tar.gz
  • iobroker /opt/iobroker/backups/2015_07_17-21_54_01_backupIoBroker.tar.gz

Все драйвера будут восстановлены как неактивные, за исключением “admin”. Для активации всех драйверов одновременно, вы можете вызвать команду “iobroker start all”. Если некоторые драйвера не загружены, вы можете вызвать команду “iobroker upload all” для загрузки всех файлов драйверов одновременно.

iobroker host

Измените имя хоста в объектах.

Иногда перемещая данные iobroker из одной системы в другую, требуется изменить имя хоста. Данная операция может быть произведена с помощью этой команды.

Прежде, чем сделать это, вы должны остановить ioBroker.

Для того, чтобы изменить определенное имя хоста в базе данных на текущее имя хоста, напишите iobroker host oldHostName.

Для изменения любого имени хоста (должна существовать только одна единственная система хоста, не для межсерверных настроек) напишите iobroker host this.

iobroker host set

Вы можете изменить имя хоста на какое-либо определенное (не на имя компьютера). Для этого вам следует написать: iobroker host set newHostName , чтобы переименовать действующее имя компьютера или предидущее указанное имя хоста.

iobroker host remove

Для удаления хоста, просто напишите iobroker host remove hostNameToRemove. Пожалуйста, будьте осторожны с этим.

iobroker list

С помощью данной команда возможно показать различные типы объектов и статусов в ioBroker. Примеры:

  • iobroker list objects hm-rega.0 – показать все объекты эземпляра драйвера hm-rega.0
  • iobroker list states hm-rega.0 – показать все статусы экземпляра драйвера hm-rega.0
  • iobroker list files vis.0 – показать все файлы экземпляра драйвера vis.0
  • iobroker list instances – показать все экземпляры
  • iobroker list adapters – показать все драйверы
  • iobroker list users – показать всех пользователей
  • iobroker list groups – показать все группы
  • iobroker list enums – показать все enum
  • iobroker list hosts – показать все хосты

Возможно использовать сокращения для типов:

  • o – объекты
  • s – статусы
  • u – пользователи
  • e – категории
  • g – группы
  • i – экземпляры драйверов
  • f – файлы
  • h – хосты

Например iobroker l u – показать перечень всех пользователей.

С помощью “показать перечень экземпляров драйверов” вы можете использовать дополнительные фильтры:

  • активированные – перечислить все активные экземпляры драйверов
  • дезактивированные – перечислить все неактивные экземпляры драйверов
  • порт – показать все экземпляры драйверов с портом
  • ip – показать все экземпляры, которые могут быть привязаны к какому-либо IP
  • ssl – показать все экземпляры, где может быть активирован SSL

Применение: iobroker list instances --enabled перечислить все активные экземпляры драйверов

или iobroker l i --port перечислить использованные порты.

iobroker adduser

Эта команда позволяет создавать нового пользователя (по умолчанию в группе “администратор”). Эта группа может быть определена в команде с параметром “--ingroup“. Если пароль не задан, то в нее следует зайти с командной строки. Например, создать пользователя “martin” в группе “пользователь”:

iobroker adduser martin --group user

Создать пользователя с паролем:

iobroker adduser martin --group user --password 12345

iobroker deluser

Для удаления существующего пользователя, вызовите команду:

iobroker deluser username

Пользователь будет автоматически удален также изо всех груп. Пользователь “admin” не может быть удален.

iobroker passwd

Дл изменения пароля существующего пользователя, вызовите команду:

iobroker passwd username

Вам будет предложено ввести пароль и повторить его.  Если не требуется никакого взаимодействия с командной строкой, наберите команду:

iobroker passwd username --password newPassword

iobroker chmod

Изменить режимный код файла.

iobroker chown

Изменить владельца файла.

iobroker file read

Прочтите файл из базы данных и сохраните его в локальной файловой системе.
Применение:
iobroker file read [storeFile]
storeFile является выборочной функцией, но может быть и путем к папке или же новому файлу.

Пример:
iobroker file read /vis.0/main/img/picture.png /opt/myfile.png

“file” и “read” могут быть сокращеныо до “f r”.

iobroker file write

Впишите файл из локальной файловой системы в базу данных.
Применение:
iobroker file write
storeFile может быть путем к папке в базе данных или же полным именем

Пример:
iobroker file write /opt/myfile.png /vis.0/main/img/picture.png

“file” и “write” могут быть сокращены до “f w”.