forum.bitel.ru http://forum.bitel.ru/ |
|
Не работает автоматический поиск по номеру в контрагенте (CRM) http://forum.bitel.ru/viewtopic.php?f=49&t=13073 |
Страница 1 из 1 |
Автор: | shestakow1993 [ 21 окт 2018, 14:07 ] |
Заголовок сообщения: | Не работает автоматический поиск по номеру в контрагенте |
Код: java.lang.NullPointerException at ru.bgcrm.struts.action.MessageAction.message(MessageAction.java:124) at ru.bgcrm.struts.action.MessageAction.unspecified(MessageAction.java:57) at sun.reflect.GeneratedMethodAccessor418.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at ru.bgcrm.struts.action.BaseAction$Invoker.invoke(BaseAction.java:530) at ru.bgcrm.struts.action.BaseAction.dispatchMethod(BaseAction.java:244) at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170) at org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58) at org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67) at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at ru.bgcrm.servlet.filter.SetRequestParamsFilter.doFilter(SetRequestParamsFilter.java:46) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at ru.bgcrm.servlet.filter.AuthFilter.doFilter(AuthFilter.java:115) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at ru.bgcrm.servlet.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:38) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) 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:987) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) 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) Конфигурация поиска в сообщении Код: messageType.1.search.2.title=Контрагент (номер) messageType.1.search.2.class=ru.bgcrm.dao.message.MessageTypeSearchCall messageType.1.search.2.commands=customerByPhoneParam:3 messageType.1.search.2.stringExpressionNumberPreprocess=if(numberFrom.length() == 12){ numberFrom = numberFrom.substring(1)}; return numberFrom; Код: param.phone.format.number=+XXX (XXX) XX-XX-XX
param.phone.format.number.f33=+XXX (XXX) XX-XX-XX |
Автор: | zavndw [ 22 окт 2018, 07:20 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
вы прописали?: Код: createOnStart=ru.bgcrm.plugin.asterisk.AMIManager,ru.bgcrm.event.listener.MessageTypeCallListener После этого нужно црм перезапустить. Так же с црм попробуйте через telnet подключится на порт астериск AMI Номер заняли же? на который звоните |
Автор: | shestakow1993 [ 22 окт 2018, 08:17 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
Код: # перечень через запятую динамических или обычных классов, объекты которых создаются при старте сервера, при перекомпиляции динамических классов создание объектов производится повторно createOnStart=ru.bgcrm.plugin.asterisk.AMIManager,ru.bgcrm.event.listener.MessageTypeCallListener Это все давно прописано, причем номера в биллинге ищутся Код: messageType.1.search.1.title=Авто биллинг (номер) messageType.1.search.1.class=ru.bgcrm.plugin.bgbilling.dao.MessageTypeSearchCall messageType.1.search.1.billingId=mybill messageType.1.search.1.commands=contractByPhoneParam:3 messageType.1.search.1.stringExpressionNumberPreprocess=if( numberFrom.length() == 12 ){ numberFrom = numberFrom.substring(1)}; return numberFrom; Т е например , берем сообщение, в нем уже номер определился , показывает карточку в биллинге, но сделав поиск по контрагентам(все договора уже импортировал в контрагенты и этому договору создан контрагент-номер и все остальные параметры импортированы), контрагент не находится. |
Автор: | shestakow1993 [ 30 окт 2018, 14:28 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
Проблема так и не решилась к сожалению после правки свойств mysql, как быть? |
Автор: | Администратор [ 30 окт 2018, 15:45 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
В ближайшее время проверю и отпишу сюда. |
Автор: | Администратор [ 02 ноя 2018, 00:08 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
По логу выходит, что не может найти режим поиска. Выложите полную конфигурацию messageType.1. Это выходит не автоматический поиск не работает, а дополнительный? Первый поиск по номерам договоров проходит корректно, далее вы нажимаете поиск по телефону контрагента - и он уже сбоит? Вы можете посмотреть с помощью инструмента разработчика браузера какой параметр searchId отправляется в запросе при этом? |
Автор: | shestakow1993 [ 04 ноя 2018, 16:07 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
Все верно, поиск по номеру в контрагенте 2ой по счету. В данный момент он закоментирован. Код: ####message#################################
messageType.1.title=Входящий звонок messageType.1.class=ru.bgcrm.dao.message.MessageTypeCall messageType.1.offerNumberFromParamId=2 messageType.100.title=Заметка messageType.100.class=ru.bgcrm.dao.message.MessageTypeNote ### messageType.1.search.1.title=Авто биллинг (номер) messageType.1.search.1.class=ru.bgcrm.plugin.bgbilling.dao.MessageTypeSearchCall messageType.1.search.1.billingId=mybill messageType.1.search.1.commands=contractByPhoneParam:3 messageType.1.search.1.stringExpressionNumberPreprocess=if(true){ numberFrom = numberFrom.substring(1)}; return numberFrom; ### #messageType.1.search.2.title=Контрагент (номер) #messageType.1.search.2.class=ru.bgcrm.dao.message.MessageTypeSearchCall #messageType.1.search.2.commands=customerByPhoneParam:3 #messageType.1.search.2.stringExpressionNumberPreprocess=if(true){ numberFrom = numberFrom.substring(1)}; return numberFrom; #### messageType.1.search.3.title=По номеру/Коментарию messageType.1.search.3.class=ru.bgcrm.plugin.bgbilling.dao.MessageTypeSearchContractByTitleAndComment messageType.1.search.3.billingId=mybill ### messageType.1.search.4.title=По логину messageType.1.search.4.class=ru.bgcrm.plugin.bgbilling.dao.MessageTypeSearchContractByDialUpLogin messageType.1.search.4.billingId=mybill messageType.1.search.4.moduleId=1 ### messageType.1.search.5.title=Контрагент по названию messageType.1.search.5.class=ru.bgcrm.dao.message.MessageTypeSearchCustomerByTitle ### messageType.1.saver.class=ru.bgcrm.plugin.bgbilling.dao.MessageTypeContactSaverPhone messageType.1.saver.paramId=3 messageType.1.saver.format=+XXX (XXX) XX-XX-XX |
Автор: | shestakow1993 [ 04 ноя 2018, 16:11 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
Если закомментировать поиск в биллинге,а поиск по контрагентам раскоментить, то то же ексепшн. Код: java.lang.NullPointerException at ru.bgcrm.struts.action.MessageAction.message(MessageAction.java:124) at ru.bgcrm.struts.action.MessageAction.unspecified(MessageAction.java:57) at sun.reflect.GeneratedMethodAccessor504.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at ru.bgcrm.struts.action.BaseAction$Invoker.invoke(BaseAction.java:530) at ru.bgcrm.struts.action.BaseAction.dispatchMethod(BaseAction.java:244) at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170) at org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58) at org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67) at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at ru.bgcrm.servlet.filter.SetRequestParamsFilter.doFilter(SetRequestParamsFilter.java:46) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at ru.bgcrm.servlet.filter.AuthFilter.doFilter(AuthFilter.java:118) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at ru.bgcrm.servlet.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:38) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) 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:987) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
|
Автор: | shestakow1993 [ 04 ноя 2018, 16:33 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
Если поиском под номером 1 стоит поиск по контрагенту, то ексепшн не вылетает, все верно, поиск срабатывает! Спасибо!!! Т е обязательно должен быть поиск под номером 1. И да для того чтоб корректно сработал поиск по 12 символам нужна такая конфигурация, может кому потребуется. Код: messageType.1.search.1.title=Контрагент (номер) messageType.1.search.1.class=ru.bgcrm.dao.message.MessageTypeSearchCall messageType.1.search.1.commands=customerByPhoneParam:3 messageType.1.search.1.stringExpressionNumberPreprocess=if(true){ numberFrom = numberFrom.substring(0)}; return numberFrom; Т е numberFrom.substring(1) вместо 1 нужно указать 0. - т е не обрезать 1ый символ. |
Автор: | shestakow1993 [ 04 ноя 2018, 16:40 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
Проверил, в случае если поставить 2ым поиском поиск по контрагенту, с последней конфигурацией, то все работает, ищется и договор в биллинге и контрагент в срм. |
Автор: | Администратор [ 06 ноя 2018, 00:49 ] |
Заголовок сообщения: | Re: Не работает автоматический поиск по номеру в контрагенте |
http://www.bgcrm.ru/doc/3.0/manual/kernel/message.html Цитата: Первый режим поиска применяется по-умолчанию при открытии сообщения для обработки. Цитата: Т е numberFrom.substring(1) вместо 1 нужно указать 0. - т е не обрезать 1ый символ. Можете вообще убрать строку предобработки, она не обязательна. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |