Улучшение качества звонков и управление ими
В этой статье представлены ключевые инструменты, которые можно использовать для мониторинга, устранения неполадок и улучшения качества звонков в Службы коммуникации Azure. Следующие материалы помогут вам спланировать лучший пользовательский интерфейс.
Прежде чем прочитать эту статью, ознакомьтесь с общими сведениями о вызове:
- Голосовой и видеозвонок: обзор пакета SDK для звонков Службы коммуникации Azure
- Телефонные звонки: основные понятия интеграции с телефонной сетью (ТСОП)
Подготовка сети и приоритет важного сетевого трафика с помощью QoS
По мере того как пользователи начинают использовать Службы коммуникации Azure для звонков и собраний, они могут столкнуться с голосовой связью звонящего или вырезать или выйти из звонка или собрания. Общее видео может заморозить или пиксельно или завершиться сбоем. Эта проблема связана с IP-пакетами, представляющими голосовый и видео-трафик, сталкивающийся с перегрузкой сети и поступающим из последовательности или нет вообще. Если это происходит (или, чтобы предотвратить его в первую очередь), используйте качество обслуживания (QoS), следуя рекомендациям по сети.
При использовании QoS приоритет трафика с учетом задержки (например, голосовых или видеопотоков). Вы можете разрешить этот трафик "сократить линию" перед трафиком, который меньше учитывается. Примером более низкого приоритета трафика является скачивание нового приложения. В этом случае дополнительная секунда для скачивания не является значительной проблемой.
QoS определяет и помечает все пакеты в потоках в режиме реального времени с помощью объектов групповой политики Windows и функции маршрутизации с именем "Списки на контроль доступа основе портов". Эта функция предписывает вашей сети предоставлять голосовую связь, видео и экран, предоставляя доступ к собственной выделенной пропускной способности сети.
В идеале вы реализуете QoS в внутренней сети при подготовке к развертыванию решения Службы коммуникации Azure. Но вы можете сделать это в любое время. Если сеть достаточно мала, возможно, вам не потребуется QoS.
Подробные инструкции см. в разделе "Оптимизация сети".
Подготовка развертывания к исследованиям качества и надежности
Качество имеет различные определения в зависимости от варианта использования связи в режиме реального времени и перспективы пользователей. Многие переменные влияют на предполагаемое качество вызова в режиме реального времени. Улучшение одной переменной может привести к отрицательному изменению другой переменной. Например, увеличение частоты кадров и разрешение видеозвонка увеличивает использование пропускной способности сети и мощность обработки.
Определите варианты использования и требования клиента перед началом разработки. Например, клиенту, который должен отслеживать десятки веб-каналов камеры безопасности одновременно, может не потребоваться максимальное разрешение и частота кадров, которые может предоставлять каждый видеопоток. В этом сценарии можно использовать API ограничений видео, чтобы ограничить объем пропускной способности, используемой каждым видеопотоком.
Реализация ведения журнала на собственных платформах
Реализация ведения журнала, как описано в руководстве по получению файлов журналов, важна для сбора сведений о собственной разработке. Подробные журналы помогают диагностировать проблемы, связанные с моделями устройств или версиями ОС. Мы рекомендуем разработчикам начать настройку API журналов, чтобы получить сведения о времени существования вызова.
Реализация существующих возможностей качества и надежности перед развертыванием
Мы рекомендуем использовать эти простые в реализации примеры звонков, так как они уже оптимизированы для предоставления пользователям оптимального качества звонков.
Если примеры не соответствуют вашим потребностям и вы решили настроить решение для вызова Службы коммуникации Azure, реализуйте следующие возможности для поддержки высококачественного интерфейса звонков. Средства для этих возможностей помогают предотвратить распространенные проблемы с качеством и надежностью при возникновении и диагностике проблем. Помните, что некоторые данные вызова не создаются или хранятся, если вы не реализуете эти возможности.
В следующих разделах подробно описаны средства для реализации на этапах вызова:
- Перед вызовом: готовность перед вызовом.
- Во время звонка: взаимодействие с вызовом.
- После вызова: мониторинг и устранение неполадок качества и надежности звонков.
Перед вызовом
Используя предварительные проверки, предоставляемые Службы коммуникации Azure, вы можете узнать состояние подключения пользователя перед вызовом и предпринять упреждающие действия от их имени. Например, если вы узнаете, что подключение пользователя плохое, вы можете предложить отключить видео, прежде чем присоединиться к вызову, чтобы иметь лучшее аудиосоединении.
Средство диагностики сети
Средство диагностики сети предоставляет размещенный интерфейс для разработчиков для проверки готовности вызовов во время разработки. Вы можете проверить, являются ли устройства пользователя и сетевые условия оптимальными для подключения к службе, чтобы обеспечить отличный интерфейс звонков. Средство выполняет диагностика в сети, устройствах и качестве звонков.
Используя средство диагностики сети, вы можете поощрять пользователей устранять проблемы надежности и улучшать сетевое подключение перед присоединением к вызову.
Дополнительные сведения см. в разделе "Средство диагностики сети".
API предварительного вызова для диагностика
Возможно, вы хотите создать собственное средство диагностики или выполнить более глубокую интеграцию средства диагностики сети с приложением. В этом случае можно использовать API предварительного вызова для запуска средства диагностики для пакета SDK для вызова.
API предварительного вызова позволяет настроить интерфейс в пользовательском интерфейсе. Затем можно выполнить тот же ряд тестов, что средство диагностики сети использует для обеспечения совместимости, подключения и разрешений устройства с помощью тестового вызова. Вы можете выбрать лучший способ сообщить пользователям, как исправить проблемы перед началом вызовов. При устранении неполадок с качеством и надежностью можно также выполнять определенные проверки.
Например, если у тестового оборудования пользователя возникла проблема, вы можете уведомить пользователя об управлении ожиданиями и изменениями для будущих вызовов.
Дополнительные сведения см. в разделе диагностики предварительного вызова.
Конфликтующие клиенты звонков
Так как Службы коммуникации Azure голосовых и видеозвонков, выполняемых в веб-браузерах и мобильных браузерах, у пользователей может быть несколько вкладок браузера, на которых выполняются отдельные экземпляры пакета SDK для вызовов Службы коммуникации Azure. Эта ситуация может произойти по различным причинам, как и в следующих примерах:
- Пользователь забыл закрыть предыдущую вкладку.
- Пользователь не мог присоединиться к вызову без присутствующих организатора собрания. Пользователь повторно презрит, чтобы выбрать ссылку для присоединения к собранию, которая открывает отдельную вкладку мобильного браузера.
Наличие нескольких вкладок браузера вызовов одновременно приводит к сбоям в поведении звука и видео при вызове, к которому пользователь пытается присоединиться (то есть целевой вызов). Необходимо убедиться, что несколько вкладок браузера не открываются перед началом вызова и (с помощью мониторинга) во время всего жизненного цикла вызова. Вы можете заранее уведомить клиентов о закрытии своих лишних вкладок или помочь им правильно присоединиться к вызову с полезными сообщениями, если они изначально не могут присоединиться к вызову.
Чтобы проверить, имеет ли пользователь несколько экземпляров Службы коммуникации Azure запущен в браузере, см. статью "Как определить, активно ли приложение с помощью пакета SDK Службы коммуникации Azure" на нескольких вкладках браузера.
Во время вызова
Во время вызова сетевые условия пользователя могут ухудшаться, или они могут столкнуться с проблемами надежности и совместимости. Эти ситуации могут привести к плохому вызову. В следующих разделах вы можете применить возможности для управления проблемами в вызове и связи с пользователями.
Диагностика для пользователей
Когда пользователь находится в вызове, важно уведомить их в режиме реального времени о проблемах при вызове. Функция диагностики для пользователей предоставляет флаги в режиме реального времени для проблем, влияющих на пользователя, таких как отключение микрофона во время разговора или плохого качества сети.
Вы можете настроить сообщения пользовательского интерфейса в соответствии с вашими сценариями. Например:
- Если флаг идентифицирует сетевую проблему, вы можете предложить пользователям отключить видео, изменить сети или перейти в расположение с лучшим состоянием сети или подключением.
- Если флаг идентифицирует проблему с устройством, вы можете подталкивать пользователя к переключениям устройств.
Помимо обмена сообщениями, вы можете действовать от имени пользователей и рассмотреть упреждающие подходы к защите ограниченной пропускной способности, которую имеет пользователь. Если вы обнаружите, что пользователи не последовательно отключают свое видео после получения уведомления от вас, вы можете заранее отключить видео пользователя, чтобы определить приоритеты подключения к звуку. Вы даже можете скрыть возможность видео от клиентов в пользовательском интерфейсе перед присоединением к вызову.
Дополнительные сведения см. в разделе "Диагностика для пользователей".
Ограничения видео
Видеопотоки используют большие объемы пропускной способности сети. Если вы знаете, что у пользователей ограничена пропускная способность сети или плохие сетевые условия, вы можете управлять сетевым подключением к видеосвязи пользователя с помощью ограничений видео. При ограничении объема пропускной способности, которую может использовать видеопоток пользователя, можно защитить пропускную способность, необходимую для хорошего качества звука в плохих сетевых средах.
Дополнительные сведения см. в разделе "Ограничения видео".
Индикатор тома
Иногда пользователи не могут слышать друг друга. Может быть, динамик слишком тих, устройство прослушивателя не получает звуковые пакеты, или проблема звукового устройства блокирует звук. Пользователи не знают, когда другой человек не может слышать их. Для этого можно использовать индикатор ввода и вывода:
- Укажите, является ли объем пользователя низким или отсутствующим.
- Предложите пользователю говорить громко или изучить проблему звукового устройства с помощью пользовательского интерфейса.
Дополнительные сведения см. в кратком руководстве по добавлению индикатора тома в веб-вызовы.
Статистика качества мультимедиа
Так как сетевые условия могут изменяться во время звонка, пользователи могут сообщать о плохом качестве звука и видео, даже если они начали звонок без каких-либо проблем. Функция статистики качества мультимедиа предоставляет подробные метрики качества для каждого входящего и исходящего аудио, видео и потока общего доступа к экрану. Эти подробные аналитические сведения помогают отслеживать вызовы, показывать пользователям состояние качества сети во время вызова и отладку отдельных вызовов.
Метрики этой функции помогают указать проблемы в потоках мультимедиа пакета SDK клиента Службы коммуникации Azure для отправки и получения. Например, вы можете активно отслеживать значение исходящего видеопотока availableBitrate
, заметить постоянное падение ниже рекомендуемого 1,5 Мбит/с и уведомить пользователя о том, что качество видео ухудшается.
Данные журнала сервера предоставляют только общую сводку по вызову после завершения. Подробная статистика мультимедиа предоставляет низкоуровневые метрики на протяжении всего времени вызова, а затем для более глубокого анализа.
Дополнительные сведения см. в разделе статистики качества мультимедиа.
API оптимального количества видео
Во время группового вызова с двумя или более участниками качество видео пользователя может меняться из-за изменений в условиях сети и их конкретных ограничений оборудования. Используя API оптимального количества видео, вы можете улучшить качество вызова пользователя, понимая, сколько видеопотоков их локальная конечная точка может отображаться за раз без ухудшения качества.
Реализуя эту функцию, вы можете сохранить качество вызова и пропускную способность локальных конечных точек, которые в противном случае попытались бы плохо отображать видео. API предоставляет свойство optimalVideoCount
, которое динамически изменяется в ответ на возможности сети и оборудования локальной конечной точки. Эта информация доступна во время выполнения и получает обновления во время вызова, поэтому вы можете настроить визуальный интерфейс пользователя в виде изменения сетевых и аппаратных условий.
Сведения о реализации этой функции см. в руководстве по управлению видео на веб-платформе во время звонков.
После вызова
Перед выпуском и масштабированием решения для вызова Службы коммуникации Azure реализуйте следующие возможности мониторинга для обеспечения качества и надежности, чтобы обеспечить сбор доступных журналов и метрик. Данные вызова не хранятся до тех пор, пока вы не реализуете возможности, поэтому вы не сможете отслеживать и отлаживать качество и надежность звонков без них.
Дополнительные сведения см. в Службы коммуникации Azure журналах голосовых звонков и видеозвонок.
Начало сбора журналов вызовов
Ознакомьтесь с этой документацией, чтобы начать сбор журналов вызовов. Включите журналы с помощью параметров диагностики в Azure Monitor.
Чтобы просмотреть и проанализировать данные в Azure Monitor, рекомендуется выбрать группу категорий allLogs и выбрать сведения о назначении отправки в рабочую область Log Analytics. Если у вас нет рабочей области Log Analytics для отправки данных, создайте ее.
Рекомендуется отслеживать использование данных и политики хранения по мере необходимости. Дополнительные сведения см. в разделе "Управление затратами".
Диагностика вызовов с помощью диагностики вызовов
Диагностика вызовов — это интерфейс Azure Monitor, который предоставляет специализированные аналитические сведения через специализированные страницы телеметрии и диагностики в портал Azure.
После начала хранения данных журнала в рабочей области Log Analytics можно визуализировать поиск отдельных вызовов и визуализировать данные в диагностике вызовов. В учетной записи Azure Monitor перейдите к ресурсу Службы коммуникации Azure и найдите диагностику вызовов в меню службы. Чтобы узнать, как лучше использовать эту возможность, см . статью "Диагностика вызовов".
Изучение качества звонков с помощью голосовой и видеоанализаторной информации
После включения журналов вы можете просмотреть аналитические сведения о вызовах в ресурсе Azure с помощью примеров визуализации в голосовой и видеоанализаторе.
Можно изменить существующие книги или даже создать собственные. Дополнительные сведения см. в статье Книги Azure.
Примеры более глубокого предлагаемого анализа см . в журналах вызовов запросов.
Анализ тональности пользователей с помощью опроса окончания звонка
Отзывы клиентов бесценны. В конце опроса звонков вы узнаете, как пользователи воспринимают общее качество и надежность решения для вызова JavaScript или веб-пакета SDK.
Вы можете изменить опрос в различных форматах, если у вас уже есть решение для опроса. После публикации данных опроса можно просмотреть результаты в Azure Monitor для анализа и улучшения. Службы коммуникации Azure также использует результаты API опроса для мониторинга и повышения качества вызовов и надежности.
Сведения о реализации функции см. в руководстве . Использование опроса по завершении вызова для сбора отзывов пользователей. После включения параметров диагностики для сбора данных опроса можно использовать примеры запросов журнала вызовов в Azure Log Analytics для анализа предполагаемого качества взаимодействия пользователя. Отзывы пользователей могут показать вам проблемы, которые вы не знаете, что у вас есть, и помочь вам определить приоритеты ваших улучшений качества.
Дополнительные сведения см. в разделе "Обзор завершения опроса звонков".
Анализ данных вызова непосредственно из клиента
Собирая данные о вызовах, такие как статистика мультимедиа, диагностика пользователей и сведения API предварительного вызова, вы можете просматривать вызовы низкого качества для проведения анализа первопричин при устранении неполадок.
Например, у пользователя может быть часовый звонок и сообщить о плохом звуке в одной точке звонка. Возможно, вызов вызвал флаг диагностики для пользователя, указывающий на серьезную проблему с качеством входящего или исходящего потока мультимедиа.
Сохраняя подробную статистику мультимедиа из вызова, вы можете просмотреть, когда флаг диагностики для пользователя произошел, чтобы узнать, был ли высокий уровень потери пакетов, jitter или задержки в течение этого времени указывает на плохое состояние сети. Например, можно изучить, затронута ли сеть неуправляемой сетью внешнего клиента, ненужным сетевым трафиком из-за неправильных политик приоритета сети QoS или ненужных виртуальных частных сетей (VPN).
Примечание.
Как правило, рекомендуется приоритизовать пропускную способность звукового подключения пользователя перед подключением к видео. Перед другим сетевым трафиком рекомендуется приоритизировать как аудио, так и видео. Если сеть не может поддерживать аудио и видео, вы можете заранее отключить видео пользователя или отключить его.
Запрос поддержки
Если вы столкнулись с проблемами качества или надежности, которые не удается устранить, отправьте запрос на техническую поддержку. Чем больше информации вы можете указать в запросе, тем лучше. (Собственные журналы важны для оптимизации времени отклика.) Однако вы по-прежнему можете отправлять запросы с частичными сведениями, чтобы начать расследование. Дополнительные сведения см. в статье Создание запроса на поддержку для Azure.
Если вы уведомляете о требованиях к лицензии при попытке запросить техническую поддержку, вам может потребоваться выбрать платный поддержка Azure план, который лучше всего соответствует вашим потребностям. См. статью "Сравнение планов поддержки".
Если вы предпочитаете не приобретать поддержку, вы можете воспользоваться поддержкой сообщества. См . раздел поддержки сообщества Azure.
Другие вопросы
Если у вас нет доступа к портал Azure клиента для просмотра данных, привязанных к идентификатору ресурса Azure, вы можете запросить запросы к рабочим областям, чтобы повысить качество от их имени. Дополнительные сведения см. в статье "Запрос данных" в рабочих областях, приложениях и ресурсах Log Analytics в Azure Monitor.
Связанный контент
- Узнайте о других рекомендациях: рекомендации по Службы коммуникации Azure вызова пакетов SDK.
- Изучите известные проблемы: известные проблемы в пакетах SDK и API.
- Узнайте, как отлаживать вызовы: диагностика вызовов.
- Узнайте, как использовать рабочую область Log Analytics: руководство по Log Analytics.
- Создайте собственные запросы: начало работы с запросами журнала в Azure Monitor.