mikopbx / ModuleBitrix24Integration

Module integration with the platform Bitrix24
GNU General Public License v3.0
5 stars 0 forks source link

Доработка для работы с несколькими отделами #46

Closed boffart closed 1 year ago

boffart commented 1 year ago

Каждому DID номеру прописывается соответствие внутренних номеров. Настройка выполняется на вкладке "Внешние линии":

Наименование линии                                       Псевдонимы номера (DID)
Телефония [201,202,203,204,205,206,207,208,209]                       74952290000
Основной   [233,101,304]                                          74952293042

Описание внутренних номеров необходимо выполнить в колонке "Наименование линии", в квадратных скобках, через запятую. В Bitrix24 каждому сотруднику назначается внутренний номер (через раздел "Телефония").

В итоге получаем "ТаблицуВнешнихЛиний".

При поступлении входящего звонка нам известен "DID" номер и "номер клиента".

Метод "searchCrmEntities" всегда возвращает не более одного Лида. Потому необходимо выполнение дополнительного запроса по списку Лидов.

Поиск "сущности" (CONTACT / LEAD / COMPANY) сперва выполняется по Лидам. Затем по результату "searchCrmEntities".

Выполняется обход массивов сущностей. Выбирается первая сущность, которая соответствует текущему DID согласно "ТаблицуВнешнихЛиний", выбор выполняется по внутреннему номера ответственного за сущность сотрудника.

Пример: Вызов поступает на номер 74952293042, сотрудники этого отдела 233,101,304. В системе есть сущности:

В карточке клиента отобразится Лид №1

Вызов от нового клиента

Создается новый ЛИД. Без нового контакта. Запись разговора прикрепляется к Лиду.

Повторный вызов от клиента

Открывается окно с ссылкой на ранее созданный ЛИД Запись разговора прикрепляется к Лиду.

Вызов от клиента на другой номер компании

Создается новый ЛИД. Без нового контакта. Запись разговора прикрепляется к Лиду. Ответственным за новый лид по умолчанию назначается первый номер группы.

Повторный Вызов от клиента на другой номер компании

Открывается контакт без привязки к Лиду (от другой организации).

Вызов от нового клиента на неизвестный DID

Открывает последний ЛИД (первая сущность, что возвращается в searchCrmEntities).