BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 04 май 2024, 03:42

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 42 ]  На страницу 1, 2  След.
Автор Сообщение
СообщениеДобавлено: 14 апр 2016, 15:32 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
Добрый день.
Прошу не пинать. Сегодня пришел к провайдеру с предложением о сотрудничестве. Он отправил меня на форум.
Версия у них 6.0. Linux.

Запросы к провайдеру будут в формате JSON и ответы нужны тоже в этом формате.

1.Что нужно сделать провайдеру у себя, чтобы я мог по номеру телефона запросить в его базе баланс по договорам клиента?
2.Как мне подтвердить провайдеру, что клиент оплатил за определенный договор?

Мой сервис работает на PHP.

Евгений.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 14 апр 2016, 16:48 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
костыли, костыли... есть же модуль MPS.

1) Делаем экшин, который ищет по номеру и выдает необходимые параметры.
2) Добавляем в этот экшин метод, который вы вызываете для занесения платежа онлайн.
3) Создаем отдельного юзера и разрешаем ему вызов только этого экшина.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 14 апр 2016, 19:16 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 14 апр 2016, 19:37 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
stark писал(а):
ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ?


Я вверху написал у них 6 версия, Linux. ;)
Я понял что можно, но я пишу для себя и на PHP и эту систему вижу впервые. 30 минут разговор с работником провайдера, дали понять, он эту часть не знает. Он предложил взять чей то модуль и откорректировать. Но те модуля работают по другой схеме с сайта провайдера.

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

Работник провайдера не сильно заинтересован в писанине и мне приходится в это вникать самому. Тем более, что это полный альтруизм. Я не знаю на сколько меня хватит, но пока у меня есть интерес в развитии того, что я делаю.

"ну баланс можно получить через json api " - как это сделать по номеру телефона? и что провайдеру у себя прописать? 8)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 14 апр 2016, 21:26 
Не в сети
Разработчик

Зарегистрирован: 07 апр 2007, 23:51
Сообщения: 4489
Откуда: Уфа, Россия
Карма: 186
без заинтересованности провайдера, вы это не реализуете, не тратьте свое время....


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 14 апр 2016, 22:18 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
stark писал(а):
ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ?

я про это тоже сразу подумал, но он с 6.2 ведь вроде только, а у них 6.0, плюс для phone api вообще нет, поэтому и предложил сразу экшины.

bstsoft, если вы пишите сами, может и напишите со своей стороны запросы по протоколу OSMP, например, а провайдер со своей стороны только настроит модуль. Со стороны биллинга если писать, то там всё на java. И если они не бум-бум в этом, то вам тоже долго придётся разбираться, раз вы впервые её видите.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 00:34 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
barguzin2 писал(а):
stark писал(а):
ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ?

я про это тоже сразу подумал, но он с 6.2 ведь вроде только, а у них 6.0, плюс для phone api вообще нет, поэтому и предложил сразу экшины.

bstsoft, если вы пишите сами, может и напишите со своей стороны запросы по протоколу OSMP, например, а провайдер со своей стороны только настроит модуль. Со стороны биллинга если писать, то там всё на java. И если они не бум-бум в этом, то вам тоже долго придётся разбираться, раз вы впервые её видите.


Можешь подсказать, что у провайдера надо настроить, что бы к примеру посмотреть баланс по ID. послав POST сообщение?
Чтобы хоть понять, что дальше писать. Если это пройдет будем дальше разбираться как по телефону найти договора.

И еще я правильно понял "https://forum.bitel.ru/viewtopic.php?f=19&t=11505", это именно так можно делать оплату?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 07:58 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
вот не по существу вопросы. в таких случаях можно посоветовать только RTFM. без понимания архитектуры и принципов работы, при условии отсутствия активного участия провайдера - ну нихрена не выйдет, вам уже про это сказали.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 11:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
поставьте тестовую систему и отладьте у себя а потом предлагайте провайдеру


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 11:58 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
ну что за пессимизм в каментах)

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 12:56 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
barguzin2 писал(а):
stark писал(а):
ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ?

я про это тоже сразу подумал, но он с 6.2 ведь вроде только, а у них 6.0, плюс для phone api вообще нет, поэтому и предложил сразу экшины.


Я не заметили что там 6.0. Насчет Phone не уверен, не понятно что значит найти баланс по номеру телефона. Возможно там номер телефона забит как параметр договора и эта какая-то внешняя платежная система, которая использует номер тефлона как идентификатор чтобы найти договор. Мне кажется phone тут не при чем.

2 bstsoft: У нас нет описания api. Нужно ставить клиента, запускать его в режиме debug и смотреть в лог какие-запросы уходят на сервер. Там может быть либо get-запрос, либо вызов web-сервиса через soap(где-то так, где-то так).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 15:45 
Не в сети

Зарегистрирован: 11 авг 2015, 19:08
Сообщения: 44
Карма: 5
Делал подобное на Python + Django, только проверка не по номеру телефона, а по договору.

Решение на костылях: баланс проверяется SQL-запросом, платеж добавляется путем вызова API paymentUpdateRequest (подсмотрел как это делает клиент биллинга с помощью tcpdump).

Вопрос к профессионалам: чем такое решение может быть плохо?

К ТС: если требуется, могу поделиться наработками.

_________________
Биллинг: 6.1.895
ОС: Debian GNU/Linux
Java: 1.8.0


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 16:58 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Баланс проверяйте как хотите, если устраивает sql то ок. по поводу платежа - какая версия, там просто не все сработает если не правильно добавлять
з.ы. а делиться наработками можно на вики

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 17:03 
Не в сети

Зарегистрирован: 11 авг 2015, 19:08
Сообщения: 44
Карма: 5
skyb писал(а):
Баланс проверяйте как хотите, если устраивает sql то ок. по поводу платежа - какая версия, там просто не все сработает если не правильно добавлять
з.ы. а делиться наработками можно на вики


Версия 6.1. А разве когда оператор вносит платеж через клиента биллинга, не то же самое происходит, когда дергаем API?

_________________
Биллинг: 6.1.895
ОС: Debian GNU/Linux
Java: 1.8.0


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 апр 2016, 20:08 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
http://wiki.bitel.ru/index.php/%D0%98%D ... D1%8F_Card


попробуйте через модуль card. он бесплатный кажется даже. При поиске баланс возвращает.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 16 апр 2016, 10:40 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
bstsoft писал(а):
barguzin2 писал(а):
stark писал(а):
ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ?

я про это тоже сразу подумал, но он с 6.2 ведь вроде только, а у них 6.0, плюс для phone api вообще нет, поэтому и предложил сразу экшины.

bstsoft, если вы пишите сами, может и напишите со своей стороны запросы по протоколу OSMP, например, а провайдер со своей стороны только настроит модуль. Со стороны биллинга если писать, то там всё на java. И если они не бум-бум в этом, то вам тоже долго придётся разбираться, раз вы впервые её видите.


Можешь подсказать, что у провайдера надо настроить, что бы к примеру посмотреть баланс по ID. послав POST сообщение?
Чтобы хоть понять, что дальше писать. Если это пройдет будем дальше разбираться как по телефону найти договора.

И еще я правильно понял "https://forum.bitel.ru/viewtopic.php?f=19&t=11505", это именно так можно делать оплату?


Тема не движется к решению задачи. СП тем кто не пинает, а предлагает варианты. Провайдер готов вникнуть, но нужна конкретика, что именно включить.

Давайте пойдем по другому пути. 1 задача это провести платеж по уже известным данным, а это номер договора. Что нам включить у провайдера, для того чтобы в формате JSON+POST мы с ним провели оплату?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 16 апр 2016, 22:22 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
Не движется, потому что конкретики задачи тоже нет. Тут гадают что за поиск по номеру - это номер модуля Phone или это параметр договора, а с вашей стороны нет комментария по этому поводу. Вот привязались вы с JSON+POST, а его в 6.0 в принципе нет поддержки. Предложили кучу вариантов, но в какую сторону двигаться - тоже не выбрали. И провайдер похоже не готов вникнуть, т.к. что именно включить (кнопка песдато) - её нет.

Если затачивать биллинг под вашу систему, то инструкцию я написал в первом же ответе, но это надо писать экшины. Писать, Карл! На Java!

Если затачивать вашу систему под биллинг, то тоже уже сказали, даже 2 варианта есть
1) запускать клиента в режиме дебаг и смотреть запросы/ответы, потом вы эти запросы повторяете у себя
2) со стороны клиента настраивается модуль MPS (по документации, например, OSMP протокол как наиболее распространенный), а вы у себя реализуете взаимодействие - тут уже и поиски договора по разным критериям реализованы и зачисление платежа.

В общем, нужно
1) Чёткая постановка задачи
2) Кто и что готов делать


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 19 апр 2016, 14:49 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
barguzin2 писал(а):
Не движется, потому что конкретики задачи тоже нет. Тут гадают что за поиск по номеру - это номер модуля Phone или это параметр договора, а с вашей стороны нет комментария по этому поводу. Вот привязались вы с JSON+POST, а его в 6.0 в принципе нет поддержки. Предложили кучу вариантов, но в какую сторону двигаться - тоже не выбрали. И провайдер похоже не готов вникнуть, т.к. что именно включить (кнопка песдато) - её нет.

Если затачивать биллинг под вашу систему, то инструкцию я написал в первом же ответе, но это надо писать экшины. Писать, Карл! На Java!

Если затачивать вашу систему под биллинг, то тоже уже сказали, даже 2 варианта есть
1) запускать клиента в режиме дебаг и смотреть запросы/ответы, потом вы эти запросы повторяете у себя
2) со стороны клиента настраивается модуль MPS (по документации, например, OSMP протокол как наиболее распространенный), а вы у себя реализуете взаимодействие - тут уже и поиски договора по разным критериям реализованы и зачисление платежа.

В общем, нужно
1) Чёткая постановка задачи
2) Кто и что готов делать


СП. Теперь чуточку понятней что телефон думают не то, что я хочу.
Упрощаем задачу до одной операции. Если нету JSON. Тогда интересует как(или чем) поймать сообщение POST у провайдера и записать что оплата конкретного договора прошла? или это тоже невозможно сделать?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 19 апр 2016, 17:58 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
для начала почитайте тут https://bgbilling.ru/v6.0/doc/ch03s10.html

Потом загляните вот в этот архив. http://wiki.bitel.ru/images/6/6d/Idealer4.6.zip

Мы через систему дилерских платежей кучу платежных провайдеров подключили.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 09:17 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
bstsoft писал(а):
СП. Теперь чуточку понятней что телефон думают не то, что я хочу.
Упрощаем задачу до одной операции. Если нету JSON. Тогда интересует как(или чем) поймать сообщение POST у провайдера и записать что оплата конкретного договора прошла? или это тоже невозможно сделать?


Так про телефон все-таки расскажете или нет?

Сообщение поймает сервер биллинга, для этого настраивать ничего не нужно, только добавить отдельного пользователя и выдать вам регистрационные данные и разрешить этому пользователю добавлять платежи. А вам в свою очередь нужно через SOAP-клиент вызвать метод PaymentUpdate сервиса PaymentService и передать ему payment с параметрами contractId (Id договора), date (дата платежа), id=-1 (id платежа, -1 потому что новый), sum, summa (сумма платежа), typeId (тип платежа, скажет провайдер), userId=0 (Id пользователя, биллинг определит по логину)

Запрос передается на http://server:port/executer/ru.bitel.bg ... entService
На скрине итоговая XML, которая передается на сервер по указанному URL


Вложения:
2016-04-20_10-02-28.png
2016-04-20_10-02-28.png [ 11.1 КБ | Просмотров: 13404 ]
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 12:19 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
barguzin2 писал(а):

Так про телефон все-таки расскажете или нет?

Сообщение поймает сервер биллинга, для этого настраивать ничего не нужно, только добавить отдельного пользователя и выдать вам регистрационные данные и разрешить этому пользователю добавлять платежи. А вам в свою очередь нужно через SOAP-клиент вызвать метод PaymentUpdate сервиса PaymentService и передать ему payment с параметрами contractId (Id договора), date (дата платежа), id=-1 (id платежа, -1 потому что новый), sum, summa (сумма платежа), typeId (тип платежа, скажет провайдер), userId=0 (Id пользователя, биллинг определит по логину)

Запрос передается на http://server:port/executer/ru.bitel.bg ... entService
На скрине итоговая XML, которая передается на сервер по указанному URL


телефон не актуален, пока не поймем принцип.
Сказал провайдеру дать доступ как вы написали, он дал мне имя и пароль
делаю:

Код:
$wsdl = "http://192.168.111.110:8080/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.balance/PaymentService?wsdl";
$client = new SoapClient($wsdl, array('login' => "derjava", 'password' => "d"));


получаем
Код:
Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://192.168.111.110:8080/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.balance/PaymentService?wsdl' : failed to load external entity "http://192.168.111.110:8080/bgbilling/executer/ru.bitel.bgbilling.kernel.contract.balance/PaymentService?wsdl" in R:\wwwroot\draft_site\index1.php:7 Stack trace: #0 R:\wwwroot\draft_site\index1.php(7): SoapClient->SoapClient('http://192.168....', Array) #1 {main} thrown in R:\wwwroot\draft_site\index1.php on line 7


сказал провайдеру, его ответ "хз". Что делаем не так?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 12:31 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
здесь уже всё посмотрели?
https://www.google.ru/search?q=php+Soap ... nal+entity

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 12:38 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
dimOn писал(а):
здесь уже всё посмотрели?
https://www.google.ru/search?q=php+Soap ... nal+entity


и что толку я как баран на новые ворота листаю читаю.

Ответ провайдера "Но все-равно не понял, где тебе юзера добавлять тогда, если не в модуле card"

Может он юзера не туда добавил?

на http://wiki.bitel.ru/index.php/PHP_soapClient посмотрели описание
подумали нету у нас
api.enable=true
добавили не помогло


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 12:52 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
barguzin2 писал(а):
Запрос передается на http://server:port/executer/ru.bitel.bg ... entService
На скрине итоговая XML, которая передается на сервер по указанному URL


если мы посылаем http://server:port/executer/ru.bitel.bg ... entService
сервер должен дать адекватный ответ? или это нормально что код в браузере 404?
насколько я понимаю должен быть ответ в авторизации отказано

провайдер ответил
Код:
ну в логах доступа от тебя есть строка
 - [20/Apr/2016:12:43:16 +0700] 0.022 404 5 "GET /bgbilling/executer/ru.bitel.bgbilling.kernel.contract.balance/PaymentService?wsdl HTTP/1.1" wsdl=&


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 13:17 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
Юзера надо добавить "юзера биллинга", от которого идут запросы в сервер, очевидно.

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 16:45 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
dimOn писал(а):
Юзера надо добавить "юзера биллинга", от которого идут запросы в сервер, очевидно.

уже добавили и туда и ошибка та же.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 16:48 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
На гугл ссылка выше - вы всё попробовали? Или вы хотите готовый код чтобы вам написали тут или что? :lupa:

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 16:58 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
dimOn писал(а):
На гугл ссылка выше - вы всё попробовали? Или вы хотите готовый код чтобы вам написали тут или что? :lupa:

У гугле именно про BGBilling нету с этой ошибкой. Раз мы с провайдером у него видим пакет в сети, то проблема у него, а не у меня в PHP. И вопрос стоит не код напишите за нас, а какой модуль надо включить?
раз билинг его не обрабатывает


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 17:23 
Не в сети

Зарегистрирован: 14 апр 2016, 13:09
Сообщения: 17
Карма: 0
провайдер сказал он не понимает что надо включить для работы SOAP
он говорит у него есть только эти модули
Код:
вот список протоколов, которые умеет
2.1. ОСМП, Empay, Pegas, Rapida, Comepay
2.2. CyberPlat
2.3. XPlat
2.4. Eport
2.5. SFOUR PayBox Alternative
2.6. ОПТИМА plus
2.7. Elecsnet
2.8. Юникасса
2.9. Quickpay
2.10. Sberbank
2.11. Сбербанк (sbrf)
2.12. Bisys


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 апр 2016, 18:13 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
так это модуль mps и в параметрах настраивается логин и пароль для авторизации при оплате. И через экзекутер тогда не надо платежи проводить


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 42 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


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

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.099s | 82 Queries | GZIP : On ]