jedi88knight » Чт июл 11, 2024 8:57 pm
Итак, хотелось бы поговорить про эквайринговый терминал Kozen P12, тот самый, у которого есть возможность оплачивать улыбкой.
Эти терминалы Сбербанк начинает принудительно ставить вместо старых терминалов, но суть не в этом.
По сути - это отдельное Android устройство, которое общается с драйвером сбербанка (DLL) через виртуальный COM порт. Если его подключить напрямую к Windows, то необходимо установить Mediatek SP драйвер, после чего в диспетчере устройств появляется виртуальный COM порт и все, прописываешь в конфигурационном файле номер порта и сбербанковская DLL устанавливает связь с этим "чудом". У терминала также предусмотрен Ethernet порт, но с ним он работает нестабильно (то задваиваются чеки, то оплата не проходит, а касса фискальный чек печатает, то два раза списывает и т.д. Причем все ребята с розницы, которые пытались его использовать по Ethernet говорят одно и тоже, что работает он стабильно только по USB. Пытался пробросить его в терминал параметром 'serial = com2(usb 0403:6001)' , порт пробрасывается (появляется в списке при выводе команды: 'change port'), все клёво, но на связь не выходит устройство с DLL. Пробовал пробросить как USB (просто для интереса, т.к. данный вариант не подходит и ниже я расскажу почему) параметром 'usb=0403:6001', поставил на терминальный сервер драйвер Mediatek SP, виртуальный COM порт появился в диспетчере. Устройство иногда выходит на связь, но работать так невозможно. Можно конечно пробросить его через Virtualhere, но данный вариант не подойдет, как и если бы даже сработало перенаправление USB параметром 'usb='. Терминальный сервер всего один, на нем работают 5 кассиров, на сервере 5 директорий с DLL сбербанка, в каждой директории конфигурационный файл для DLL, в нём прописывается либо номер COM порта, либо IP адрес эквайрингового терминала. Далее в 1С, при добавлении нового терминала, просто прописывается путь до DLL, каждый DLL используя свои личные настройки выходит на связь с конкретным терминалом. Если мы пробросим терминал при помощи virtualhere, то у них постоянно будут меняться номера COM портов, это приведет к тому, что DLL, настроеная для работы с конкретным терминалом, после перезагрузки может подключиться к совсем другому терминалу и конечно это сломает работу кассиров. В связи с этим хотелось бы использовать проброс именно через параметр 'serial', т.к. этот параметр гарантирует, что номер порта можно зафиксировать, а также, что порт будет доступен только в сеансе конкретного пользователя, который в данный момент работает на конкретном тонком клиенте и, как следует, с конкретным эквайринговым терминалом. Мне кажется, что не получилось у нас пробросить COM, потому что у втвари не было необходимого драйвера моста com-usb. Можем ли мы как-то это исправить? Чтобы попробовать еще раз.
Изначально данный драйвер (Mediatek SP) нужен для того, чтобы используя утилиту Mediatek SP_Flash_Tool прошивать смартфоны через интерфейс fastboot. Утилита Mediatek SP_Flash_Tool есть и на Linux. В интернете много инструкций как запустить эту утилиту и люди на форумах еще в 2018 году утверждали, что драйверы Mediatek USB уже должны быть включены в последние версии IIRC ядер Linux. Может просто в ядре нашей ненаглядной втвари выпилены они за ненадобностью и мы можем попросить Вас их туда добавить? А с меня потом подробнейшая инструкция для масс о том, как все это подружить.
Итак, хотелось бы поговорить про эквайринговый терминал Kozen P12, тот самый, у которого есть возможность оплачивать улыбкой.
Эти терминалы Сбербанк начинает принудительно ставить вместо старых терминалов, но суть не в этом.
По сути - это отдельное Android устройство, которое общается с драйвером сбербанка (DLL) через виртуальный COM порт. Если его подключить напрямую к Windows, то необходимо установить Mediatek SP драйвер, после чего в диспетчере устройств появляется виртуальный COM порт и все, прописываешь в конфигурационном файле номер порта и сбербанковская DLL устанавливает связь с этим "чудом". У терминала также предусмотрен Ethernet порт, но с ним он работает нестабильно (то задваиваются чеки, то оплата не проходит, а касса фискальный чек печатает, то два раза списывает и т.д. Причем все ребята с розницы, которые пытались его использовать по Ethernet говорят одно и тоже, что работает он стабильно только по USB. Пытался пробросить его в терминал параметром 'serial = com2(usb 0403:6001)' , порт пробрасывается (появляется в списке при выводе команды: 'change port'), все клёво, но на связь не выходит устройство с DLL. Пробовал пробросить как USB (просто для интереса, т.к. данный вариант не подходит и ниже я расскажу почему) параметром 'usb=0403:6001', поставил на терминальный сервер драйвер Mediatek SP, виртуальный COM порт появился в диспетчере. Устройство иногда выходит на связь, но работать так невозможно. Можно конечно пробросить его через Virtualhere, но данный вариант не подойдет, как и если бы даже сработало перенаправление USB параметром 'usb='. Терминальный сервер всего один, на нем работают 5 кассиров, на сервере 5 директорий с DLL сбербанка, в каждой директории конфигурационный файл для DLL, в нём прописывается либо номер COM порта, либо IP адрес эквайрингового терминала. Далее в 1С, при добавлении нового терминала, просто прописывается путь до DLL, каждый DLL используя свои личные настройки выходит на связь с конкретным терминалом. Если мы пробросим терминал при помощи virtualhere, то у них постоянно будут меняться номера COM портов, это приведет к тому, что DLL, настроеная для работы с конкретным терминалом, после перезагрузки может подключиться к совсем другому терминалу и конечно это сломает работу кассиров. В связи с этим хотелось бы использовать проброс именно через параметр 'serial', т.к. этот параметр гарантирует, что номер порта можно зафиксировать, а также, что порт будет доступен только в сеансе конкретного пользователя, который в данный момент работает на конкретном тонком клиенте и, как следует, с конкретным эквайринговым терминалом. Мне кажется, что не получилось у нас пробросить COM, потому что у втвари не было необходимого драйвера моста com-usb. Можем ли мы как-то это исправить? Чтобы попробовать еще раз.
Изначально данный драйвер (Mediatek SP) нужен для того, чтобы используя утилиту Mediatek SP_Flash_Tool прошивать смартфоны через интерфейс fastboot. Утилита Mediatek SP_Flash_Tool есть и на Linux. В интернете много инструкций как запустить эту утилиту и люди на форумах еще в 2018 году утверждали, что драйверы Mediatek USB уже должны быть включены в последние версии IIRC ядер Linux. Может просто в ядре нашей ненаглядной втвари выпилены они за ненадобностью и мы можем попросить Вас их туда добавить? А с меня потом подробнейшая инструкция для масс о том, как все это подружить.