BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 19 апр 2024, 05:08

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




Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
СообщениеДобавлено: 21 окт 2015, 17:03 
Не в сети

Зарегистрирован: 06 окт 2015, 16:30
Сообщения: 23
Карма: 0
Здраствуйте, я хотел указать адрес (ip и порт), логин и пароль другого контент-провайдера для отправки собщений через smpp. Но, не могу найти где это можно осуществлять и как? Через api документацию получилось свой dyn-класс создать:

---
package ru.bitel.bgbilling.plugins.dispatch.server.sender;

import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;
import ru.bitel.common.model.Id;
import ru.bitel.bgbilling.plugins.dispatch.common.bean.Contact;


public class mysmsgateway extends java.lang.Object implements Sender {

@Override

public void send(Contact contact, java.lang.String title, java.lang.String messageBody, java.util.List<javax.activation.DataSource> files)
throws ru.bitel.bgbilling.common.BGException
{
}
}

---
Компиляция успешна прошла, но когда Run(F9) нажимаю выходить ошибка org/jsmpp/PDUException
...
Caused by: java.lang.ClassNotFoundException: org.jsmpp.PDUException
...

Вопросы:
1. Где и как указать адрес (ip и порт), логин и пароль другого контент-провайдера (ne smsc, smsaero, ...) для отправки собщений через smpp?
2. Чтобы Run(F9) прошло успешно, мне надо скачать jsmpp-2.1.0-RELEASE.jar? Если да, куда положить?
3. Ну вообще что нужно сделать чтобы достичь работы sms-dispatch?.

---
P.S.

Заранее всем спасибо! Жду ответы, советы и варианты любые...


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

Зарегистрирован: 27 янв 2010, 16:12
Сообщения: 941
Откуда: Уфа
Карма: 124
Выведите все из окна about.

А так, нужно вашу библиотеку положить в lib/ext (если последняя версия биллинга). По поводу логина, пароля, ip:port - нужно смотреть документацию к этой самой jsmpp.

_________________
С уважением, Гареев Артур. Вежливый разработчик ООО "Бител".


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

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Artur писал(а):
А так, нужно вашу библиотеку положить в lib/ext (если последняя версия биллинга). По поводу логина, пароля, ip:port - нужно смотреть документацию к этой самой jsmpp.

Цитата:
Помимо встроенных способов отправки сообщения существует возможность реализации пользовательских способов отправки. Для реализации этой возможности необходимо воспользоваться механизмом динамически загружаемых Java-классов. Необходимо создать динамический класс, реализующий интерфейс ru.bitel.bgbilling.plugins.dispatch.server.sender.Sender, а затем создать метод отправки нажатием на кнопку Добавить в панели инструментов, указав этот класс в выпадающем списке.

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


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

Зарегистрирован: 27 янв 2010, 16:12
Сообщения: 941
Откуда: Уфа
Карма: 124
Видимо, ТС уже отверг для себя такой вариант =) Либо плагин Dispatch отсутствует.

_________________
С уважением, Гареев Артур. Вежливый разработчик ООО "Бител".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 21 окт 2015, 19:06 
Не в сети

Зарегистрирован: 06 окт 2015, 16:30
Сообщения: 23
Карма: 0
Вот полная ошибка:

javax.xml.ws.soap.SOAPFaultException: org/jsmpp/PDUException
at com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:193)
at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:134)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:123)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:93)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:144)
at com.sun.proxy.$Proxy35.run(Unknown Source)
at ru.bitel.bgbilling.kernel.dynamic.client.DynamicCodeLibraryPanel$14.actionPerformedImpl(DynamicCodeLibraryPanel.java:521)
at ru.bitel.common.client.AbstractBGUPanel.actionPerformed(AbstractBGUPanel.java:237)
at ru.bitel.common.client.AbstractBGUPanel$DefaultAction.actionPerformed(AbstractBGUPanel.java:91)
at ru.bitel.common.client.AbstractBGUPanel.performAction(AbstractBGUPanel.java:541)
at ru.bitel.common.client.AbstractBGUPanel.performAction(AbstractBGUPanel.java:522)
at ru.bitel.common.client.AbstractBGUPanel.performAction(AbstractBGUPanel.java:517)
at ru.bitel.bgbilling.kernel.dynamic.client.DynamicCodeLibraryPanel$6.actionPerformed(DynamicCodeLibraryPanel.java:271)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6535)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6300)
at java.awt.Container.processEvent(Container.java:2236)
at java.awt.Component.dispatchEventImpl(Component.java:4891)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Component.dispatchEvent(Component.java:4713)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
at java.awt.Container.dispatchEventImpl(Container.java:2280)
at java.awt.Window.dispatchEventImpl(Window.java:2750)
at java.awt.Component.dispatchEvent(Component.java:4713)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.lang.NoClassDefFoundError: org/jsmpp/PDUException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
at java.lang.Class.getMethod0(Class.java:3018)
at java.lang.Class.getMethod(Class.java:1784)
at ru.bitel.bgbilling.kernel.dynamic.server.DynamicCodeServiceImpl.run(DynamicCodeServiceImpl.java:304)
at sun.reflect.GeneratedMethodAccessor87.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at ru.bitel.bgbilling.kernel.container.service.server.ServiceInfo.invoke(ServiceInfo.java:101)
at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler.invoke0(AbstractJaxWsHandler.java:195)
at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler.access$0(AbstractJaxWsHandler.java:169)
at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler$1.run(AbstractJaxWsHandler.java:242)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler.invoke(AbstractJaxWsHandler.java:236)
at ru.bitel.bgbilling.kernel.container.ws.server.JaxWsHandler.invoke(JaxWsHandler.java:315)
at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler$ServiceInstanceResolver$1.invoke(AbstractJaxWsHandler.java:335)
at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:150)
at com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:261)
at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:100)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:641)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:600)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:585)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:482)
at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:314)
at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:608)
at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:259)
at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:162)
at ru.bitel.bgbilling.kernel.container.ws.server.JaxWSAdapter.handle(JaxWSAdapter.java:288)
at bitel.billing.server.Executer.doPost(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: org.jsmpp.PDUException
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 49 more


- Phricker (Помимо встроенных способов отправки сообщения существует возможность реализации пользовательских способов отправки. Для реализации этой возможности необходимо воспользоваться механизмом динамически загружаемых Java-классов. Необходимо создать динамический класс, реализующий интерфейс ru.bitel.bgbilling.plugins.dispatch.server.sender.Sender, а затем создать метод отправки нажатием на кнопку Добавить в панели инструментов, указав этот класс в выпадающем списке.)

Я это уже читал, вы думаете если это читать, все просто так пойдет?

---
Я бросил jsmpp.jar скинул в lib/ext/. Но не пашет, не находит нужный класс. Не нашел ничего про smpp в api документации. Я уже наподобие этого интерфейса (ru.bitel.bgbilling.plugins.dispatch.server.sender.Sender) dyn-класс создал и на верху выложил если Вы не заметили. А как указать путь к нужному скачанному jar (jsmpp.jar) файлу и/или классу org.jsmpp.PDUException (import org.jsmpp.PDUException; не помогает)? Дайте пожалуйста хоть какие-то варианты...


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

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
flosisa писал(а):
Я это уже читал, вы думаете если это читать, все просто так пойдет?

Ну нет конечно.
Я вот лично начинал с вики, учился по примерам, и лишь потом брался писать в динкоде что-то :)
И немного книжек по яве тоже, в соответствующей теме на форуме.
А потом когда поумнел начал пользовался jd-gui, смотреть как пишут разрабы, и совершать те же ошибки что и они :D


Код:
package ru.ellcom.modules.dispatch;

import ru.bitel.bgbilling.common.BGException;
import ru.bitel.bgbilling.kernel.plugin.server.BGPluginManagerServer;
import ru.bitel.bgbilling.plugins.dispatch.common.bean.Contact;
import ru.bitel.bgbilling.plugins.dispatch.server.sender.Sender;
import ru.bitel.common.Preferences;

import javax.activation.DataSource;
import java.util.List;


public class MyLittleSender implements Sender {

    private Preferences pluginPreferences = BGPluginManagerServer.getManager().getPlugin("ru.bitel.bgbilling.plugins.dispatch").getSetup();

    @Override
    public void send(Contact contact, String s, String s1, List<DataSource> list) throws BGException {
        String login = this.pluginPreferences.get("sender.sms.mysender.login");
        String password = this.pluginPreferences.get("sender.sms.mysender.pass");
        //URL задаем прямо в скрипте. Лень писать в настройках плагина.
        String url = "https://bitel.ru/sendsms/?";

        /*
        Тут пишем что угодно, что реализует вашу отправку по вашим запросам
        */

    }
}


Сохраняем и компилируем в динкоде.

Заходим в Плагины-Настройки плагинов-Рассылки (Dispatch)
Добавляем туда строки
Изображение

Заходим в Плагины - Рассылки и добавляем свой способ отправки
Изображение

Тестируем

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


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

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

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


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

Зарегистрирован: 27 янв 2010, 16:12
Сообщения: 941
Откуда: Уфа
Карма: 124
Вы так и не указали какая у вас версия. Еще забыл уточнить, что после того, как положите библиотеку, то нужно перезапустить сервер биллинга.

_________________
С уважением, Гареев Артур. Вежливый разработчик ООО "Бител".


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

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
У него/нее в профиле указано 6.1

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


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

Зарегистрирован: 06 окт 2015, 16:30
Сообщения: 23
Карма: 0
Спасибо, Phricker Ваш скрипт помог. Учту Ваш совет по поводу wiki (до того в основном читал doc и api.doc). Сейчас ошибка дошла до минимума. То есть компиляция без ошибки проходит, но при Run(F9) вывод дает вот это:

load class ru.bitel.bgbilling.plugins.dispatch.server.sender.MyLittleSender need a method "execute(Setup,ConnectionSet)" or "static main(String[])" to run

---
Что может быть? Добавление над public void send: public void execute(Setup,ConnectionSet){...} не помогает.


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

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
А зачем вы нажимаете Run(F9) и что вы хотите этим добиться?

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


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

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


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

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


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

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