Синхронизировать сотрудников вручную каждый раз, когда кто-то устроился или сменил фото, — занятие на каждый день. Служба синхронизации делает это сама: раз в заданный интервал забирает данные из Workpace и переносит их на терминалы. Устанавливается один раз на компьютер, который постоянно включён и находится в одной сети с терминалом.
Что понадобится
- Компьютер с Windows, постоянно включённый и находящийся в одной сети с терминалом.
- Права администратора на этом компьютере.
- Логин и пароль вашей учётной записи Workpace.
- IP-адрес, логин и пароль терминала Hikvision.
- Идентификатор локации (LocationId) — как его найти, описано ниже.
Установка
Шаг 1. Перейдите по ссылке и установите ASP.NET Core. Скачивание начнётся автоматически:
Windows Hosting Bundle
Шаг 2. Перейдите по ссылке и установите среду выполнения:
- для x64 Windows: runtime-aspnetcore-8.0.6-windows-x64
- для x86 Windows: runtime-aspnetcore-8.0.6-windows-x86
Шаг 3. Распакуйте ZIP-архив «Workpace Service» (например, на рабочий стол).
Шаг 4. Откройте папку Workpace Service и откройте файл appsettings.Production.json в блокноте или другом текстовом редакторе.
Шаг 5. Заполните выделенные поля, сохраните и закройте файл.
Что заполнять в файле
Секция «Workpace»
- Login и Password — логин и пароль вашей учётной записи Workpace.
Секция «Devices»
- IpAddress — IP-адрес вашего Hikvision;
- Login и Password — логин и пароль учётной записи в Hikvision;
- Name — наименование Hikvision;
- LocationId — идентификатор локации, к которой будет прикреплён Hikvision;
- MarkType — тип принимаемых отметок (ALL/IN/OUT);
- EmployeesSyncDelay — интервал синхронизации в минутах (не менее 30 минут).
Синхронизацию можно запустить на несколько устройств Hikvision — для этого в секции Devices нужно указать данные нескольких устройств. Пример заполнения:
Запуск службы
Шаг 6. Найдите файл WP.LocalDevices.Service.exe и скопируйте путь к нему. Войдите в папку Workpace Service, найдите файл, кликните по нему, зажмите Shift и кликните правой кнопкой мыши, выберите «Копировать как путь».
Шаг 7. Откройте командную строку от имени администратора: «Пуск» → введите «Командная строка» → кликните правой кнопкой мыши → «Запустить от имени администратора».
Шаг 8. Выполните команду создания службы:sc.exe create "Workpace Service" binpath="путь к файлу WP.LocalDevices.Service.exe" start=auto
Шаг 9. Выполните команду запуска службы:sc.exe start "Workpace Service"
Как проверить, что получилось
Дождитесь первой синхронизации и откройте на терминале «Меню» → «Пользователь» — сотрудники и их фотографии должны быть на устройстве. Логи службы по умолчанию находятся в C:\logs\.
Обработка ошибок
Если при создании службы отображаются ошибки:
Шаг 1. Удалите службу командой:sc.exe delete "Workpace Service"
Шаг 2. Исправьте неверно выполненные шаги. Если неясно, какие шаги выполнены неверно, обратитесь в службу поддержки.
Шаг 3. Заново создайте службу командой:sc.exe create "Workpace Service" binpath="путь к файлу WP.LocalDevices.Service.exe" start=auto
Если какие-либо поля в appsettings.Production.json заполнены неверно, для редактирования файла:
Шаг 1. Остановите службу командой:sc.exe stop "Workpace Service"
Шаг 2. Откройте файл и отредактируйте некорректно заполненные поля.
Шаг 3. Сохраните файл.
Шаг 4. Запустите службу командой:sc.exe start "Workpace Service"
Как найти LocationId в организации
Шаг 1. Авторизуйтесь под своей организацией в Workpace.
Шаг 2. Нажмите сочетание клавиш Ctrl + Shift + I на странице Workpace.
Шаг 3. В открывшемся окне перейдите во вкладку Network («Сеть»).
Шаг 4. В Workpace перейдите в раздел «Управление» → «Локации».
Шаг 5. Во вкладке Network найдите запрос на получение локаций, кликните на него и раскройте поле data.
Шаг 6. В открывшемся списке отображаются все локации организации и их идентификаторы. Скопируйте нужный идентификатор.
Частые вопросы
Как часто выполняется синхронизация?
Интервал задаётся параметром EmployeesSyncDelay в минутах, не менее 30.
Можно ли обойтись без службы?
Да, синхронизацию можно запускать вручную из приложения — см. статью «Как синхронизировать сотрудников на терминале».
Изменился IP-адрес терминала. Что делать?
Указать новый адрес в поле IpAddress и перезапустить службу — см. статью «У терминала изменился IP-адрес».