Показано с 1 по 7 из 7

Тема: Проверка и заказ домена

  1. #1
    Senior Member Аватар для adeptus
    Регистрация
    13.11.2012
    Сообщений
    117

    Question Проверка и заказ домена

    Задача: заказ на регистрацию домена по АПИ BillManager
    Условия: передать по АПИ доменное имя, получить от АПИ ответ о занятости/незанятости домена и стоимость регистрации (желательно сразу с учетом скидок данного юзера)

    Запросы к АПИ, сделанные "по образу и подобию" происходящего в BM (пробовал domain.order.2 и domain.order.selectname) - не выдают приемлемого ответа.

    Пример запроса: (подсмотрено в логе)

    Код:
    /billmgr?func=domain.order.2
    &out=xml
    &domain=uuuuuuuuu
    &price=471
    &su=test000
    &elid=
    &plid=
    &operation=register
    &sback=
    &countdomain=
    &checkfulltld=on
    Спасибо.

  2. #2
    BILLmanager team
    Регистрация
    17.09.2010
    Сообщений
    8,675

    По умолчанию

    Попробуйте вот такую функцию:
    Код:
    sbin/mgrctl -m billmgr -o xml domain.discountprice elid=108 account=3 onlyorder=yes lang=ru
    Но этот запрос только вернет стоимость. В elid передается код тарифного плана.
    Проверить занятость можно позвав /mancgi/domaininfo передав параметрами domain - имя домена.

  3. #3
    Senior Member Аватар для adeptus
    Регистрация
    13.11.2012
    Сообщений
    117

    Wink

    Цитата Сообщение от Azcol Посмотреть сообщение
    Попробуйте вот такую функцию:
    Код:
    sbin/mgrctl -m billmgr -o xml domain.discountprice elid=108 account=3 onlyorder=yes lang=ru
    Увы - такой запрос выдает полную стоимость, без учета скидок...

    Стоимость с учетом скидок выдается на domain.order.4 - но как правильно сформировать запрос к АПИ с учетом конкретного ID клиента, я разобраться не могу.

    Пробовал по образцу лога - не получается.

    Поможете?

  4. #4
    BILLmanager team
    Регистрация
    17.09.2010
    Сообщений
    8,675

    По умолчанию

    Если вы знаете код конкретной скидки то вы можете передать его в эту функцию в параметре discount.

  5. #5
    Senior Member Аватар для adeptus
    Регистрация
    13.11.2012
    Сообщений
    117

    Cool

    Цитата Сообщение от Azcol Посмотреть сообщение
    Если вы знаете код конкретной скидки то вы можете передать его в эту функцию в параметре discount.
    Простите, не об этом немного речь...

    Моя задача - выдать Клиенту стоимость услуги (в частности, регистрации домена) со всеми скидками, положенными ему в соответствии с политиками, прописанными в Скидках BillManager.

    Опытным путем нашел, что следующий запрос выдает правильный результат - цену со скидками:

    Код:
    billmgr?func=domain.order.4
    &account=5777
    &countdomain=1
    &price=471
    &pricelist_0=471
    &period=473
    &period_0=473
    При вводе запроса в окно браузера - он возвращает правильный результат, цену со скидкой.
    А вот когда я вызываю тот же запрос из скрипта - ответ неправильный (полная цена без скидок), плюс в ответе появляются какие-то левые дополнительные поля:

    Код:
    <doc><elid/>
    <totalinfo>УслугаХХХ - 250.0000 [неправильная цена без скидок!]
    Итого: 250.0000 RUB
    </totalinfo>
    <account>5721</account>
    <countdomain>1</countdomain>
    <lang>ru</lang>
    <period>473</period>
    <period_0>473</period_0>
    <price>471</price>
    <pricelist_0>471</pricelist_0>
    <price>357</price>[откуда ВТОРОЕ поле price???]
    <domain>adeptus</domain>[откуда поле domain???]
    </doc>
    Подскажете решение?

  6. #6
    BILLmanager team
    Регистрация
    17.09.2010
    Сообщений
    8,675

    По умолчанию

    Тогда как-то так:
    func=domain.order.4&countdomain=1&period_0=33&pric elist_0=67&out=xml
    если запрос выполняется не из-под клиента, то нужно передавать su=имя_пользователя_клиент

    Но su может не сработать если активна сессия администратора.

    Как ваш скрипт вызывает функцию?

  7. #7
    Senior Member Аватар для adeptus
    Регистрация
    13.11.2012
    Сообщений
    117

    По умолчанию

    Цитата Сообщение от Azcol Посмотреть сообщение
    Тогда как-то так:
    func=domain.order.4&countdomain=1&period_0=33&pric elist_0=67&out=xml
    Спасибо - сработал вот такой запрос:

    PHP код:
    func=domain.order.4
    &account=ХХХ
    &contact=XXX
    &countdomain=1
    &ctype=person
    &domain=domain
    &domainname_0=domain
    &domainpropind=0
    &nslist_0=ns1.xxxxx+ns2.xxxxx
    &operation=register
    &owner=XXX
    &period_0=XXX
    &price=XXX
    &pricelist_0=XXX
    &projectns=ns1.xxxxx+ns2.xxxxx
    &registrar=XXX
    &payfrom=neworder
    &sok=ok
    &authinfo=$adm_name:$adm_pass 

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •