Вы не авторизованы

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

RSS
Не прикрепляется GUID зконка к событиям
 
Добрый день!

Тестируем на УПП 1.3, версия панели 1.2.21.28 (новее скачать не получается), FreePBX 6.12.65-22, Asterisk 1.8.32.1
Возникла такая проблема:
GUID звонка прикрепляется только к 5% событий.
В остальных случаях он пустой.

Подскажите куда смотреть?
Где можно посмотреть логи PT1C и ведутся ли они вообще?
Изменено: Антон Дорошкевич - 15.12.2014 09:10:39
 
1.2.21.28 - такой версии не существует.
Напишите мне запрос. Вышлю более новую версию.
Цитата
Где можно посмотреть логи PT1C и ведутся ли они вообще?
Если история звонков открывается, то логи ведутся.
Таблица PT1C_cdr хранится в MySQL, в той же базе данных, что и таблица cdr.. Проверить заполнение можно простым запросом к таблице.

 
Да, извиняюсь 1.2.21.8
История не открывается - но это пока и не нужно
Таблица PT1C_cdr - есть, записей в ней есть
 
Поле uniqueid - у всех записей заполнено
 
В расчет берется поле linkedid.
Оно заполнено?
 
да, это поле тоже заполнено
 
В версии 1.2.22.3 ситуация воспроизводиться?
 
Да, к сожалению
Но зато сама панель стала намного корректнее, теперь видно у кого линия занята и статус сотрудника.
Завтра будем ещё смотреть в коде 1С.
Обязательно отпишусь
 
Добрый день!
К сожалению ID звонка так и прикрепляется к событию в 10% случаев...
В остальных 90% оно пустое и соответственно запись звонка из события получить невозможно.
Так же возникла ещё одна проблема: При консультативном переводе звонка у менеджера создаётся ещё одно событие и так может быть сколько угодно раз пока переключаем и возвращаем звонок. Перевод так отрабатывает как в случае перевода на аппарате так и в случае перевода с панели МИКО.
В итоге получаем по 5-10 событий на звонок что как минимум странно.
Изменено: Антон Дорошкевич - 16.12.2014 15:03:53
 
Победили проблему.
Итак:
1. К событию не прикреплялся ID звонка, так как время создания события при звонке через Панель телефонии составляло около 3-4 секунд
 1.1 Оптимизировали определение кода города, создав временную таблицу кодов городов при первом обращении и поместили её в менеджер времемнных таблиц
 1.2. Поиск записи в базу MySQL Asterisk шёл 1,8 сек, создали индекс для таблицы PT1C_cdr по полю uniqueid, поиск стал осуществляться за сотые доли секунды. Таблица содержит миллионы записей!
После этого время создания события сократилось до 1-1,5 секунд и ID стал прикрепляться.

2. Проблема с генерацией событий при переключении звонка решается автоматической записью события сразу после его создания и заполнения данными.

3. У нас для входящих вызовов используются Очереди в Астериск. При это поиск записи разговора по частичному ID (до точки) с выдачей LIMIT 1 - выдаёт в большинстве случаев несуществующее имя файла записи разговора (допустим в группе 10 номеров, пришёл звонок, взял трубку 1 номер, а в выдаче может быть любой из 9-ти оставшихся номеров к ID которых не привязан файл записи). Решается поиском по полному ID (с точкой и цифрами после неё)
 3.1. Также выяснилось что компонента ищет по полю uniqueid, а эвышеозначенную проблему можно было бы решить поиском по полю Linkedid (оно одинаковое для всех записей uniqueid звонка), но это реализовать можете только Вы, как разработчики.

4. При совершении исходящего вызова из события или карточки контрагента искать заново набираемый номер не имеет смысла, так как мы чётко знаем кому звоним. Поэтому вместо поиска номера реализовали привязку звонка к конкретному контактному лицу чем добились отсутствия ненужного поиска и ОДНОЗНАЧНОГО определения ПРАВИЛЬНО контрагента и контактного лица даже если у нескольких контрагентов/контактных лиц указан одинаковый номер.
 
Отлично. Спасибо за обратную связь.
Постараемся учесть замечания в будущих версиях.
 
Алексей, добрый день!

Всё таки не удаётся победить повторные генерации/открытия событий при переводе звонка.

Получается что при переводе звонка срабатывает событие Bridge, НО данные XML фильтруются по начальному звонку и соответственно 1С не понимает что перевод звонка это не новый вызов. Отловить это можно было бы анализирую channel1 и channel2, в них при переводе есть запись xfer. Но опять же из-за фильтрации по изначальному звонку - отловить нереально.

Можете что-нибудь посоветовать?

P.S. Для обработки входящих используем Очереди звонков
Изменено: Антон Дорошкевич - 18.12.2014 09:04:30
 
В теме я описывал особенности переадресации вызов:

Цитата
Переадресация производилась средствами "старкод" или средствами IP телефона?

При переадресации средствами IP телефона (Attended Transfer) телефон создает новый звонок, при этом для АТС этот вызов будет абсолютно новым и не будет никаким образом связан с первым звонком от клиента. Это переадресация средствами SIP протокола.

Следует использовать переадресацию средствами старкодов, пример **104 или ##104. В этом случае переадресация ложится на плечи самой АТС и она может контролировать вызов в полной мере.

Если переадресация выполняется средствами АТС, "старкодами", то все звонки в рамках одного вызова связаны уникальным значением linkedid. На эту тему есть обсуждение.


Цитата
Что бы понять какой канал к какому звонку относится, можно получить переменную канала: CDR(linkedid)

Важно: linkedid используется только Asterisk 1.8+.

Если используете переадресацию средствами телефонов (по SIP со стороны клиентского устройства), то связать такие вызовы практически не реально.
 
К сожалению эти советы никак не помогли побороть создание событий.
Пришлось решать это средствами 1С.
 
Можете заказать работы нам.
Оценим / выполним работы.
Заявку можете оставить в форме обратной связи.
Читают тему (гостей: 1)