W tym artykule
Omówienie
Konfigurowanie adresu URL wywołania zwrotnego elementu webhook
dropdown icon
Punkty końcowe interfejsu API partnera
    Punkt końcowy interfejsu API uzgadniania
    Punkt końcowy interfejsu API rekordów
    Partner reports/templates API

Szczegółowy rejestr połączeń, webhook dla Webex Calling w Partner Hub

list-menuW tym artykule
list-menuOpinia?

Partnerzy usługi Webex Calling multi-tenant (MT) mogą skonfigurować webhook w celu gromadzenia rekordów usługi Webex Calling dla wszystkich klientów. Umożliwia to efektywne uzgadnianie rozliczeń, przeprowadzanie analiz i raportowanie bez konieczności wysyłania zapytań do każdego klienta osobno.

Przegląd

Webhook Detailed Call Records oferuje bezpieczne, skalowalne i niezawodne rozwiązanie oparte na zdarzeniach, a nie na żądaniach. Ten webhook zapewnia lepszy wgląd w działania klientów w ramach usługi Webex Calling, obsługując przypadki użycia od rozliczeń po niestandardowe raporty.

Za pomocą tego webhooka możesz wygodnie zbierać dane o wszystkich klientach zarządzanych za pośrednictwem Partner Hub, bez konieczności wysyłania zapytań do każdego klienta z osobna. Ten webhook umożliwia tworzenie niestandardowych aplikacji do raportowania, fakturowania i analiz zarówno na potrzeby wewnętrznych potrzeb biznesowych, jak i usług o wartości dodanej.

Aby zapoznać się ze wstępem do webhooka i towarzyszących mu interfejsów API, obejrzyj ten Vidcast: Szczegółowa historia połączeń API Webex Calling Partner.

Co oferuje webhook partnerski

Webhook co 5 minut dostarcza szczegółowe zapisy historii połączeń. Każdy ładunek webhooka zawiera:

  • Rejestry połączeń zakończonych w okresie od 10 do 5 minut przed bieżącą godziną.
  • Wszelkie spóźnione rekordy przetworzone przez chmurę Webex Calling.
  • Automatycznie uzupełnia rejestry opóźnionych połączeń w kolejnych ładunkach webhook, aby zapewnić niezawodne dostarczanie danych.

Aby pokazać, w jaki sposób zapisy połączeń są uwzględniane w każdym ładunku, rozważmy następujący przykład:

  • Ładunek odebrany w 14:05 zawiera połączenia zakończone między 13:55 I 14:00.
  • Połączenia kończące się pomiędzy 14:00 I 14:05 są zawarte w 14:10 ładunek.
  • Rekordy ukończone wcześniej (na przykład połączenie zakończone o godzinie 14:04) ale przetwarzane późno przez chmurę Webex Calling (na przykład w 14:11) są uwzględniane w kolejnym zaplanowanym ładunku (na przykład, 14:15).

Webhooki niezawodnie dostarczają rekordy. Jednakże może się zdarzyć, że w kolejnych ładunkach webhooka pojawią się zduplikowane rekordy, gdy system będzie odtwarzał rekordy w określonych warunkach. Odpowiadasz za usuwanie duplikatów rekordów. Aby zidentyfikować zduplikowane rekordy, użyj pola reportId jako klucza podstawowego i pola reportTime, aby ustalić, kiedy połączenie zostało ukończone lub przetworzone. Użyj tych pól, aby zaktualizować rekordy lub wstawić je do wewnętrznych magazynów danych.

Webhook w Partner Hub

Udostępniając webhook, umożliwiasz platformie analitycznej wysyłanie rekordów połączeń na adres URL wywołania zwrotnego za każdym razem, gdy zostaną one wygenerowane.

Rekordy połączeń Webex są dostarczane w tym samym formacie, co istniejące interfejsy API szczegółowych rekordów połączeń. Możesz skonfigurować webhook i wybrać pomiędzy dwoma typami kanału:

  • Analityka — obejmuje wszystkie rejestry połączeń dla wszystkich organizacji klientów, z którymi partner ma relację Webex Calling. Dotyczy to organizacji, w których:
    • Partner zarządza organizacją klienta, pełniąc rolę pełnego administratora partnera.
    • Organizacja klienta ma aktywną subskrypcję usługi Webex Calling w ramach organizacji partnerskiej.
  • Rozliczenia — obejmują rejestry połączeń wykonanych przez użytkowników posiadających licencję Webex Calling sprzedaną i udostępnioną przez partnera. W tym kanale znajdują się zapisy połączeń dla obszarów roboczych.

Dostęp i prywatność danych

Dostęp do rejestru szczegółów połączeń (CDR) w celu wystawiania faktur jest możliwy wyłącznie dla wspólnika będącego właścicielem umowy.

  • Partner (lub podpartner), który zarządza licencją powiązaną z zapisem połączeń, staje się partnerem-właścicielem.
  • Własność określa się na podstawie: Identyfikator użytkownika > Identyfikator licencji > Identyfikator subskrypcji > Identyfikator partnera.
  • Każdy CDR jest dostępny dla jednego partnera.
  • Niektóre rejestry połączeń nie są przypisane do partnera rozliczeniowego, a nie wszyscy partnerzy związani z daną organizacją otrzymują równy dostęp do wszystkich rejestrów, ponieważ rejestry te mogą zawierać dane osobowe.

Konfigurowanie adresu URL wywołania zwrotnego elementu webhook

Skonfiguruj webhook w Partner Hub. Można skonfigurować tylko jeden webhook na organizację partnerską.

Upewnij się, że posiadasz pełną rolę administratora partnera z „pełnym dostępem administratora organizacji” i zaznaczoną opcję Dostęp do interfejsu API CDR połączeń Webex w Centrum sterowania (w obszarze Zarządzanie > Użytkownicy, wybierz pełnego administratora lub pełnego administratora partnera, a następnie wybierz Role administratora > Partner).

Zrzut ekranu przedstawiający ustawienia ról administratora z wybranymi rolami administratora partnera i pełnego administratora partnera, a także zaznaczoną opcją dostępu do interfejsu API Webex Calling CDR w ustawieniach funkcjonalnych.

1

Zaloguj się do Centrum partnerów.

2

Przejdź do Ustawienia organizacji > Szczegóły połączeń.

Zrzut ekranu ustawień organizacji dla rekordów szczegółów połączeń, wyświetlający pola dla adresu URL webhook, tajnego tokena i typu zasobu z wybraną opcją Analityka.
3

Wprowadź adres URL, którego chcesz użyć w polu Webhook.

Adres URL musi kończyć się na /webhook (Na przykład, https://yourdomain.com/webhook).
4

Jeśli chcesz uwierzytelniać ładunki webhooków za pomocą tajnego tokena, możesz go dodać. Aby uzyskać więcej informacji na temat webhooków i tajnych tokenów Webex, zapoznaj się z artykułem Webex dla programistów: Webhooki.

5

Wybierz jeden z następujących typów zasobu, którego chcesz użyć dla webhooka:

  • Analityka— obejmuje wszystkie zapisy połączeń dla wszystkich organizacji klientów, z którymi partner ma relację Webex Calling.
  • Rozliczenia— obejmuje zapisy połączeń użytkowników, którym partner sprzedał licencje na usługę Webex Calling. W tym kanale znajdują się zapisy połączeń dla obszarów roboczych.

Punkty końcowe interfejsu API partnera

Oprócz webhooka, Webex Calling udostępnia punkty końcowe API umożliwiające obsługę uzgadniania danych. Te punkty końcowe umożliwiają uzupełnienie lub uzgodnienie magazynów danych z wszelkimi brakującymi rekordami, których nasłuchiwacz webhook mógł nie otrzymać. Dwoma punktami końcowymi interfejsu API są API uzgadniania i API rekordów.

Rekordy z tych interfejsów API są dostępne przez 30 dni. Aby mieć pewność, że otrzymasz wszystkie oczekiwane płyty, zalecamy okresowe uzgadnianie stanów magazynowych płyt, np. co 12 lub 24 godziny.

Aby uzyskać dostęp do tych interfejsów API, musisz użyć tokena dostępu partnera. Uzyskaj i zarządzaj swoim tokenem dostępu partnera zgodnie ze standardowymi praktykami zarządzania tokenami dostępu programistów Webex.

Zakresy okien API mają zastosowanie do obu punktów końcowych, co pozwala lepiej obsługiwać obciążenie usług.

  • W przypadku zakresów czasowych dłuższych niż 48 godzin maksymalny dozwolony czas trwania okna wynosi 12 godzin (zalecane i egzekwowane).
  • W przypadku zakresów czasowych wynoszących 48 godzin lub mniej maksymalny dozwolony czas trwania okna wynosi 48 godzin (niezalecane; ta opcja zostanie wycofana od 30 stycznia 2026 r.).
  • W przypadku identyfikatora organizacji partnerskiej interfejsy API są ograniczone do jednego początkowego żądania API na minutę i na zakres tokena. Jeśli używana jest paginacja, dozwolonych jest maksymalnie 10 dodatkowych paginowanych żądań API na minutę na każdy token. Można je wysłać bezpośrednio po pierwotnym żądaniu.

Punkt końcowy interfejsu API uzgadniania

Punkt końcowy interfejsu API Reconciliation zwraca całkowitą liczbę rekordów połączeń wygenerowanych dla każdego klienta zarządzanego przez partnera w określonym przedziale czasu. Na podstawie tych danych możesz sprawdzić pamięć lokalną i zidentyfikować brakujące lub niespójne zapisy połączeń dla konkretnych klientów.

Jeśli zarządzasz ponad 200 organizacjami klientów, API dzieli wyniki na strony, aby zwiększyć ich czytelność.

Adres URL punktu końcowego interfejsu API Reconciliation używa następującego formatu:

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

Parametry API

Za pomocą interfejsu API możesz pobrać rejestr połączeń z ostatnich 30 dni. Wybrany przedział czasowy musi rozpoczynać się co najmniej 5 minut przed bieżącym czasem UTC i nie może przekraczać 12 godzin pomiędzy czasem początkowym i końcowym w ramach jednego wywołania API.

Parametry API to:

  • startTime (wymagany, ciąg) — data i godzina rozpoczęcia (UTC) pierwszego rekordu, który chcesz zebrać. Upewnij się, że:
    • Formatujesz czas jako YYYY-MM-DDTHH:MM:SS.mmmZ. Na przykład, 2025-08-15T06:00:00.000Z.
    • Data i godzina rozpoczęcia nie mogą być starsze niż 30 dni od bieżącego czasu UTC.
    • Okno pomiędzy startTime i endTime nie może przekraczać 12 godzin.
  • endTime (wymagany, ciąg) — data i godzina zakończenia (UTC) rekordów, które chcesz zebrać. Rekordy są liczone na podstawie czasu zgłoszenia, czyli czasu zakończenia połączenia. Upewnij się, że:
    • Formatujesz czas jako YYYY-MM-DDTHH:MM:SS.mmmZ. Na przykład, 2025-08-15T18:00:00.000Z.
    • Data i godzina zakończenia muszą być wcześniejsze niż 5 minut od bieżącego czasu UTC i nie starsze niż 30 dni.
    • Data i godzina zakończenia muszą być późniejsze niż startTime.
    • Okno pomiędzy startTime i endTime nie może przekraczać 12 godzin.

Przykład odpowiedzi JSON punktu końcowego interfejsu API uzgadniania:


          {
          "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
          }
          ]
          }          
        

Nagłówki odpowiedzi API wskazują całkowitą liczbę zwróconych organizacji i informują, czy dostępne są dodatkowe strony. Sprawdź następujące parametry nagłówka, aby mieć pewność, że przeszukano wszystkie strony:

  • liczba stron: Łączna liczba stron (na przykład 2)
  • total-organs: Łączna liczba organizacji uwzględnionych w odpowiedzi (na przykład 283)
  • bieżąca strona: Numer bieżącej strony (na przykład 1)

Na przykład, jeśli nagłówki pokazują num-pages=2, total-orgs=283, I current-page=1, przeglądasz pierwszą stronę dwustronicowej odpowiedzi zawierającej łącznie 283 organizacje. Aby uzyskać dostęp do następnej strony, dodaj page=2 parametr do żądania GET, jak pokazano poniżej:

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

Punkt końcowy interfejsu API rekordów

Punkt końcowy interfejsu API Records służy do wyszukiwania brakujących zapisów połączeń dla konkretnych organizacji, w których rozbieżności lub brakujące dane zostały zidentyfikowane za pomocą interfejsu API Reconciliation.

Interfejs API rekordów zwraca zapisy połączeń w formacie JSON, identycznym z formatem opisanym w Szczegółowym interfejsie API historii połączeń. Zwrócony ładunek zawiera identyczne pola, jak zwrócony ładunek Szczegółowej historii połączeń. Aby uzyskać więcej informacji o polach i ich wartościach, zobacz Raport szczegółowy historii połączeń Webex Calling.

API udostępnia rejestr połączeń zakończonych 5 minut przed bieżącą godziną. Aby mieć pewność, że wszystkie zapisy połączeń będą dostępne, zalecamy wysłanie zapytania do interfejsu API godzinę po preferowanym przedziale czasowym.

Adres URL punktu końcowego interfejsu API rekordów używa następującego formatu:

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

Parametry API

  • OrgID (wymagany, ciąg) — identyfikator organizacji, dla której chcesz pobrać rekordy. Identyfikatory organizacji można uzyskać z interfejsu API Reconciliation.
  • startTime (wymagany, ciąg) — data i godzina rozpoczęcia (UTC) pierwszego rekordu, który chcesz zebrać. Upewnij się, że:
    • Formatujesz czas jako YYYY-MM-DDTHH:MM:SS.mmmZ. Na przykład, 2025-08-15T06:00:00.000Z.
    • Data i godzina rozpoczęcia nie mogą być starsze niż 30 dni od bieżącego czasu UTC.
    • Odstęp czasu pomiędzy startTime i endTime nie może przekraczać 12 godzin w pojedynczym żądaniu API.
  • endTime (wymagany, ciąg) — data i godzina zakończenia (UTC) ostatniego rekordu, który chcesz zebrać. Rekordy są liczone na podstawie czasu zgłoszenia, czyli czasu zakończenia połączenia. Upewnij się, że:
    • Formatujesz czas jako YYYY-MM-DDTHH:MM:SS.mmmZ. Na przykład, 2025-08-15T18:00:00.000Z.
    • Data i godzina zakończenia muszą być co najmniej 5 minut przed bieżącym czasem UTC i nie starsze niż 30 dni.
    • Data i godzina zakończenia muszą być późniejsze niż startTime.
    • Odstęp czasu pomiędzy startTime i endTime nie może przekraczać 12 godzin w pojedynczym żądaniu API.
  • Max (opcjonalny, liczba) — ogranicza maksymalną liczbę rekordów na stronie odpowiedzi. Upewnij się, że:
    • Zakres wynosi od 500 do 5000. Wartość domyślna wynosi 5000. Na przykład, Max=1000.
    • Jeśli API musi zwrócić więcej rekordów niż określona wartość maksymalna, odpowiedź jest dzielona na strony.
    • Jeżeli podana zostanie wartość poniżej 500, zostanie ona automatycznie skorygowana do 500. Jeżeli określona zostanie wartość powyżej 5000, zostanie ona obniżona do 5000.

Paginacja

Aby sprawdzić, czy odpowiedzi API są podzielone na strony, sprawdź nagłówki odpowiedzi pod kątem nagłówka Link. Jeśli w nagłówku Link znajduje się łącze next, wyodrębnij je i użyj wartości startTimeForNextFetch, aby zażądać kolejnego zestawu rekordów. Jeśli nie ma następnego łącza, wówczas zbierane są wszystkie raporty dla wybranego przedziału czasu.

Żądania API dotyczące kolejnych stron można wysyłać natychmiast, jednak ich liczba musi być ograniczona do maksymalnie 10 żądań podzielonych na strony na minutę, na zakres tokena.

Na przykład, jeśli początkowe żądanie API wygląda następująco:

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

następnie nagłówek łącza w odpowiedzi wygląda następująco:

; rel="next"

Inne możliwe wartości linków to rel="first" i rel="prev" odpowiednio dla pierwszej i poprzednich stron.

Paginacja w tym interfejsie API jest zgodna ze standardem RFC5988 (Linkowanie stron internetowych). Aby uzyskać więcej informacji, zobacz Podstawy interfejsu API REST.

Partner reports/templates API

Możesz generować i pobierać raporty dostępne w Partner Hub, korzystając z interfejsów API raportów partnerskich. Aby uzyskać więcej informacji, zobacz partnera report/templates.

Partnerzy mogą również uzyskać dostęp do wielu raportów i pobrać je bezpośrednio z Partner Hub. Aby uzyskać więcej informacji, zobacz raporty Partner Hub.

Czy ten artykuł był pomocny?
Czy ten artykuł był pomocny?