HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 26.07.2019, 04:39
Hatrig
Познающий
Регистрация: 23.05.2013
Сообщений: 38
С нами: 6826908

Репутация: 73
По умолчанию

Доброго времени суток. Наверняка есть люди, которые используют модуль FREEKASSA для приема платежей на своем сайте. В этой теме я бы хотел показать и рассказать, как подкрутить к этому модулю уведомления о платежах в личные сообщения вконтакте. Думаю, кому-нибудь это пригодится. Также готовый сурс модуля (уже с Notipay) я прикреплю в архиве. Статья рассчитана на людей, у которых уже стоит FK, в ней не будет рассказано о том, как прикрутить FK к своему сайту (при необходимости запилю отдельно).

За основу я брал SAMP модуль FK:



link

Для начала необходимо создать группу вконтакте, от которой мы будем получать сообщения о платежах. Создали? Гуднесс, сразу же переход в управление группой и включаем сообщения:



Далее, создаем ключ доступа [Настройки->Работа с API -> Ключи доступа] (сразу же сохраняем его куда-нибудь в txt пока):



"Настройки" -> "Работа с API" -> "Callback API", в поле Адрес: указываем путь к Notipay.php, в поле секретный ключ задаете свой секрет кей.



Теперь настройте Notipay.php



Как только вы заполнили Notipay и Callback API настройки сервера, жмете подтвердить (на странице CallBackAPI). На этом настройка сообщества завершена.

Теперь перейдем к FK, в файл lib/FreekassaModel.php , в функцию CreatePayment() вставляем следующий код:

lib/FreekassaModel.php:





Код:
include
'notipay.php'
;
$otwet
=
"На ваш проект YourNameProject внесли сумму в размере: "
.
$this
-
>
mysqli
-
>
real_escape_string
(
$sum
)
.
" руб. Оплачивал:  "
.
$this
-
>
mysqli
-
>
real_escape_string
(
$account
)
.
""
;
// отправка уведомления об пополнении
$request_params
=
array
(
'message'
=
>
$otwet
,
'user_id'
=
>
'ваш ид вконтакте (цифрами)'
,
'access_token'
=
>
$token
,
'v'
=
>
'5.0'
)
;
$get_params
=
http_build_query
(
$request_params
)
;
file_get_contents
(
'https://api.vk.com/method/messages.send?'
.
$get_params
)
;
//Возвращаем "ok" серверу Callback API
echo
(
'ok'
)
;


Настройка FK модуля завершена.

Вот, как эти уведомления выглядят на деле:



В прикрепленном архиве вы найдете файл Notipay.php, а также FreekassaModel.php, удачного использования.
 
Ответить с цитированием

  #2  
Старый 15.09.2019, 01:54
Jason2222
Участник форума
Регистрация: 20.01.2018
Сообщений: 180
С нами: 4374598

Репутация: 73
По умолчанию

Не понял... Все сделал по инструкции, после оплаты не идет уведомление. Группа закрыта, но сообщения открыты и есть разрешение на получение сообщения. Не могу понять причину. Call Api подтверждает все.

upd. создал отдельно через standalone приложение, проще намного.
 
Ответить с цитированием

  #3  
Старый 17.09.2019, 07:10
Quasper
Постоянный
Регистрация: 14.03.2015
Сообщений: 835
С нами: 5876832

Репутация: 118


По умолчанию

Хммм, одно не могу понять. Нахуя коллбэк апи настраивать? ведь используется тупо вк апи для отправки уведомлений
 
Ответить с цитированием

  #4  
Старый 17.09.2019, 09:00
Jason2222
Участник форума
Регистрация: 20.01.2018
Сообщений: 180
С нами: 4374598

Репутация: 73
По умолчанию

самый простой и удобный способ:

1. перейти в настройки группы и создать ключ (для сообщений)

2. использовать ключ указанном ниже коде

PHP:





Код:
$message
=
"Success."
;
$user_id
=
"1234567"
;
$request_params
=
array
(
'message'
=
>
$message
,
'user_id'
=
>
$user_id
,
'random_id'
=
>
rand
(
1000000000
,
9999999999
)
,
'access_token'
=
>
'тот самый ключ'
,
'v'
=
>
'5.45'
)
;
$get_params
=
http_build_query
(
$request_params
)
;
file_get_contents
(
"https://api.vk.com/method/messages.send?"
.
$get_params
)
;
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.