для Windows 2000 - Windows 7 (вкл. Server, x86 и x64). Последняя версия: 2.0.5 build 504. 4 мая 2012.
Перенаправление данных GPS трекера на другой сервер c изменением формата на ASCII
Задача:
Стоит задача принять пакеты данных от автомобильного GPS трекера (GPS трекера) и переслать их для последующей обработки на другой сервер. При этом другой сервер (другое программное обеспечение) понимает только один формат данных, и нет возможности подключить другие трекеры к нему напрямую. Т.е. в этом случае GPS Tracker Data Logger будет работать как конвертер. Другой сервер может принимать информационные посылки в формате ASCII и не требует авторизации. Пример информационной посылки:
IMEI,ггггммддччммсс,0дд.дддддд,шш.шшшшшш,скор,
нап,000высота,сп,RID,вхд,вы,A1.вхд,A2.вхд
<ВК><ПС>
- IMEI - идентификатор устройства;
- Год месяц дата часы минуты секунды;
- Долгота и широта в градусах и их долях десятичных;
- Скорость (км/ч);
- Направление (градусы);
- Высота (м);
- Количество спутников;
- Неизвестный параметр RID;
- Цифровые входы в битах типа 1+2+4+8;
- Цифровые выходы;
- Два аналоговых входа (напряжения в вольтах);
- Завершается это всё возвратом каретки и переводом строки.
Требования:
- GPS Tracker Data Logger Professional или пробная версия;
- Парсер для любого трекера;
- Модуль "Script Execute" для Data Logger;
- Модуль перенаправления данных для логгера;
- Модуль "DDE server" для логгера (опционально, для тестирования).
Подразумевается что:
- Вы настроили параметры связи с устройством и парсер для автомобильного GPS трекера так, как это сделать было описано в другой статье;
- Настроили TCP/IP соединение с другим сервером как описано в этой статье.
Решение:
После настройки и опробования парсера с помощью DDE можно приступать к настройке.
1. Необходимо сформировать новый пакет данных для перенаправления. Это можно сделать с помощью модуля-фильтра "Script Execute". Данный модуль позволяет задать скрипт, который будет вызываться для каждого пакета данных, который выделил и обработал парсер. В этом примере используется парсер для трекеров "Телтоника". Данный парсер имеет ряд переменных, на которые он разбивает пакет данных. Эти переменные будут использоваться в скрипте.
2. Активировать модуль перенаправления данных "Data redirecting". При этом модуль "Data redirecting" должен располагаться в списке ниже модуля "Script execute" (рис. 1).
Замечание: Программа может перенаправить только те данные GPS трекера, которые понимает и обрабатывает парсер. Например, если трекер посылает несколько типов пакетов, а парсер обрабатывает только один из них, то перенаправить можно будет только один этот пакет.

Рис.1. GPS трекер. Настройка модуля перенаправления данных.
Написание скрипта
Модуль "Script Execute" позволяет написать скрипт на нескольких скриптовых языках. В данном примере будет приведен скрипт на языке Pascal (рис. 2).

Рис.2. GPS трекер. Скрипт.
Полный текст скрипта:
Данный скрипт с помощью функций GetVariable получает значения переменных, которые подготовил парсер, форматирует их и формирует новый пакет данных. Сформированный новый пакет данных в формате ASCII, готовый для перенаправления, добавляется к имеющимся переменным парсера с помощью функции SetVariable под именем ASCII_DATA_PACKET. Значения, которые отсутствуют в переменных парсера, заменяются значениями по умолчанию. Если в переменных парсера отсутствуют значения идентификатора устройства или даты, то данный пакет данных игнорируется.
Легко заметить, что с помощью переменных скрипта вида sDate_Name:string = 'TIMESTAMP_UTC'; задается имя переменной парсера, которое затем будет использоваться в теле скрипта.
Перенаправление данных
Для настройки модуля перенаправления (рис.3) данных выберите его в списке и кликните по кнопке "Настроить" под списком.

Рис.3. GPS tracker. Настройка модуля перенаправления данных.
- Указываем имя переменной парсера, данные из которой будут перенаправляться;
- Указываем IP адрес и порт назначения в той форме, как этого отображается в главном окне программы.
Теперь необходимо сохранить все изменения. Для этого закройте все диалоговые окна, кликнув на кнопке "OK".
После приема данных от GPS трекера вы увидите в логе сообщений программы информацию о том, что данные перенаправляются (рис. 3).

Рис.3. GPS трекер. Сообщение о перенаправлении данных.
Если в главном окне программы переключиться на конфигурацию TCP клиента (рис. 4), то можно увидеть перенаправляемые данные.

Рис.4. GPS трекер. Перенаправляемые данные.
Сопутствующие статьи:
- Анализ и разбор данных от сканера штрих кодов (данные в фиксированной позиции, нет признаков начала и окончания пакета данных);
- Парсинг данных сканера штрих кодов (данные в фиксированной позиции, есть признак окончания пакета данных);
- Парсинг данных с использованием регулярных выражений (сложный формат данных, регулярные выражения, фильтрация данных);
- Прием и обработка данных от авиационного двигателя (пример использования, специальный парсер данных);
- Обработка данных от лабораторного оборудования (простой формат данных, регулярные выражения);
- Прием и обработка GPS данных на примере Garmin Geko301 (простой формат данных, данные в фиксированной позиции, есть признаки начала и окончания пакета данных);
- Анализ и разбор данных от фасовочной машины (простой формат данных, данные через разделитель, есть признак окончания пакета данных, фильтр данных);
- Анализ и разбор данных от АТС (простой формат данных, данные в фиксированной позиции, есть признак окончания пакета данных, фильтр данных);
- Логгер данных измерителя давления (запрос данных с устройства, простой формат данных, данные в фиксированной позиции, есть признак окончания пакета данных, фильтр данных);
- Сбор данных в "Управляющей информационной системе учета добычи" (сложный формат данных, регулярные выражения, фильтрация данных);
- Объединение данных из двух портов для экспорта одной строкой (простой формат данных, данные в фиксированной позиции, есть признак окончания пакета данных, фильтр данных);
- Анализ и парсинг данных от весов (простой формат данных, данные в фиксированной позиции, есть признак окончания пакета данных, фильтр данных).