BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 28 мар 2024, 20:07

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




Начать новую тему Ответить на тему  [ Сообщений: 47 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 11:18 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Настраиваю плагин Астериск в CRM. При попытке звонка ничего не происходит, хотя по логам AMIManager подключен.
Код:
04-25/06:25:14  INFO [Thread-6] ManagerConnectionImpl - Connecting to XX.XX.XX.XX:5038
04-25/06:25:14  INFO [Asterisk-Java ManagerConnection-13-Reader-0] ManagerConnectionImpl - Connected via Asterisk Call Manager/1.3
04-25/06:25:14  INFO [Thread-6] ManagerConnectionImpl - Successfully logged in
04-25/06:25:14  INFO [Thread-6] ManagerConnectionImpl - Determined Asterisk version: Asterisk 1.6

В логах при звонке ничего нет. Каким образом можно увидеть, что плагин заработал? Должны появляться новые сообщения?

Если "занять" номер в сообщениях, то при попытке звонка выпадает ошибка:
Код:
04-25/01:41:52  INFO [Asterisk-Java ManagerConnection-1-Reader-1] AMIManager - Call to registred number: 1111111
04-25/01:41:52 ERROR [Asterisk-Java ManagerConnection-1-Reader-1] AMIManager - com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'from'
ru.bgcrm.model.BGException: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstr

"1111111" - CallerID звонящего. Его и вношу в поле "Занять"

Конфигурация:
Код:
createOnStart=ru.bgcrm.plugin.asterisk.AMIManager,ru.bgcrm.event.listener.MessageTypeCallListener

messageType.2.title=Звонки
messageType.2.class=ru.bgcrm.dao.message.MessageTypeCall

asterisk:amiManager.1.messageTypeId=2
asterisk:amiManager.1.host=XX.XX.XX.XX
asterisk:amiManager.1.port=5038
asterisk:amiManager.1.login=crm
asterisk:amiManager.1.pswd=14451431


Asterisk v 11.25.1
С версиями 12.8.2, 14.3.0 при звонке вылезает куча ошибок, видимо несовместимость.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 12:38 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
должны звонки появляться. Номер занимается оператора который принимает звонки. Версия црм последняя?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 12:43 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
zavndw писал(а):
должны звонки появляться. Номер занимается оператора который принимает звонки.

Как и где определяется этот оператор?
А сообщения новые автоматом не создаются?

Цитата:
Версия црм последняя?

Да, последняя.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 14:01 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
занимать нужно номер, НА который звонят, т.е. номер оператора, который принимает звонки. Проверял на астере версий 11, 13 - всё работает. на 13м да, куча сообщений, но, тем не менее, работает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 14:16 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Я пробовал занимать номер на который звонят. Ничего не происходит.
Вот такой тестовый номер сделал:
Цитата:
exten => 9000,1,NoOp(Time: ${EXTEN} ${timezone})
exten => 9000,n,Wait(0.25)
exten => 9000,n,Answer()
exten => 9000,n,Set(FUTURETIME=$[${EPOCH} + 12])
exten => 9000,n,SayUnixTime(${FUTURETIME},Zulu,HNS)
exten => 9000,n,SayPhonetic(z)
exten => 9000,n,SayUnixTime(${FUTURETIME},${timezone},HNS)


В AMI (при просмотре по телнету) все появляется, номер 9000 сделал "Занятым", но ничего не происходит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 15:15 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
А в автостарт црм добавили класс? И перезапустили црм


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 15:57 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Я сделал все как здесь описано. Конфиг выше в первом посте. Перезапуск делал. Что-то упустил?

zavndw писал(а):
А в автостарт црм добавили класс?

О каком классе речь и как его добавить в автостарт?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 17:13 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2676
Карма: 72
увидел есть все.
Если зайти в сообщения там пусто?
Цитата:
Звонки 402 -> 102

У меня там отображаются и не занятые номера


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 17:15 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Пусто, да.


Вложения:
Сообщения2.png
Сообщения2.png [ 13.3 КБ | Просмотров: 15344 ]
Сообщения.png
Сообщения.png [ 10.95 КБ | Просмотров: 15345 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 17:22 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Вот лог звонка на AMI:
Код:
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Asterisk Call Manager/1.3
Action: login
Username: crm
Secret: 2323413214

Response: Success
Message: Authentication accepted

Event: Newchannel
Privilege: call,all
Channel: SIP/200-00000004
ChannelState: 0
ChannelStateDesc: Down
CallerIDNum: 111111111
CallerIDName: 200
AccountCode:
Exten: 9000
Context: demo
Uniqueid: 1493119159.4

Event: Newstate
Privilege: call,all
Channel: SIP/200-00000004
ChannelState: 4
ChannelStateDesc: Ring
CallerIDNum: 111111111
CallerIDName: 200
ConnectedLineNum:
ConnectedLineName:
Uniqueid: 1493119159.4

Event: Newstate
Privilege: call,all
Channel: SIP/200-00000004
ChannelState: 6
ChannelStateDesc: Up
CallerIDNum: 111111111
CallerIDName: 200
ConnectedLineNum:
ConnectedLineName:
Uniqueid: 1493119159.4

Event: SoftHangupRequest
Privilege: call,all
Channel: SIP/200-00000004
Uniqueid: 1493119159.4
Cause: 16

Event: Hangup
Privilege: call,all
Channel: SIP/200-00000004
Uniqueid: 1493119159.4
CallerIDNum: 111111111
CallerIDName: 200
ConnectedLineNum: <unknown>
ConnectedLineName: <unknown>
AccountCode:
Cause: 0
Cause-txt: Unknown



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 17:44 
Не в сети
Клиент

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 25 апр 2017, 18:53 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Хорошо, попробую настроить какой-нибудь SIP-телефон.
Но тут вопрос сразу. Я полагал, что каждый звонок поступает в виде сообщения, которые потом можно разобрать и создать процессы. По хорошему можно вообще сразу процессы по звонкам создавать. Ибо каждый звонок - это обращение абонента и на него надо реагировать.

А получается так, что если не "занять" некий номер, то и сообщения не будет никакого?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 08 май 2017, 02:19 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Звонки стали появляться в сообщениях. По номеру договор биллинга автоматически определяется. Но при попытке создания процесса из сообщения вылетает Exception. Хотя при этом процесс создается.
Код:
05-07/23:16:24 ERROR [http-bio-9088-exec-3] MessageAction - com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'in_last_id' in 'field list'
ru.bgcrm.model.BGException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'in_last_id' in 'field list'
        at ru.bgcrm.dao.message.MessageDAO.updateProcessLastMessageTime(MessageDAO.java:278)
        at ru.bgcrm.dao.message.MessageDAO.updateMessageProcess(MessageDAO.java:182)
        at ru.bgcrm.struts.action.MessageAction.messageUpdateProcess(MessageAction.java:180)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        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:498)
        at ru.bgcrm.struts.action.BaseAction.dispatchMethod(BaseAction.java:239)
        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:150)
        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:298)
        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: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'in_last_id' in 'field list'
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
        at com.mysql.jdbc.Util.getInstance(Util.java:381)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1030)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3515)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3447)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1951)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2554)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1761)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2046)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1964)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1949)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
        at ru.bgcrm.dao.message.MessageDAO.updateProcessLastMessageTime(MessageDAO.java:271)



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 09 май 2017, 01:30 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Как будто не отрабатывают обновления БД. Вы можете выложить лог последнего обновления?
Попробуйте загрузить update пакет с FTP
ftp://bgcrm.ru/pub/bgcrm/3.0/
вынуть из него patch.sql, применить вручную к вашей БД BGCRM.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 10 май 2017, 01:46 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Дело в том , что и на предыдущей версии была та же ошибка. Я сделал update, она не пропала.
Лог:
Код:
Update starting..
Update from ftp://ftp.bgcrm.ru/pub/bgcrm
Version is 3.0
Set passive mode..
Changing dir to /pub/bgcrm/3.0
Checking update for 'update'..
Found update for 'update' build 1183 updating to build 1185
Checking update for 'update_lib'..
Downloading update_3.0_1185.zip OK!
Start installing..
Executing call ExecuteSQL; param: patch.sql
Executing database update...OK
Result => true
Executing call RemoveFile; param: action/pl_bgbilling.xml
Result => true
Executing call RemoveFile; param: action/pl_document.xml
Result => true
Executing call RemoveFile; param: action/pl_ufanet.xml
Result => true
Executing call RemoveFile; param: action/pl_report.xml
Result => true
Executing call RemoveFile; param: plugin/documentCirculation.xml
Result => true
Executing call RemoveFile; param: plugin/raiting.xml
Result => true
Execute calls => OK
File doesn't changed webapps/WEB-INF/jspf/process_color.jsp
File's copy finished...
File copy => OK
Module update was successfull installed!
Please, restart BGCRM server.
REPLACED FILES:
lib/app/bgcrm.jar
webapps/WEB-INF/jspf/select_interface.jsp
webapps/WEB-INF/jspf/table_row_edit_mode.jsp
webapps/WEB-INF/jspf/user/plugin/document/template/example/process_docx.jsp
webapps/WEB-INF/jspf/user/process/process/process_link_table.jsp
webapps/js/crm.js

Судя по логу SQL нормально пропатчился без ошибок?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 10 май 2017, 14:26 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Ошибок обновления не вижу.. Попробуйте под пользователем BGCRM выполнить запрос:
CALL add_column_if_not_exists('process_message_state', 'in_last_id', 'INT NOT NULL, ADD out_last_id INT NOT NULL');
Запустите ./installer.sh без параметров, там есть подсказка. Попробуйте перед следующим обновлением почистить кэш выполненных запросов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 11 май 2017, 19:29 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
А каким образом сделать этот запрос? Как получить доступ к указанной процедуре?

Если запустить под пользователем crm в mysql, то выдает. Судя по всему процедуры нет.
ERROR 1305 (42000): PROCEDURE bgcrm.add_column_if_not_exists does not exist


Последний раз редактировалось spectrum 11 май 2017, 19:58, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 11 май 2017, 19:50 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Вытащил эту процедуру и sql-скрипта.
При запуске выдает:

MariaDB [bgcrm]> CALL add_column_if_not_exists('process_message_state', 'in_last_id', 'INT NOT NULL, ADD out_last_id INT NOT NULL');
ERROR 1461 (42000): Can't create more than max_prepared_stmt_count statements (current value: 16382)

Это нужно глобально увеличивать "max_prepared_stmt_count"?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 12 май 2017, 00:34 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
https://www.google.com/search?q=+Can't+ ... statements

Из результатов:
https://iammysql.wordpress.com/2012/05/ ... tatements/
http://stackoverflow.com/questions/1384 ... stmt-count

Увеличить можно так:
Код:
set global max_prepared_stmt_count=<some_larger number>;

Но я бы рекомендовал также включить лог и посмотреть, что за стейтменты там не закрыты:
Код:
set global general_log = 'ON';

На этой базе только BGCRM, либо что-то ещё работает?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 12 май 2017, 00:36 
Не в сети
Клиент
Аватара пользователя

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 12 май 2017, 03:42 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Администратор писал(а):
Увеличить можно так:
Код:
set global max_prepared_stmt_count=<some_larger number>;

Но я бы рекомендовал также включить лог и посмотреть, что за стейтменты там не закрыты:
Код:
set global general_log = 'ON';

На этой базе только BGCRM, либо что-то ещё работает?

Как увеличить-то я понимаю, но даст ли это толк, не вырастет до новых пиковых значений?
Кроме CRM на этом же сервере крутится BGBilling со своей базой.

Phricker писал(а):
А некоторые советуют просто отключать кеширование

Судя по графикам увеличение не поможет. Тогда может действительно отключать кэш?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 12 май 2017, 09:58 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Ночью остановил bgserver. Сразу "Prepared_stmt_count" сбросилось в 0. ТАк что пробелма не в CRM.
После этого запустил процедуру add_column_if_not_exists. Все прошло без ошибок.
Далее killhash и установка апдейта.
Exception пропал.

Что напрягло. При установке апдейта была ошибка:
Код:
OK (84 ms.) => ALTER TABLE param_list CHANGE value value INT NOT NULL
ERROR (1091) Can't DROP 'PRIMARY'; check that column/key exists => ALTER TABLE param_address DROP PRIMARY KEY
ERROR (1061) Duplicate key name 'id_param' => ALTER TABLE param_address ADD KEY id_param(id, param_id)
OK (2 ms.) => CALL add_column_if_not_exists('param_address', 'n', 'INT NOT NULL AFTER param_id')

Что это?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 12 май 2017, 12:22 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Это некритично. Некоторые старые выражения для изменения структуры написаны не хранимыми процедурами, а просто ALTER ами. Если индекс или поле уже есть - выкидывается ошибка.
При следующем обновлении ошибок уже не будет, т.к. выполненные запросы сохранились в кэш.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 12 май 2017, 12:24 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Попробуйте включить лог, пожалуйста, и выловить не закрывающиеся Prepared Statements. Если получится - отпишите в ветку по биллингу. Надо бы их исправить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 12 май 2017, 22:25 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Хорошо, сделаю.
Но у меня еще вопрос по поводу Asterisk-плагина. Можно ли сделать так, чтобы в сообщения попадали все звонки, а не только те, что "займет" оператор?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 13 май 2017, 18:16 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Думаю, там необходима фильтрация хотя бы по номеру принимающему. Как-то распознавать входящие звонки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 14 май 2017, 02:03 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Ну вот у нас есть много разных входящих линий в зависимости от услуги и рекламной компании. Нужно принимать их все. И по каждому звонку генерировать процесс.
А тут, получается, не совсем логичная привязка к оператору. А если автоответчик стоит, например? А если оператор забыл привязать номер, то звонок потерян? Также вообще никак не фиксируются неотвеченные вызовы, а они, ведь, тоже важны.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 14 май 2017, 02:23 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Можно отфильтровывать вызовы по принимающему номеру. Иначе не получится даже определить, какие сообщения входящие.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 14 май 2017, 02:28 
Не в сети
Разработчик

Зарегистрирован: 27 ноя 2006, 20:36
Сообщения: 5715
Карма: 93
Занятие номеров используется в данный момент для определения, какой пользователь BGCRM принял вызов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Астериск и CRM
СообщениеДобавлено: 14 май 2017, 03:31 
Не в сети

Зарегистрирован: 29 янв 2014, 11:32
Сообщения: 365
Карма: 10
Администратор писал(а):
Можно отфильтровывать вызовы по принимающему номеру. Иначе не получится даже определить, какие сообщения входящие.

Каким образом это сделать? Не нашел в документации фильтрации.


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

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


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

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


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

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