Утилита OFDProxy для повышения надёжности работы с ОФД при подключении ККТ к ПК через RNDIS устройство

Программа OFDProxy написана разработчиками ЗАО «Штрих-М».
Данная утилита служит для настройки config прокси сервера, предназначенного для передачи данных от ККТ в ОФД, при подключении ККТ к ПК через RNDIS устройство.

По сути своей, RNDIS — самостоятельный сетевой интерфейс, информационной нагрузкой которого являются кадры канального/сетевого уровней (Ethernet или IP кадры, опционально).

Программа OFDProxy. Установка и настройка.

1. Установите программу OFDProxy на свой компьютер, для этого скопируйте на компьютер директорию OFDProxy.
2. Запустите конфигуратор OFDProxyConfig.exe, после чего открывается окно OFDProxyConfig.
3. При нажатии кнопки «Установить службу», в системе устанавливается служба OFDProxy. После установки OFDProxy службы файл OFDProxysvc.exe удалить нельзя.
4. Нажмите кнопку «Запустить службу» для запуска службы OFDProxy. После нажатия данной кнопки служба будет запускаться каждый раз после включения компьютера.
5. Кнопки «Остановить службу» и «Удалить службу» используются соответственно для остановки и удаления службы.
6. Заполните поля в разделе «Параметры сервера»:
Введите «Порт сервера» — номер порта сервера для входящих подключений и выберите тип лога, установив флаг в одном из двух полей «Вести лог» или «Логировать только ошибки».
7. Впишите в поле название подключенной ККТ.
8. Нажмите кнопку «Настроить связь с ККТ…», после чего откроется окно «Свойства» для настройки связи.

— В открывшемся окне введите пароль системного администратора (по умолчанию 30) и нажмите кнопку «Поиск оборудования…»:

— Произведите поиск всех подключенных к хосту устройств, нажав кнопку «Начать».
— Двойным щелчком выберите из списка найденных устройств нужное: при этом окно «Поиск оборудования…» автоматически закрывается, а параметры обмена данными этого устройства автоматически устанавливаются в полях группы.
— В окне «Свойства» нажмите кнопку «Проверка связи». Если связь не установлена, в строке «Код ошибки» появится сообщение об ошибке, если установка прошла успешно в строке появится наименование модели ККМ и ее заводской номер.
— Закройте окно «Свойства» нажав кнопку «ОК».
9. В том случае если касса подключена к ПК через RNDIS, в поле «Локальный IP адрес» автоматически появится локальный IP адрес адаптера RNDIS.
10. Нажмите кнопку «Прочитать из ККТ», после чего будут заполнены следующие поля из раздела «Профиль ККТ»:
— «IP адрес ККТ»;
— «Адрес сервера ОФД»;
— «Порт сервера ОФД»;
— «Таймаут чтения из ККТ, мс:»;
— «Таймаут подключения к ОФД, мс:»;
— «Таймаут чтения из ОФД, мс:».
Внимание! Запомните или лучше запишите данные полей «Адрес сервера ОФД» и «Порт сервера ОФД» в случае необходимости повторного подключения ККТ.
11. При нажатии кнопки «Записать в ККТ», в таблицу 19 («Параметры офд») ККТ запишутся следующие данные:
— В поле «Сервер» таблицы запишется локальный IP адрес RNDIS адаптера из поля «Локальный IP адрес» окна;
— В поле «Порт» таблицы запишутся данные из поля «Порт сервера» окна.
После чего повторное нажатие кнопки «Прочитать из ККТ» приведет к некорректной установке параметров.
Если возникнет необходимость повторного прочтения данных из ККТ, следует после нажатия кнопки «Записать в ККТ» вписать вручную данные сохраненные ранее.
— в поле «Сервер» таблицы 19 — значение из поля «Адрес сервера ОФД» окна;
— в поле «Порт» таблицы 19 — значение из поля «Порт сервера ОФД» окна.
12. После записи значений следует нажать кнопку «Применить изменения (Перезапустить службу)». В результате этих изменений данные из ККТ будут передаваться в RNDIS и далее в ОФД.
Если к ПК подключено несколько ККТ, нажмите кнопку «+» и в открывшееся поле введите название следующей ККТ, кнопка «-» удаляет ККТ из списка. Выполните операции для подключения ККТ начиная с пункта 7.
После окончания подключения можно закрыть окно OFDProxyConfig кнопкой «Х».

22 Comments

  1. coolseo

    Здравствуйте, на каких ккм вы столкнулись с проблемами передачи в офд?

    Reply
  2. w22u

    (1) Здравствуйте Максим, есть несколько ККТ РИТЕЙЛ-01Ф симптомы следующие:

    Настраиваем RNDIS, расшариваю инет, подключение к интернет и к ОФД есть! Выключаю/включаю ККТ связь с интернетом и с ОФД устанавливается без проблем! Но стоит перезагрузить виндовс, RNDIS к интернету не подключается, по новой нужно «расшаривать».

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

    Reply
  3. coolseo

    (2) Спасибо. Работал только с Атол и Вики, но есть на примете Ритейл и штрих-light онлайн.

    Reply
  4. ifal

    А почему не указано автор OFDProxy?

    Reply
  5. angeliccare

    Вирус в конфигураторе утил.

    https://virustotal.com/ru/file/470e71832a04af3b33270484e46426a2276bae319ea3a10f­37fa0917d70046a9/analysis/1493376005/

    Reply
  6. w22u

    (5) Спасибо за бдительность! Действительно есть антивирусные программы, которые увидев команды управления службой прокси сервера посчитали файл конфигуратора зараженым.

    В архиве имеются командные файлы для управления службой «ofdproxy» (файл службы ofdproxysvc.exe). Если Ваш антивирус не позволяет открыть доступ к файлу конфигуратора (файл OFDProxyConfig.exe), тогда настройку ОФД прокси можно сделать через конфигурационные файлы: «Settings.ini» и «KKTProfiles.ini» и вручную изменить два параметра в таблицах ККТ.

    Пример для ОФД ООО «Такском» (ИНН 7704211201) для ККМ ШТРИХ РИТЕЙЛ-01Ф:

    — в поле «Сервер» таблицы 19 — значение «Адрес сервера ОФД» изменить с «f1.taxcom.ru» на «192.168.137.1»;

    — в поле «Порт» таблицы 19 — значение «Порт сервера ОФД» изменить с «7777» на «7873».

    В файл KKTProfiles.ini записать:

    [KKT1]

    KKTAddress=192.168.137.111

    OFDAddress=f1.taxcom.ru

    OFDPort=7777

    OFDConnectionTimeout=15000

    OFDReadTimeout=15000

    KKTReadTimeout=15000

    Запустить установку и запуск службы «ofdproxy», используя командный файл «InstallAndStart.bat».

    Перезапустить службу можно вручную, либо используя командные файлы «Stopsvc.bat» — для остановки, и «Startsvc.bat» для запуска службы.

    Reply
  7. user598233_e.stennikov

    Здравствуйте, поможет ли данная утилита если ккм подключается к компьютеру через Ethernet по статическому ip адресу? У нас проблема заключается в том, что в нашей сетке выход в интернет настроен через прокси сервер, печатать чеки на ккм нужно сразу с нескольких компьютеров, при этом в том месте где установлен ккм нет возможности (да и желания) поставить компьютер.

    Reply
  8. w22u

    (7) У системных администраторов имеется в арсенале несколько способов настроить прокси сервер для проброса портов на сервера ОФД.

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

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

    Для этого в командной строке выполнить:

    set devmgr_show_nonpresent_devices=1

    Запустить диспетчер устройств

    start devmgmt.msc

    В меню «вид» нажать «Показать скрытые устройства»

    2. Найти неактивные USB устройства, которые отображаются серым цветом. Удалить их, т.к. это могут быть давным-давно неиспользуемые флешки, или USB 3G модемы.

    3. Перезагрузить компьютер.

    Reply
  9. tarassov

    Н

    (4) Возможно потому что, как я понимаю, OFDProxy разработано ЗАО «Штрих-М» :). См.: https://forum.shtrih-m-partners.ru/index.php?topic=32246.0

    Reply
  10. ifal

    (9) Вы не поняли тонкий намек автору поста, не хорошо описывать чужой продукт не упоминая авторство, я знаю кто разработчик.

    Reply
  11. w22u

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

    Reply
  12. ashush

    Увидит ли ККМ ОФД через эту программу, если доступ в интернет на компьютере только через прокси-сервер?

    Reply
  13. w22u

    (12) Да в одной организации используется прокси сервер и эта программа успешно через него передаёт данные. Главное не забыть добавить порты программы в исключения брандмауэра. Если не получится, можно попробовать в прокси сервере настроить мапирование портов (port mapping). В любом случае анализ лог файлов этой утилиты покажет существующие ошибки при подключении к ОФД.

    Reply
  14. Stan

    Аппарат Штрих онлайн. После 01.09.2017 перестал передавать данные в ОФД. Передергивание RNDIS-а не помогло, хотя до этого помогало. Проблему удалось решить при помощи этой утилиты OFDProxy. Так что спасибо за подробную инструкцию. Пока все работает.

    Reply
  15. chukawata

    У меня проблема с «отвалом» ККТ «Ритейл» от интернета. Утилита OFDProxy не помогла. Во всяком случае, её не достаточно. Здесь указано, что должны быть запущены следующие службы

    Общий доступ к подключению к Интернету (ICS)

    Служба SSTP

    Диспетчер подключений удаленного доступа

    Диспетчер автоматических подключений удаленного доступа

    Наблюдение показало, что регулярно отваливается именно ICS, причём не просто останавливается, а принимает статус Отключено. Для записи лога сделал короткий батник, который также включает службу при «отвале». Батник запускается Планировщиком заданий каждые 5 минут. В задании обязательно поставить флаг «Выполнить с наивысшими правами», иначе служба не запустится.

    Reply
  16. chukawata

    Продолжение.

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

    Тип запуска службы «Общий доступ к подключению к Интернету (ICS)» был изменен с «Автоматически» на «отключена».

    Для фильтрации журнала по этой записи следует применить пользовательский фильтр

    <QueryList>
    <Query Id=»0″ Path=»file://\Rec-02dЖурнал Система 20171205.evtx»>
    <Select Path=»file://\Rec-02dЖурнал Система 20171205.evtx»>
    *[EventData[Data[@Name=’param4′]=’SharedAccess’] and EventData[Data[@Name=’param3′]=’отключена’]]
    </Select>
    </Query>
    </QueryList>

    О пользовательских фильтрах читать здесь.

    Reply
  17. user1034802

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

    Reply
  18. independ

    (17) Настраивать ICS при использовании OFDProxy или OFDConnect не нужно

    1. Настроить сетевой адрес ККТ — обычно 192.168.137.111

    2. Настроить сетевой адрес RNDIS — обычно 192.168.137.1

    Проверить есть ли связь с ККТ ping 192.168.137.111

    3.В таблице ККТ Парамерты ОФД, установить сервер 192.168.137.1, порт 7873

    В каталог ОFDProxy скопировать файлы

    Settings.ini
    [settings]
    ServerPort=7873
    Log=1
    LogErrorsOnly=0
    

    KKTProfiles.ini
    [KKT1]
    KKTAddress=192.168.137.111
    OFDAddress=kkt.sbis.ru
    OFDPort=7777
    OFDConnectionTimeout=15000
    OFDReadTimeout=15000
    KKTReadTimeout=15000
    

    Показать

    Параметры OFDAddress=kkt.sbis.ru, OFDPort=7777 поменять на свои

    С помощью утилиты OFDProxyConfig.exe, установить службу и запустить. ККТ выкл/вкл

    Reply
  19. user1034802

    (18) а надо нажимать кнопку «записать в ккт». все так и сделал, файлики на месте, заполнены правильно. не хочет. теперь и расшаривание доступа не помогает.:(

    Reply
  20. w22u

    (19)

    Да кнопку записать в ККТ нужно нажать один раз, чтобы адреса офд заменились адресом ОФДпрокси.

    В брандмауэр ещё нужно добавить разрешение на входящие соединения порт: 7873

    Reply
  21. user1034802

    (20)проверка связи с ккт успешна, записаны данные в ккт. правило для порта 7873 создал в брендмауэре. на сайте офд тишина. в диспечере 2 процесса офдпрокси и офдконнект. они не могут мешать друг другу??

    Reply
  22. user1034802

    Все работает! спасибо всем за помощь.independ, w22u спасибо.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *