forum.bitel.ru http://forum.bitel.ru/ |
|
Поиск договора по номеру телефона и оплата http://forum.bitel.ru/viewtopic.php?f=19&t=11521 |
Страница 1 из 2 |
Автор: | bstsoft [ 14 апр 2016, 15:32 ] |
Заголовок сообщения: | Поиск договора по номеру телефона и оплата |
Добрый день. Прошу не пинать. Сегодня пришел к провайдеру с предложением о сотрудничестве. Он отправил меня на форум. Версия у них 6.0. Linux. Запросы к провайдеру будут в формате JSON и ответы нужны тоже в этом формате. 1.Что нужно сделать провайдеру у себя, чтобы я мог по номеру телефона запросить в его базе баланс по договорам клиента? 2.Как мне подтвердить провайдеру, что клиент оплатил за определенный договор? Мой сервис работает на PHP. Евгений. |
Автор: | barguzin2 [ 14 апр 2016, 16:48 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
костыли, костыли... есть же модуль MPS. 1) Делаем экшин, который ищет по номеру и выдает необходимые параметры. 2) Добавляем в этот экшин метод, который вы вызываете для занесения платежа онлайн. 3) Создаем отдельного юзера и разрешаем ему вызов только этого экшина. |
Автор: | stark [ 14 апр 2016, 19:16 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ? |
Автор: | bstsoft [ 14 апр 2016, 19:37 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
stark писал(а): ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ? Я вверху написал у них 6 версия, Linux. ![]() Я понял что можно, но я пишу для себя и на PHP и эту систему вижу впервые. 30 минут разговор с работником провайдера, дали понять, он эту часть не знает. Он предложил взять чей то модуль и откорректировать. Но те модуля работают по другой схеме с сайта провайдера. Мы же хотим сделать запрос из нашего сайта в их систему и человек просто согласится на оплату или нет с нашего сайта. Работник провайдера не сильно заинтересован в писанине и мне приходится в это вникать самому. Тем более, что это полный альтруизм. Я не знаю на сколько меня хватит, но пока у меня есть интерес в развитии того, что я делаю. "ну баланс можно получить через json api " - как это сделать по номеру телефона? и что провайдеру у себя прописать? ![]() |
Автор: | skn [ 14 апр 2016, 21:26 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
без заинтересованности провайдера, вы это не реализуете, не тратьте свое время.... |
Автор: | barguzin2 [ 14 апр 2016, 22:18 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
stark писал(а): ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ? я про это тоже сразу подумал, но он с 6.2 ведь вроде только, а у них 6.0, плюс для phone api вообще нет, поэтому и предложил сразу экшины. bstsoft, если вы пишите сами, может и напишите со своей стороны запросы по протоколу OSMP, например, а провайдер со своей стороны только настроит модуль. Со стороны биллинга если писать, то там всё на java. И если они не бум-бум в этом, то вам тоже долго придётся разбираться, раз вы впервые её видите. |
Автор: | bstsoft [ 15 апр 2016, 00:34 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
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", это именно так можно делать оплату? |
Автор: | barguzin2 [ 15 апр 2016, 07:58 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
вот не по существу вопросы. в таких случаях можно посоветовать только RTFM. без понимания архитектуры и принципов работы, при условии отсутствия активного участия провайдера - ну нихрена не выйдет, вам уже про это сказали. |
Автор: | zavndw [ 15 апр 2016, 11:32 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
поставьте тестовую систему и отладьте у себя а потом предлагайте провайдеру |
Автор: | dimOn [ 15 апр 2016, 11:58 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
ну что за пессимизм в каментах) |
Автор: | stark [ 15 апр 2016, 12:56 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
barguzin2 писал(а): stark писал(а): ну баланс можно получить через json api . И платеж занести.. У них какая версия биллинга ? я про это тоже сразу подумал, но он с 6.2 ведь вроде только, а у них 6.0, плюс для phone api вообще нет, поэтому и предложил сразу экшины. Я не заметили что там 6.0. Насчет Phone не уверен, не понятно что значит найти баланс по номеру телефона. Возможно там номер телефона забит как параметр договора и эта какая-то внешняя платежная система, которая использует номер тефлона как идентификатор чтобы найти договор. Мне кажется phone тут не при чем. 2 bstsoft: У нас нет описания api. Нужно ставить клиента, запускать его в режиме debug и смотреть в лог какие-запросы уходят на сервер. Там может быть либо get-запрос, либо вызов web-сервиса через soap(где-то так, где-то так). |
Автор: | Nyan [ 15 апр 2016, 15:45 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
Делал подобное на Python + Django, только проверка не по номеру телефона, а по договору. Решение на костылях: баланс проверяется SQL-запросом, платеж добавляется путем вызова API paymentUpdateRequest (подсмотрел как это делает клиент биллинга с помощью tcpdump). Вопрос к профессионалам: чем такое решение может быть плохо? К ТС: если требуется, могу поделиться наработками. |
Автор: | skyb [ 15 апр 2016, 16:58 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
Баланс проверяйте как хотите, если устраивает sql то ок. по поводу платежа - какая версия, там просто не все сработает если не правильно добавлять з.ы. а делиться наработками можно на вики |
Автор: | Nyan [ 15 апр 2016, 17:03 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
skyb писал(а): Баланс проверяйте как хотите, если устраивает sql то ок. по поводу платежа - какая версия, там просто не все сработает если не правильно добавлять з.ы. а делиться наработками можно на вики Версия 6.1. А разве когда оператор вносит платеж через клиента биллинга, не то же самое происходит, когда дергаем API? |
Автор: | braek-neck [ 15 апр 2016, 20:08 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
http://wiki.bitel.ru/index.php/%D0%98%D ... D1%8F_Card попробуйте через модуль card. он бесплатный кажется даже. При поиске баланс возвращает. |
Автор: | bstsoft [ 16 апр 2016, 10:40 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
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 мы с ним провели оплату? |
Автор: | barguzin2 [ 16 апр 2016, 22:22 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
Не движется, потому что конкретики задачи тоже нет. Тут гадают что за поиск по номеру - это номер модуля Phone или это параметр договора, а с вашей стороны нет комментария по этому поводу. Вот привязались вы с JSON+POST, а его в 6.0 в принципе нет поддержки. Предложили кучу вариантов, но в какую сторону двигаться - тоже не выбрали. И провайдер похоже не готов вникнуть, т.к. что именно включить (кнопка песдато) - её нет. Если затачивать биллинг под вашу систему, то инструкцию я написал в первом же ответе, но это надо писать экшины. Писать, Карл! На Java! Если затачивать вашу систему под биллинг, то тоже уже сказали, даже 2 варианта есть 1) запускать клиента в режиме дебаг и смотреть запросы/ответы, потом вы эти запросы повторяете у себя 2) со стороны клиента настраивается модуль MPS (по документации, например, OSMP протокол как наиболее распространенный), а вы у себя реализуете взаимодействие - тут уже и поиски договора по разным критериям реализованы и зачисление платежа. В общем, нужно 1) Чёткая постановка задачи 2) Кто и что готов делать |
Автор: | bstsoft [ 19 апр 2016, 14:49 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
barguzin2 писал(а): Не движется, потому что конкретики задачи тоже нет. Тут гадают что за поиск по номеру - это номер модуля Phone или это параметр договора, а с вашей стороны нет комментария по этому поводу. Вот привязались вы с JSON+POST, а его в 6.0 в принципе нет поддержки. Предложили кучу вариантов, но в какую сторону двигаться - тоже не выбрали. И провайдер похоже не готов вникнуть, т.к. что именно включить (кнопка песдато) - её нет. Если затачивать биллинг под вашу систему, то инструкцию я написал в первом же ответе, но это надо писать экшины. Писать, Карл! На Java! Если затачивать вашу систему под биллинг, то тоже уже сказали, даже 2 варианта есть 1) запускать клиента в режиме дебаг и смотреть запросы/ответы, потом вы эти запросы повторяете у себя 2) со стороны клиента настраивается модуль MPS (по документации, например, OSMP протокол как наиболее распространенный), а вы у себя реализуете взаимодействие - тут уже и поиски договора по разным критериям реализованы и зачисление платежа. В общем, нужно 1) Чёткая постановка задачи 2) Кто и что готов делать СП. Теперь чуточку понятней что телефон думают не то, что я хочу. Упрощаем задачу до одной операции. Если нету JSON. Тогда интересует как(или чем) поймать сообщение POST у провайдера и записать что оплата конкретного договора прошла? или это тоже невозможно сделать? |
Автор: | braek-neck [ 19 апр 2016, 17:58 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
для начала почитайте тут https://bgbilling.ru/v6.0/doc/ch03s10.html Потом загляните вот в этот архив. http://wiki.bitel.ru/images/6/6d/Idealer4.6.zip Мы через систему дилерских платежей кучу платежных провайдеров подключили. |
Автор: | barguzin2 [ 20 апр 2016, 09:17 ] | ||
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата | ||
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
|
Автор: | bstsoft [ 20 апр 2016, 12:19 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
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 сказал провайдеру, его ответ "хз". Что делаем не так? |
Автор: | dimOn [ 20 апр 2016, 12:31 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
здесь уже всё посмотрели? https://www.google.ru/search?q=php+Soap ... nal+entity |
Автор: | bstsoft [ 20 апр 2016, 12:38 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
dimOn писал(а): здесь уже всё посмотрели? https://www.google.ru/search?q=php+Soap ... nal+entity и что толку я как баран на новые ворота листаю читаю. Ответ провайдера "Но все-равно не понял, где тебе юзера добавлять тогда, если не в модуле card" Может он юзера не туда добавил? на http://wiki.bitel.ru/index.php/PHP_soapClient посмотрели описание подумали нету у нас api.enable=true добавили не помогло |
Автор: | bstsoft [ 20 апр 2016, 12:52 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
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=& |
Автор: | dimOn [ 20 апр 2016, 13:17 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
Юзера надо добавить "юзера биллинга", от которого идут запросы в сервер, очевидно. |
Автор: | bstsoft [ 20 апр 2016, 16:45 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
dimOn писал(а): Юзера надо добавить "юзера биллинга", от которого идут запросы в сервер, очевидно. уже добавили и туда и ошибка та же. |
Автор: | dimOn [ 20 апр 2016, 16:48 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
На гугл ссылка выше - вы всё попробовали? Или вы хотите готовый код чтобы вам написали тут или что? ![]() |
Автор: | bstsoft [ 20 апр 2016, 16:58 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
dimOn писал(а): На гугл ссылка выше - вы всё попробовали? Или вы хотите готовый код чтобы вам написали тут или что? ![]() У гугле именно про BGBilling нету с этой ошибкой. Раз мы с провайдером у него видим пакет в сети, то проблема у него, а не у меня в PHP. И вопрос стоит не код напишите за нас, а какой модуль надо включить? раз билинг его не обрабатывает |
Автор: | bstsoft [ 20 апр 2016, 17:23 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
провайдер сказал он не понимает что надо включить для работы 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 |
Автор: | zavndw [ 20 апр 2016, 18:13 ] |
Заголовок сообщения: | Re: Поиск договора по номеру телефона и оплата |
так это модуль mps и в параметрах настраивается логин и пароль для авторизации при оплате. И через экзекутер тогда не надо платежи проводить |
Страница 1 из 2 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |