В этой статье
Обзор
Настройка URL-адреса обратного вызова веб-перехватчика
dropdown icon
Конечные точки API партнера
    Конечная точка API согласования
    Конечная точка API записей
    Партнер reports/templates API

Подробные записи вызовов веб-перехватчика для вызовов Webex в Partner Hub

list-menuВ этой статье
list-menuОтправить обратную связь?

Партнеры Webex Calling с многопользовательской системой (MT) могут настроить веб-перехватчик для сбора записей Webex Calling для всех ваших клиентов. Это обеспечивает эффективную сверку счетов, аналитику и отчетность без необходимости опрашивать каждого клиента индивидуально.

Обзор

Веб-перехватчик подробных записей вызовов предлагает безопасное, масштабируемое и надежное решение, основанное на событиях, а не на запросах. Этот веб-перехватчик обеспечивает более полную прозрачность действий ваших клиентов в системе Webex Calling, поддерживая различные варианты использования — от выставления счетов до создания индивидуально настроенных отчетов.

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

Для ознакомления с вебхуком и сопутствующими ему API посмотрите этот видеокаст: API подробной истории вызовов партнера по вызову Webex.

Что обеспечивает партнерский вебхук

Веб-перехватчик отправляет подробные записи истории вызовов каждые 5 минут. Каждая полезная нагрузка веб-перехватчика содержит:

  • Записи звонков, которые закончились от 10 до 5 минут до текущего времени.
  • Любые поздние записи, обработанные облаком Webex Calling.
  • Автоматически заполняет записи поздних вызовов в последующих полезных нагрузках веб-перехватчика для обеспечения надежной доставки.

Чтобы показать, как записи вызовов включаются в каждую полезную нагрузку, рассмотрим следующий пример:

  • Полезная нагрузка получена в 14:05 содержит звонки, которые закончились между 13:55 и 14:00.
  • Звонки, заканчивающиеся между 14:00 и 14:05 включены в 14:10 полезная нагрузка.
  • Записи, завершенные ранее (например, звонок, который закончился в 14:04) но обрабатываются поздно облаком Webex Calling (например, в 14:11) включены в следующую запланированную полезную нагрузку (например, 14:15).

Веб-перехватчики надежно доставляют записи. Однако вы можете получить дублирующие записи в последующих полезных нагрузках веб-перехватчика, когда система воспроизводит записи при определенных условиях. Вы несете ответственность за устранение дубликатов записей. Чтобы определить дубликаты записей, используйте поле reportId в качестве первичного ключа и поле reportTime для определения времени завершения или обработки вызова. Используйте эти поля для обновления или вставки записей во внутренние хранилища данных.

Webhook в Parter Hub

Предоставляя веб-хук, вы позволяете аналитической платформе отправлять записи вызовов на ваш URL-адрес обратного вызова всякий раз, когда они генерируются.

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

  • Аналитика — включает все записи вызовов для всех организаций-клиентов, с которыми у партнера есть отношения Webex Calling. Сюда входят организации, где:
    • Партнер управляет организацией клиента, выполняя роль полноправного администратора партнера.
    • У организации-клиента имеется активная подписка на Webex Calling в организации-партнере.
  • Выставление счетов — включает записи вызовов, совершенных пользователями с лицензией Webex Calling, проданной и предоставленной партнером. В этот канал включены записи вызовов для Workspaces.

Доступ и конфиденциальность данных

Доступ к записям о вызовах (CDR) для выставления счетов имеет только партнер-владелец.

  • Партнер (или субпартнер), который управляет лицензией, связанной с записью вызова, становится партнером-владельцем.
  • Право собственности определяется: ID пользователя > Идентификатор лицензии > Идентификатор подписки > Идентификатор партнера.
  • Каждый CDR доступен одному партнеру.
  • Некоторые записи вызовов не сопоставляются с партнером по выставлению счетов, и не все партнеры, связанные с организацией, получают равный доступ ко всем записям, поскольку эти записи могут содержать персональные данные (PII).

Настройка URL-адреса обратного вызова веб-перехватчика

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

Убедитесь, что у вас есть роль полного администратора партнера с «доступом на уровне полного администратора организации» и доступ к API Webex Calling CDR проверен в Control Hub (в разделе Управление > Пользователи, выберите полного администратора или партнера с полными правами администратора, а затем выберите Роли администратора > Партнер).

Снимок экрана, на котором показаны настройки ролей администратора с выбранными правами администратора-партнера и полного администратора-партнера, а также проверенным доступом к API Webex Calling CDR в разделе «Функциональные настройки».

1

Войдите в Partner Hub.

2

Перейти к Настройки организации > Записи детализации вызовов.

Снимок экрана настроек организации для записей о вызовах, на котором отображаются поля для URL-адреса веб-перехватчика, секретного токена и типа ресурса с выбранной аналитикой.
3

Введите URL-адрес для использования в разделе Webhook.

URL должен заканчиваться на /webhook (например, https://yourdomain.com/webhook).
4

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

5

Выберите один из следующих типов ресурсов для использования для веб-перехватчика:

  • Аналитика— включает все записи вызовов для всех организаций-клиентов, с которыми у партнера есть отношения Webex Calling.
  • Выставление счетов— включает записи вызовов для пользователей, которым партнер продал лицензии Webex Calling. В этот канал включены записи вызовов для Workspaces.

Конечные точки API партнера

Помимо веб-перехватчика, Webex Calling предоставляет конечные точки API для поддержки согласования данных. Эти конечные точки позволяют вам догнать или согласовать ваши хранилища данных с любыми отсутствующими записями, которые ваш прослушиватель веб-перехватчиков мог не получить. Две конечные точки API — это API сверки и API записей.

Записи этих API доступны в течение 30 дней. Чтобы гарантировать получение всех ожидаемых записей, мы рекомендуем периодически проводить сверку ваших хранилищ записей, например, каждые 12 или 24 часа.

Для доступа к этим API необходимо использовать токен доступа партнера. Получите и управляйте своим партнерским токеном доступа в соответствии со стандартными правилами управления токенами доступа разработчика Webex.

Диапазоны окон API применимы к обеим конечным точкам для лучшей обработки нагрузки служб.

  • Для временных диапазонов, превышающих 48 часов, максимально допустимая продолжительность окна составляет 12 часов (рекомендуется и соблюдается).
  • Для диапазонов времени 48 часов или меньше максимально допустимая продолжительность окна составляет 48 часов (не рекомендуется; эта опция будет устарела с 30 января 2026 года).
  • Для идентификатора партнерской организации API-интерфейсы ограничены по частоте одним первоначальным запросом API в минуту на область действия токена. Если используется пагинация, допускается до 10 дополнительных постраничных запросов API в минуту на токен, и они могут быть сделаны сразу после первоначального запроса.

Конечная точка API согласования

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

Если вы управляете более чем 200 организациями-клиентами, API разбивает результаты на страницы для улучшения читабельности.

URL-адрес конечной точки API согласования использует следующий формат:

https://analytics-calling.webexapis.com/v1/partners/cdrcountbyorg?endTime=YYYY-MM-DDTHH:MM:SS.000Z&startTime=YYYY-MM-DDTHH:MM:SS.000Z

Параметры API

Вы можете использовать API для получения записей вызовов за последние 30 дней. Выбранное вами временное окно должно начинаться как минимум за 5 минут до текущего времени UTC и не может превышать 12 часов между временем начала и окончания в одном вызове API.

Параметры API:

  • startTime (обязательно, строка) — начальная дата и время (UTC) для первой записи, которую вы хотите собрать. Убедитесь, что:
    • Время форматируется как YYYY-MM-DDTHH:MM:SS.mmmZ. Например, 2025-08-15T06:00:00.000Z.
    • Дата и время начала не должны быть старше 30 дней от текущего времени UTC.
    • Окно между startTime и endTime не может превышать 12 часов.
  • endTime (обязательно, строка) — конечная дата и время (UTC) для записей, которые вы хотите собрать. Записи ведутся на основе времени отчета, то есть времени завершения вызова. Убедитесь, что:
    • Время форматируется как YYYY-MM-DDTHH:MM:SS.mmmZ. Например, 2025-08-15T18:00:00.000Z.
    • Дата и время окончания должны быть на 5 минут раньше текущего времени UTC и не старше 30 дней.
    • Дата и время окончания должны быть больше startTime.
    • Окно между startTime и endTime не может превышать 12 часов.

Пример ответа JSON конечной точки API согласования:


          {
          "cdr_counts": [
          {
          "orgId": "zzzzzzzz-yyyy-zzzz-xxxx-yyyyyyyyyyyy",
          "count": 3009
          },
          {
          "orgId": "yyyyyyyy-yyyy-zzzz-xxxx-yyyyyyyyyyyy",
          "count": 129
          },
          {
          "orgId": "xxxxxxxx-yyyy-zzzz-xxxx-yyyyyyyyyyyy",
          "count": 27895
          }
          ]
          }          
        

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

  • количество страниц: Общее количество страниц (например, 2)
  • total-orgs: Общее количество организаций, включенных в ответ (например, 283)
  • текущая страница: Номер текущей страницы (например, 1)

Например, если заголовки показывают num-pages=2, total-orgs=283, и current-page=1, Вы просматриваете первую страницу двухстраничного ответа, содержащего в общей сложности 283 организации. Чтобы перейти на следующую страницу, добавьте page=2 параметр вашего GET-запроса, как показано ниже:

https://analytics-calling.webexapis.com/v1/partners/cdrcountbyorg?endTime=YYYY-MM-DDTHH:MM:SS.000Z&startTime=YYYY-MM-DDTHH:MM:SS.000Z&page=2

Конечная точка API записей

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

API записей возвращает записи вызовов в формате JSON, идентичном формату, описанному в API подробной истории вызовов. Возвращаемая полезная нагрузка содержит поля, идентичные возвращаемой полезной нагрузке подробной истории вызовов. Дополнительную информацию о полях и их значениях см. в разделе Подробный отчет об истории вызовов Webex Calling.

API предоставляет записи вызовов, которые завершились за 5 минут до текущего времени. Чтобы гарантировать доступность всех записей вызовов, мы рекомендуем отправлять запросы к API через час после выбранного вами временного окна.

URL-адрес конечной точки API записей использует следующий формат:

https://analytics-calling.webexapis.com/v1/partners/cdrsbyorg?orgId=zzzzzzzz-yyyy-zzzz-xxxx-yyyyyyyyyyyy&endTime=YYYY-MM-DDTHH:MM:SS.000Z&startTime=YYYY-MM-DDTHH:MM:SS.000Z

Параметры API

  • OrgID (обязательно, строка) — идентификатор организации, для которой вы хотите получить записи. Идентификаторы организаций можно получить из API сверки.
  • startTime (обязательно, строка) — начальная дата и время (UTC) для первой записи, которую вы хотите собрать. Убедитесь, что:
    • Время форматируется как YYYY-MM-DDTHH:MM:SS.mmmZ. Например, 2025-08-15T06:00:00.000Z.
    • Дата и время начала не должны быть старше 30 дней от текущего времени UTC.
    • Интервал между startTime и endTime не должен превышать 12 часов в одном запросе API.
  • endTime (обязательно, строка) — конечная дата и время (UTC) для последней записи, которую вы хотите собрать. Записи ведутся на основе времени отчета, то есть времени завершения вызова. Убедитесь, что:
    • Время форматируется как YYYY-MM-DDTHH:MM:SS.mmmZ. Например, 2025-08-15T18:00:00.000Z.
    • Дата и время окончания должны быть не менее чем на 5 минут раньше текущего времени UTC и не старше 30 дней.
    • Дата и время окончания должны быть больше startTime.
    • Интервал между startTime и endTime не должен превышать 12 часов в одном запросе API.
  • Макс. (необязательно, число) — ограничивает максимальное количество записей на странице в ответе. Убедитесь, что:
    • Диапазон — от 500 до 5000. Значение по умолчанию — 5000. Например, Max=1000.
    • Если API возвращает больше записей, чем указано в максимальном значении, то ответ разбивается на страницы.
    • Если указано значение ниже 500, оно автоматически увеличивается до 500. Если указано значение выше 5000, оно корректируется до 5000.

Разбивка на страницы

Чтобы определить, разбиваются ли ответы API на страницы, проверьте заголовки ответов на наличие заголовка Link. Если в заголовке Link присутствует ссылка next, извлеките ее и используйте значение startTimeForNextFetch для запроса следующего набора записей. Если следующей ссылки нет, то собираются все отчеты за выбранный временной диапазон.

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

Например, если первоначальный запрос API:

https://analytics-calling.webexapis.com/v1/partners/cdrsbyorg?orgId=zzzzzzzz-yyyy-zzzz-xxxx-yyyyyyyyyyyy&endTime=2025-08-15T18:00:00.000Z&startTime=2025-08-15T06:00:00.000Z&Max=5000

то заголовок Link в ответе будет следующим:

; rel="next"

Другие возможные значения ссылки включают rel="first" и rel="prev" для первой и предыдущей страниц соответственно.

Пагинация для этого API соответствует стандарту RFC5988 (веб-ссылки). Для получения дополнительной информации см. Основы REST API.

Партнер reports/templates API

Вы можете создавать и загружать отчеты, доступные в Partner Hub, используя API отчетов партнеров. Для получения более подробной информации см. партнера report/templates.

Партнеры также могут получать доступ и загружать многочисленные отчеты непосредственно из Partner Hub. Для получения дополнительной информации см. Отчеты Partner Hub.

Была ли статья полезной?
Была ли статья полезной?