Дополнительные действия
AZykov (обсуждение | вклад) Новая страница: « Предыдущая статья курса: ''Задание 5. Сложная карточка'' = Общая информация = = Хранение информации о звонке в данных класса = = Функционал Click-To-Call = = Передача данных о звонке из сценариев IVR = Следующая статья курса: ''Задание 6. Интеграция звонков в ка...» |
AZykov (обсуждение | вклад) Нет описания правки |
||
Строка 2: | Строка 2: | ||
= Общая информация = | = Общая информация = | ||
Для обеспечения работы со звонками в приложениях, платформа эра предоставляет набор широкий функционала: | |||
* Тип данных '''RecordingInfo''' для хранения информации о записи звонка | |||
* Метод '''playRecordedFile''' для воспроизведения записи | |||
* Функционал карточки очереди для передачи данных из контекста звонка в контекст приложения | |||
* Функционал IVR-сценариев для построения логики работы вызовов | |||
* Тип данных '''PhoneNumber''' для осуществления звонков по клику на номер телефона | |||
В рамках данной статьи, рассматриваются все дейтсвия, необходимые для полноценной интеграции звонок в приложение. | |||
= Хранение информации о звонке в данных класса = | = Хранение информации о звонке в данных класса = | ||
В первую очередь, для начала работы с записью разговора необходимо в какой-либо из классов (наиболее подходящий по смыслу), добавить свойство для хранения информации о ней. | |||
Для хранения информации о записи разговора, используется специализированный тип данных, входящий в пакет callcenter: | |||
callcenter/ccs/RecordInfo | |||
Обычно, привязка записей разговора осуществляется к специально созданному классу '''Звонки''', объекты которого уже имеют связи с другими классами приложения. | |||
Таким образом, запись будет доступна и в реестре всех звонков, и в карточке звонка, и в реестре звонков, связанных с другим классом (например звонки по конкретной заявке). | |||
В примерах далее, будем считать что в класс Call было добавлено свойство recordInfo. | |||
= Воспроизведение записи звонка в интерфейсе = | |||
[[Файл:Вкладка Actions.png|мини|Вкладка Actions]] | |||
Для того, чтобы была возможность прослушивания записи, необходимо в класс Call добавить дейтсвие по прослушиванию. | |||
Ранее в курсе ещё не использовались действия, так как они подразумевают написание полноценного кода для обработки, однако в данном примере достаточно лишь скопировать уже готовый код. Более подробно, механизм дейтсвий будет рассмотрен в дальнейших частях курса. | |||
[[Файл:Действие playRecorded.png|мини|Действие playRecorded]] | |||
Для добавления нового действия, необходимо в редакторе класса перейти во вкладку Actions и добавить новую запись. | |||
Имя действия (name) можно указать произвольное, например playRecorded, заголовок (Caption) - просшулать, actionKind - client, actionTarget - entity | |||
Таким образом мы создаем действие, которое будет выполняться на клиентской стороне и по отношению к конкретному объекту (при открытой карточке или выделенной записи в таблице). | |||
= | В качестве кода действия, необходимо указать следующий:<syntaxhighlight lang="javascript"> | ||
this._eraEnvironment.getStrong('EraGlobal').playRecordedFile(this.recordInfo); | |||
</syntaxhighlight>В данном коде происходит получение глобального контекста и вызов метода playRecordedFile, с передачей в него данных о сохраненной записи разговора. | |||
В качестве кода проверки доступности (allowConditionCode), необходимо указать следующий:<syntaxhighlight lang="javascript"> | |||
!Converter.isNull(this.recordInfo): | |||
</syntaxhighlight>Этим кодом мы проверяем, что информация о записи разговора сохранена. Таким образом, для звонков у которых ещё нет записи разговора, действие прослушки будет недоступно. | |||
= Передача данных о звонке из сценариев IVR = | = Передача данных о звонке из сценариев IVR = | ||
= Функционал Click-To-Call = | |||
Следующая статья курса: ''[[Задание 6. Интеграция звонков в карточку]]'' | Следующая статья курса: ''[[Задание 6. Интеграция звонков в карточку]]'' | ||
Предыдущая статья курса: ''[[Задание 5. Сложная карточка]]'' | Предыдущая статья курса: ''[[Задание 5. Сложная карточка]]'' |
Версия от 13:28, 10 февраля 2025
Предыдущая статья курса: Задание 5. Сложная карточка
Общая информация
Для обеспечения работы со звонками в приложениях, платформа эра предоставляет набор широкий функционала:
- Тип данных RecordingInfo для хранения информации о записи звонка
- Метод playRecordedFile для воспроизведения записи
- Функционал карточки очереди для передачи данных из контекста звонка в контекст приложения
- Функционал IVR-сценариев для построения логики работы вызовов
- Тип данных PhoneNumber для осуществления звонков по клику на номер телефона
В рамках данной статьи, рассматриваются все дейтсвия, необходимые для полноценной интеграции звонок в приложение.
Хранение информации о звонке в данных класса
В первую очередь, для начала работы с записью разговора необходимо в какой-либо из классов (наиболее подходящий по смыслу), добавить свойство для хранения информации о ней.
Для хранения информации о записи разговора, используется специализированный тип данных, входящий в пакет callcenter:
callcenter/ccs/RecordInfo
Обычно, привязка записей разговора осуществляется к специально созданному классу Звонки, объекты которого уже имеют связи с другими классами приложения.
Таким образом, запись будет доступна и в реестре всех звонков, и в карточке звонка, и в реестре звонков, связанных с другим классом (например звонки по конкретной заявке).
В примерах далее, будем считать что в класс Call было добавлено свойство recordInfo.
Воспроизведение записи звонка в интерфейсе

Для того, чтобы была возможность прослушивания записи, необходимо в класс Call добавить дейтсвие по прослушиванию.
Ранее в курсе ещё не использовались действия, так как они подразумевают написание полноценного кода для обработки, однако в данном примере достаточно лишь скопировать уже готовый код. Более подробно, механизм дейтсвий будет рассмотрен в дальнейших частях курса.

Для добавления нового действия, необходимо в редакторе класса перейти во вкладку Actions и добавить новую запись.
Имя действия (name) можно указать произвольное, например playRecorded, заголовок (Caption) - просшулать, actionKind - client, actionTarget - entity
Таким образом мы создаем действие, которое будет выполняться на клиентской стороне и по отношению к конкретному объекту (при открытой карточке или выделенной записи в таблице).
В качестве кода действия, необходимо указать следующий:
this._eraEnvironment.getStrong('EraGlobal').playRecordedFile(this.recordInfo);
В данном коде происходит получение глобального контекста и вызов метода playRecordedFile, с передачей в него данных о сохраненной записи разговора. В качестве кода проверки доступности (allowConditionCode), необходимо указать следующий:
!Converter.isNull(this.recordInfo):
Этим кодом мы проверяем, что информация о записи разговора сохранена. Таким образом, для звонков у которых ещё нет записи разговора, действие прослушки будет недоступно.
Передача данных о звонке из сценариев IVR
Функционал Click-To-Call
Следующая статья курса: Задание 6. Интеграция звонков в карточку
Предыдущая статья курса: Задание 5. Сложная карточка