BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 27 дек 2024, 16:58

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




Начать новую тему Ответить на тему  [ Сообщений: 17 ] 
Автор Сообщение
 Заголовок сообщения: trayinfo,
СообщениеДобавлено: 26 июл 2016, 13:05 
Не в сети
Клиент

Зарегистрирован: 10 ноя 2014, 18:38
Сообщения: 396
Карма: 0
Не понимаю куда писать скрипты, отрабатывающие событие запроса от trayinfo клиента. этот скрипт должен висеть на договоре абонента или где-то ещё?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 26 июл 2016, 13:54 
Не в сети
Аватара пользователя

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 12:01 
Не в сети
Клиент

Зарегистрирован: 10 ноя 2014, 18:38
Сообщения: 396
Карма: 0
а. т.е. его можно дополнить классом в "управление динамическим кодом" в "ветке" ru.bitel.bgbilling.trayinfo ?

а есть пример какой-нибудь. а то что-то трудно у меня с пониманием как это будет работать в составе существующего кода..


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 14:23 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Код:
replybuilder=ru.ellcom.bgbilling.modules.trayinfo.SimpleReply


Код:
package ru.ellcom.bgbilling.modules.trayinfo;

import java.math.BigDecimal;
import java.sql.Connection;
import java.util.Date;

import bitel.billing.server.contract.bean.BalanceUtils;

import ru.bitel.bgbilling.modules.trayinfo.server.bean.TrayInfoReplyBuilder;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.Utils;

/**
 * Какой-то простой формат ответа.
 * @author dimon
 */
public class SimpleReply
   implements TrayInfoReplyBuilder
{
   private Connection conSlave = null;
   
   @Override
   public void init( Setup setup, Connection conSlave, int mid )
   {
      this.conSlave = conSlave;
   }
   
   @Override
   public String reply( int cid )
   {
      BalanceUtils cu = new BalanceUtils( conSlave );
       BigDecimal balance = cu.getBalance( new Date(), cid );
      return "Ваш баланс = "+Utils.formatCost( balance ) ;
   }
}


_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 17:12 
Не в сети
Клиент

Зарегистрирован: 10 ноя 2014, 18:38
Сообщения: 396
Карма: 0
у меня в логах -
07-27/14:14:26 INFO ["http-bio-/0.0.0.0-8080"-exec-10] BalanceSender - No trayinfo-script for contract cid=28286!

Куда это прописывать?! ;)

Phricker писал(а):
Код:
replybuilder=ru.ellcom.bgbilling.modules.trayinfo.SimpleReply

[/code]


т.е. и надо ли, так как у меня это - replybuilder=ru.bitel.bgbilling.modules.trayinfo.SimpleReply


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 17:24 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Вы прописываете тот package который у вас в динкоде.
Т.к. при обновлении SimpleReply который в комплекте - перетирается, я перенес его в свой package и указал путь к нему.

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 17:34 
Не в сети
Клиент

Зарегистрирован: 10 ноя 2014, 18:38
Сообщения: 396
Карма: 0
я так практически сразу и сделал. но в логах пишет ошибку, что не найден скрипт,... поэтому подозреваю, что нужно где-то ему путь прописать... где это делается хоть?

пишет всё время в логах
07-27/15:41:07 INFO ["http-bio-/0.0.0.0-8080"-exec-8] BalanceSender - No trayinfo-script for contract cid=28286!

debug уровень логов прояснения не даёт.. я так понимаю, что он мой скрипт просто не находит... Собственно я и спрашивать начал в начале ветки о структуре, просто не так понял что у меня не так выходит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 18:21 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
А какая версия биллинга у вас?

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 18:29 
Не в сети
Клиент

Зарегистрирован: 10 ноя 2014, 18:38
Сообщения: 396
Карма: 0
Сервер: вер. 6.0 сборка 1870 от 05.11.2015 21:31:29
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_75

trayinfo вер. 6.0 сборка 177 от 09.02.2015 18:41:24


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 18:57 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Эээээ...
В 6.0 не было динкода для отображения информации..
https://bgbilling.ru/v6.0/doc/ch07s06.html

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 19:08 
Не в сети
Клиент

Зарегистрирован: 10 ноя 2014, 18:38
Сообщения: 396
Карма: 0
так это явно не похоже на пример класса и @Override
но конструкция

event.setReply( "test cid="+event.getContractID() );

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 19:11 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Galkov писал(а):
скрипт надо вешать на каждый договор.

Именно так.
В 6.1+ уже не нужно

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 27 июл 2016, 19:33 
Не в сети
Клиент

Зарегистрирован: 10 ноя 2014, 18:38
Сообщения: 396
Карма: 0
тьфу ...
а можно кусок кода генерации нужного для trayinfo ?
или ссылку на форуме на это?

а то event.setReply( "test cid="+event.getContractID() ); ругается на отсутствие метода setReply у класса.

ошибка в логах
server 07-27/17:19:07 ERROR ["http-bio-/0.0.0.0-8080"-exec-1] BalanceSender - error executer
ru.bitel.bgbilling.kernel.event.EventProcessorException: Local event must be generated in ServerContext!


собственно она всё объясняет, я просто не понимаю структуру приложения и не могу это использовать. нужно какое-то простое описание...


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

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Справочники - Другие - Договоры-скрипты поведения.
Добавляете новый скрипт. Если есть тот к которому собираетесь привязывать (какие-нибудь общие скрипты и т.п.)оставляете как есть.
Сервис - Автоматизация - Функции скриптов поведения.
Вкладка "Скрипты BGBS"
Выбираете нужный вам скрипт (который добавлен в справочнике) из выпадающего меню.
Нажимаете зеленый +
Вводите любое название.
В правой части окна вставляете
Код:
import bitel.billing.common.TimeUtils.*;
import bitel.billing.server.contract.bean.*;
import bitel.billing.server.util.*;
import java.util.*;

cid = event.getContractId();
bu  = new BalanceUtils( con );
tu  = new TimeUtils();
balance = bu.getBalance(tu.convertCalendarToDate(event.getGenerateTime()), cid);

event.setReply(" "+"Баланс = "+balance+" р.");


В левой части окна находите "Модуль TrayInfo - формирование ответа" (у вас может по другому называться данный пункт. Ставите галочку.
Добавляете данный скрипт на договор.
Профит

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 28 июл 2016, 11:07 
Не в сети
Клиент

Зарегистрирован: 10 ноя 2014, 18:38
Сообщения: 396
Карма: 0
спасибо ,... BGBS .. а java нету варианта? .. у меня выдача там суммы к оплате, чтоб не отключило услугу 1 числа...
это довольно сложно вычисляемое значение... лопатить BGBS документацию как переложить это из java ... ;)))

а на этот скрипт валится ошибка

ru.bitel.bgbilling.kernel.event.EventProcessorException: Local event must be generated in ServerContext!
at ru.bitel.bgbilling.kernel.event.LocalEventProcessor.request(LocalEventProcessor.java:233)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: trayinfo,
СообщениеДобавлено: 28 июл 2016, 12:04 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Я на 7.0, а там динкод :)

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


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

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
можно и на жаве писать скрипты поведения, конечно, как и для остальных случаев, но в вашем варианте (6.0) это всё равно должен быть скрипт поведения на событие, и повешенный на договор, не гольный дин.код как в 6.1+, так что инструкция как выше почти, но код другой

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


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ] 

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


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

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


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

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