Уважаемые пользователи, это черновик урока

Пожалуйста, пользуйтесь этой страницей: https://help.aimylogic.com/ru/article/navyk-s-podderzhkoj-oplaty-6og7uf/


Разработаем бота, который будет продавать товар.

Бот будет уметь принимать оплату, а также отслеживать, оплатил клиент заказ или нет. В этом нам поможет сервис moneysite, подробнее об этом сервисе можно почитать тут.

Бот может работать в телеграме, в вк или в других мессенджерах.

Проверьте статус вашего яндекс кошелька

Для использования бота вам нужно иметь именной кошелек яндекс денег. Если ваш кошелек - анонимный, введите в Яндекс Деньги ваши паспортные данные и переведите статус кошелька в Именной.



Часть 1. Настроим интеграцию Getmoneysite c яндекс деньгами

Войдём в getmoneysite

Переходим по ссылке сервиса moneysite, попадаем на главную страницу. Нужно нажать кнопку войти через яндекс.



Создадим описание товара

После того, как вы прошли авторизацию, попадаем на страницу с созданием товара.

Кликните, чтобы создать новую страницу:



Попадем в окно такого вида:



Нужно заполнить все поля - название, описание товара, сообщение после оплаты.

Минимальная стоимость - 2 рубля.

Нужно указать номер вашего кошелька Яндекс Деньги.

После заполнения полей нажмите Сохранить.



Далее появится окно с информацией о том, что страница успешно создана. Нажимаем на кнопку Открыть страницу.



В итоге у нас должно получиться следующее:



Адрес HTTP-уведомлений

Для начала, нужно связать ваш аккаунт в moneysite с вашим яндекс-кошельком. Если не сделать этого, то интеграция не будет работать корректно. Займёмся настройками адреса для уведомлений.

Перейдите в настройки moneysite и скопируйте Адрес для уведомлений



Перейдите в настройки вашего аккаунта в Яндекс.Деньгах и нажмите Получить пароль:



Введите пароль из смс и нажмите Подтвердить:



Вставьте адрес из getmoneysite, поставьте галочку "Отправлять уведомления" и нажмите Сохранить:



нажмите Показать секрет:



Скопируйте секрет:



Вернитесь в настройки Moneysite и вставьте секрет, после чего нажмите СОХРАНИТЬ:




Часть 2. Сформируем ссылки, которые нам понадобятся в сценарии

В сценарии нам нужно будет использовать две ссылки. Будьте очень аккаратны в процессе их формирования и обязательно сохраните их в блокнот для дальнейшего использования.

Сформируем URL запроса на проверку покупки.

Чтобы проверить, оплатил пользователь товар или нет, нам нужно авторизовать его. Поэтому воспользуемся api данного сервиса. Чтобы отправлять запросы к API, нам нужно сформировать URL HTTP-запроса.

Нажмите К списку моих страниц:



И кликните на страницу с вашим товаром:



Кликните Открыть страницу:



Скопируйте адрес из адресной строки браузера и вставьте в блокнот:



в этом URL измените s на:
api



Так что, если у вас было https://getmoneysite.ru/s/slon-vMIZ

то станет https://getmoneysite.ru/api/slon-vMIZ

затем, в конец данной строки скопируйте и вставьте:

?token=${userId}



то есть, если у вас было https://getmoneysite.ru/api/slon-vMIZ, то станет https://getmoneysite.ru/api/slon-vMIZ?token=${userId}

Здесь мы используем системную переменную $userId в качестве идентификатора пользователя.

Итак, у нас получилась ссылка для проверки покупки:



Создадим ссылку для покупки

Чтобы пользователь мог купить ещё один товар, создадим url для покупки.

Перейдите в Getmoneysite, кликните на свой товар



и нажмите Открыть страницу:



Скопируйте адрес в блокнот:



В конец url вставьте:

?token=$userId



Итак, у нас получилось две ссылки - первая для проверки статуса покупки, и вторая для покупки.


Часть 3. Сконструируем сценарий

Добавьте блок Текст, в котором напишите:

Привет!






Добавьте блок Переход.




Свяжите его с новым блоком Текст





Купи слона! Кнопка для покупки ниже.



На экран Купи слона! добавьте блок Интенты:




И нажмите Сохранить.


Не будем добавлять сюда примеры интентов, так как на любой ввод пользователя мы в данный момент будем реагировать одинаково.

Добавьте кнопку:

купить слона




Свяжите интент Любая другая фраза с новым блоком Текст:





Все говорят "$queryText"! А ты купи слона.

И нажмите Сохранить.


$queryText – системная переменная, которая будет содержать любой введённый пользователем текст. Подробнее читайте здесь.

На экран Все говорят… добавьте блок Текст:

Чтобы купить слона, нажми на кнопку ниже:


Добавьте блок Интенты и нажмите сохранить.



Добавьте кнопку:

купить слона


Кликните ДОБАВИТЬ ЭКРАН на свободном месте сценария и выберите блок Интенты:



Нажмите Создать интент



скопируйте и вставьте:

* купил* *

Затем снова кликните Добавить пример



и добавьте ещё пример:

* уже *



Интент * купил* * и * уже * поможет нам распознавать запросы типа "я уже купил", "я уже купила", "купила слона уже", "уже", "у меня уже есть слон" и подобные.

Чтобы понять, зачем нужны звёздочки в интентах, ознакомьтесь с этой статьёй.

Затем нажмите Создать интент


И добавьте:

* купить *

Интент * купить * поможет распознавать запросы типа "как купить", "хочу купить", "как купить слона" и подобные.

Обязательно отметьте пункт Сделать доступным из любой точки сценария:



Если вы включили опцию Сделать доступным из любой точки сценария, интенты будут отрабатывать, когда бы пользователь ни ввёл данные фразы. Также, если блок интенты глобальный, вы увидите такой символ:



Интент * купил* * свяжите с новым Http-запросом




Запрос должен быть оформлен так:

выберите метод GET
в поле URL вставьте ссылку на проверку покупки (первую ссылку) - мы получили её на шаге 4.


поля RESPONSE, BODY и HEADERS заполнять не нужно.

Нажмите Сохранить.



Интент купить свяжите с экраном "Купи слона!"





От варианта Завершен успешно HTTP-запроса создайте новый блок Текст:

Поздравляю с покупкой! Купи ещё слона!


Добавьте на экран «Поздравляю с покупкой» интенты:



Добавьте кнопку:
купить ещё слона



Вариант Завершен с ошибкой HTTP-запроса свяжите с блоком Текст:

Я вижу, что слон ещё не был куплен либо ошибка запроса $httpStatus



Добавьте сюда блок Переход


Свяжите блок Переход с экраном «Купи слона!»



Свяжем все не связанные интенты Любая другая фраза с экраном «Все говорят…»





Во все кнопки купи слона вставьте ссылку, которую мы получали в шаге 5:







Готово, у нас получился такой сценарий:




На этом все, подключаем бота к каналу телеграм и проверяем работу бота.

Также вы можете использовать данный сценарий в любом канале, включая голосовые.
Была ли эта статья полезна?
отменить
Спасибо!