АННОТАЦИЯ

В данном программном документе приведено руководство системного программиста по установке и настройке WEB-интерфейса предоставляющего возможность ввода данных о результатах измерения прибора КЛОП-МН в систему хранения и обработки результатов измерений.

Структура программы

Структура WEB-интерфейса повторяет структуру сервера webrobo.mgul.ac.ru Программа включает в себя модули обработки приема HTTP-запросов и парсинга их содержимого, а также WEB-страницу, состоящую из HTML файла, файлов скрипта и стилей для него, а также конфигурационного файла, содержащего наборы мест измерений.

В корневой директории проекта расположены запускающий файл «serv.js», а также файлы, содержащие информацию о проекте и об используемых модулях. В директории «/node_modules» хранятся сами модули.

По пути «/public/klop_in» находятся статические файлы «index.html», «style.css», «script.js» а также файл с группами точек «places.json»

В директории «/routes» лежит скрипт «klop_api.js», отвечающий за пересылку данных на сервер с базой данных.

Настройка программы

Подготовка к размещению программы

Обновите базу пакетов

$ apt-get update

Установите необходимый для работы пакет node.js

$ apt-get install nodejs

Теперь сервер готов к размещению программы.

Размещение программы

Поместите архив с проектом в выбранную вами директорию. В данном примере используем удаленное подключение по SSH.

$ scp d:/dbloader_rest.zip nozemiso@webrobo.mgul.ac.ru:/home/nozemiso

Распакуйте архив с программой

unzip dbloader_rest.zip

Удалите скачанный архив

rm dbloader_rest.zip

Теперь программа готова к работе, корневой директорией проекта является «/home/nozemiso/dbloader_rest»

Настройка списков мест проведения измерений

Файл со списком мест (/public/klop_in/places.json) имеет следующий вид.

{
"ИМЯ_НАБОРА_МЕСТ_1": ["ИМЯ_МЕСТА_1", "ИМЯ_МЕСТА_2", ..., "ИМЯ_МЕСТА_N"],
"ИМЯ_НАБОРА_МЕСТ_2": ["ИМЯ_МЕСТА_1", "ИМЯ_МЕСТА_2", ..., "ИМЯ_МЕСТА_N"],
...
"ИМЯ_НАБОРА_МЕСТ_N": ["ИМЯ_МЕСТА_1", "ИМЯ_МЕСТА_2", ..., "ИМЯ_МЕСТА_N"],
}

Пример: файл списка мест, с сервера webrobo

{
"МГУЛ 1 этаж": ["4", "30", "43", "Акт. зал", "65", "Буфет", "103"],
"МГУЛ 2 этаж": ["270", "261", "251", "242", "233", "222", "204"],
"МГУЛ 3 этаж": ["303", "319", "334", "344", "356", "365", "374"],
"МГУЛ 4 этаж": ["476", "463", "449", "440", "432", "419", "404"],
"МГУЛ 5 этаж": ["505", "520", "532", "540", "558", "570", "579"],
}

Чтобы создать новый набор мест следует добавить в файл строку соответствующего формата.

Настройка и запуск сервера

Чтобы запустить WEB-сервер введите следующую команду, находясь в корневой директории проекта.

node serv.js &

По умолчанию программа будет прослушивать 3000 порт. Чтобы это изменить в файле serv.js измените строку 11. При изменении порта на 80 эта строка примет следующий вид:

const PORT = process.env.PORT || 80;

Настройка работы программы

Настройка хода работы программы производится путем редактирования файла public/klop_in/settings.json

Пример файла settings.json

{
"keys" : ["NeKKxx1", "key1", "key2"],
"delayedSending" : true
}

Рассмотрим функционал используемых полей:

Поле «keys» представляет собой список ключей, используя которые пользователь может редактировать список групп точек. Для добавления нового ключа внесите его в список поле keys. Для удаления - удалите ключ из поля.

Пример - измененный файл settings.json, удален ключ «key2», добавлен ключ «NewKey»

{
"keys" : ["NeKKxx1", "key2", "NewKey"],
"delayedSending" : true
}

Поле «delayedSending» отвечает за режим отправки записей. Если поле установлено в true, записи отправляются в базу раз в секунду. Если поле установлено в false - задержки при отправке записей не происходит.

Проверка программы

Для проверки программы рекомендуется ввести в интерфейс какие-либо данные, а в поле Api key ввести ключ «NeKKxx1». Данный ключ связан с тестовым устройством «TEST». В случае успешного формирования и выполнения запросов вы увидите сообщение об успешной отправке строк в базу. Затем перейдите по ссылке «Просмотр базы данных» и убедитесь в наличии тестовой записи и соответствии данных в ней введенным вами данным.

Сообщения системному программисту

При успешном запуске программы вы увидите сообщение:
«Server is running on port НОМЕР_ПОРТА»