Ad Widget

Collapse

Получение данных в zabbix из ОФД Такском (такском-касса)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Pro100
    Junior Member
    • May 2020
    • 25

    #16
    Сделал запросы, ошибки не выдал, исправил скобки.
    В итоге переработал код чтоб что то получить

    RESULT=$(curl $CURL_OPT --data-binary "$JSON" -H "Content-Type: application/json;charset=utf-8" -H 'Integrator-ID: $888888888888', 'login: $888888888888694400.ru', 'password: $7777777777777777', 'agreementNumber: $CD-55555555555', 'fn: $0000000000000' -X POST --url "https://api-lk-ofd.taxcom.ru/API/v2/KKTInfo")

    RC=$?
    echo '$RESULT'
    раньше в двойных было
    Ошибок нету
    вопрос теперь с этим

    if [ $RC = 0 ]; then
    TOKEN=$(jq '8888888888888888' <<<"$RESULT")
    if
    Как отсюда получить результат что то вообще тут не понял...

    Comment

    • Kos
      Senior Member
      Zabbix Certified SpecialistZabbix Certified Professional
      • Aug 2015
      • 3404

      #17
      Вы передаёте утилите curl параметр "-H", который после убирания шеллом апостофов имеет значение "Integrator-ID: $555555555555555555555555," (с запятой в конце); поэтому на той стороне вам резонно отвечают, что пересылаемый Integrator-ID имеет некорректное значение.
      Кроме того, зачем-то утилите curl ещё передаются и параметры "login: [email protected]," "password: $777777777," (каждый с запятой в конце), а так же 'agreementNumber: $5555555".
      Что она должна с ними делать и как их обрабатывать - я не знаю.
      По логике, указанные вещи должны быть внутри передаваемого JSON-а (в переменной $JSON); есть ли они там - я не вижу. В каком именно виде они там должны присутствовать - надо смотреть в примерах API по Вашей самой первой ссылке в исходном сообщении.

      Добавлено:
      echo '$RESULT'
      раньше в двойных было
      Ошибок нету
      echo '$RESULT'
      (в апострофах) выведет строчку: $RESULT

      echo "$RESULT"
      (в кавычках) выведет значение переменной RESULT.
      TOKEN=$(jq '8888888888888888' <<<"$RESULT")
      Я не указывал там кучу восьмёрок. Я указывал там многоточие, вместо которого нужно подставить соответствующее jq-выражение для того, чтобы извлечь из JSON-а (который должен прийти в переменную RESULT) нужный фрагмент, дабы не парсить JSON вручную. Какое именно выражение нужно - зависит от вида JSON-а, пока что Вы ни разу не привели пример того успешного результата, который можете получить при логине.
      --url "https://api-lk-ofd.taxcom.ru/API/v2/KKTInfo
      Чтобы запрашивать какие-то другие данные (например, обращаться на "/API/v2/KKTInfo"), надо сперва успешно залогиниться и получить сессионный токен (тот самый "маркер временного доступа"). Пока что я этого токена не вижу.
      Last edited by Kos; 17-11-2020, 18:42.

      Comment

      Working...