Терминал оплаты использующий ERC протокол (JSON)

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
gopstop2007
Полимат
Сообщения: 1810
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 24 раза
Поблагодарили: 10 раз

Терминал оплаты использующий ERC протокол (JSON)

Сообщение gopstop2007 »

Нужно подключить терминал оплаты PAX A930 (WebSocket/JSON)
Если есть готовые наработки, шаблоны и библиотеки или есть готовые решение для нескольких терминалов, готов купить.
У кого есть опыт и может чем то помочь, помогите. :)

Clarion 10 ABC
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Терминал оплаты использующий ERC протокол (JSON)

Сообщение Дед Пахом »

Вы хотите сказать, что разработчик платёжной системы не предоставляет примеры использования? Обычно дают готовые curl-скрипты с описанием входных параметров и разбором ответа сервера.
С уважением, ДП
gopstop2007
Полимат
Сообщения: 1810
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 24 раза
Поблагодарили: 10 раз

Терминал оплаты использующий ERC протокол (JSON)

Сообщение gopstop2007 »

Дед Пахом писал(а): 08 Август 2024, 23:33 Вы хотите сказать, что разработчик платёжной системы не предоставляет примеры использования? Обычно дают готовые curl-скрипты с описанием входных параметров и разбором ответа сервера.
Нет терминала и ограничен во времени, чтобы быстро и правильно решить задачу, а не экспериментировать на удаленке. По этому и прошу готовые решения за которые готов заплатить или просто помощи.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
gopstop2007
Полимат
Сообщения: 1810
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 24 раза
Поблагодарили: 10 раз

Терминал оплаты использующий ERC протокол (JSON)

Сообщение gopstop2007 »

Столкнулся с проблемою и не знаю как ее решить.
Данную строку нужно дополнить дополнительным терминатором 0х00

Код: Выделить всё

{{"method":"PingDevice","step":0}
Как можно это сделать?
Для этого использую библиотеки libcurl и cJSON.

Спасибо за внимание.
В документации указано
Вложения
handsh.jpg
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Терминал оплаты использующий ERC протокол (JSON)

Сообщение Дед Пахом »

Код: Выделить всё

'<0>' & '{{"method":"PingDevice","step":0}'
С уважением, ДП
gopstop2007
Полимат
Сообщения: 1810
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 24 раза
Поблагодарили: 10 раз

Терминал оплаты использующий ERC протокол (JSON)

Сообщение gopstop2007 »

Дед Пахом писал(а): 13 Август 2024, 12:40

Код: Выделить всё

'<0>' & '{{"method":"PingDevice","step":0}'
Спасибо, получилось.
Как правильно убрать Headers, убирал так

Код: Выделить всё

    host = '192.168.1.230:2000'     
    postparams = '<0>' & '{{"method":"PingDevice","step":0}' & '<0>'

    curl.Init()
    curl.AddHttpHeader('')
    curl.AddHttpHeader('Content-Type:')         
    curl.AddHttpHeader('Content-Length:')
    curl.AddHttpHeader('User-Agent:')
    curl.AddHttpHeader('Host:')
    curl.AddHttpHeader('Accept:')
    curl.AddHttpHeader('Accept-Charset:')
    curl.SetHttpHeaders()
    
    !curl.SetCustomRequest('')
    curl.SetHttpGET(FALSE)

    ! if ssl req'd
    curl.SetSSLVerifyHost(false)    ! do not verify host name
    curl.SetSSLVerifyPeer(FALSE)    ! verify peer
Все убирает, остается только

Код: Выделить всё

>> POST / HTTP/1.1
Как убрать?
Нужно послать голый json предполагаю, что по TCP?

Спасибо за внимание.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Терминал оплаты использующий ERC протокол (JSON)

Сообщение Дед Пахом »

gopstop2007 писал(а): 13 Август 2024, 15:18 Нужно послать голый json предполагаю, что по TCP?
libcurl не поддерживает протокол TCP:
curl docs писал(а):It supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.
.
С уважением, ДП
gopstop2007
Полимат
Сообщения: 1810
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 24 раза
Поблагодарили: 10 раз

Терминал оплаты использующий ERC протокол (JSON)

Сообщение gopstop2007 »

Дед Пахом писал(а): 13 Август 2024, 15:51 libcurl не поддерживает протокол TCP:
curl docs писал(а):It supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.
.
Спасибо, прийдется через Socket делать
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Ответить