Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #81, СЕНТЯБРЬ 2005 г.

Механика wm-процессинга

nikitozz

Хакер, номер #081, стр. 081-128-2


[сага о подписях]

Если ты внимательно читаешь статью, то абзацем выше у тебя должен был возникнуть вопрос: среди оправляемых автоматическому интерфейсу параметров я опомянул какую-то цифровую подпись запроса. Вполне резонный вопрос: что это такое? Грубо говоря, это уникальная для каждого запроса строка длиной в 133 символа. Она генерируется специальной программой WMSigner, которая поставляется исходными кодами. Собрать ее можно, насколько я понял, под любой платформой и, разумеется, под Windows предлагается скачать уже собранный бинарник (dll для IIS). Поскольку я использовал для своих опытов FreeBSD, я скачал с http://download.webmoney.ru/WMSigner.zip сорцы программы и довольно быстро привел ее к исполняемому виду:

$ wget http://download.webmoney.ru/WMSigner.zip

$ unzip WMSigner.zip

$ chmod +x compl.sh #даем установочному скрипту права для выполнения

$ ./compl.sh #собираем бинарник, скрипт сам сделает все что нужно

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

После того, как установочный сценарий завершит свою работу, и в текущей папке появится бинарник WMSinger, нужно создать файл с настройками WMSinger.ini и записать туда три строки:

489406628422 # wm-id

EouyGq9a #пароль

/path/to/key.kwm #путь к файлу с ключами

Теперь настало время протестировать работу WMSigner’а:

$ echo -ne "xakep\004\r\n" | ./WMSigner

3c411f96426cd80027ec5c87f8e1e004eeaef8487b80092cb696b2d80b1bad8f2bb04336b598a56fef62a719e7a596e8255e7a2ab662a1ac9d59c2eb0e0113830074

Если программа тебе вывела похожую строчку, значит, все работает как нужно и можно переходить к следующему этапу нашей работы – непосредственно к использованию автоматических интерфейсов.

[юзаем интерфейсы]

Первым делом давай разберемся с работой одного простого примера, который нам заботливо приготовили разработчики компании WebMoney. Для этого возьми с нашего диска архив wmex_php, залей его на хост, помести внутрь папки файл WMSigner с настройками, отредактируй файл настроек wmconst.inc. Все это делается по наитию и секунд за 25.

После этого ты уже сможешь легко работать с тестовыми примерами. Давай попробуем с тобой воспользоваться интерфейсом «Выписывание счета от одного участника другому». Для этого достаточно заполнить все поля и клацнуть на кнопку отправки запроса. Если все работает верно и ты все нормально настроил, тебе покажут номер счета и сообщат, что он выписан нормально. Хотя я на 100% уверен, что у тебя сразу возникнет сообщение «Ошибка связи с сертификационным центром WebMoney». Первая причина, по которой это может произойти, заключается в том, что у тебя может быть не установлен пакет cURL, который нужен нам для работы. Если он не стоит, его необходимо инсталлировать в системе – о том, как это сделать, написано в соответствующей врезке. А вторая причина, по которой у тебя точно возникнет эта ошибка, заключается в том, что в SSL не установлен сертификат для связи с wm-сервером. Следует скачать этот сертификат с www.webmoney.ru, разместить его на твоем сервере в доступном сценариям месте и внутри файла wm.inc найти функцию _HttpReq:

Назад на стр. 081-128-1  Содержание  Вперед на стр. 081-128-3