Механика 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: |