Przejdź do treści

Kierowanie połączeń w Conpeek

Połączenia

W niniejszym rozdziale postaramy się przybliżyć koncepcję połączeń w systemie Conpeek. Rysunek poniżej przedstawia logiczną reprezentacje rozmowy pomiędzy Klientem a konsultantem.

przykładowe drzewko GOTO

Na rysunku tym widzimy dwie nogi - dwa połączenia dotyczące rozmowy konsultanta z klientem.

  • Połączenie z terminala klienta do systemu Conpeek
  • Połączenie z systemu Conpeek do terminala konsultanta

Blok scalający te dwa połączenia odpowiada za kierowanie połączeń oraz sterowanie nimi zgodnie ze skonfigurowana logika biznesową. Jest to realizowane poprzez wykonywanie szeregu aplikacji na nodze dla której jest uruchomiona usługa. Każde połączenie posiada swój własny unikalny identyfikator – legUUID.

Poniżej przedstawiono przykład procesowania połączenia do IVR typu self-service

przykładowe drzewko GOTO

Jak widzimy na rysunku powyżej przy realizacji usług typu self-service mamy do czynienia z jednym połączeniem zestawionym od klienta do systemu Conpeek. W kontekście tego połączenia została uruchomiona aplikacja IVR realizująca skonfigurowane funkcje biznesowe.

O tym jaka aplikacja zostanie uruchomiona na nodze połączenia decydują algorytmy kierowania połączeń na podstawie:

  • przypisanego do aplikacji identyfikatora celu którym może być numer miejski, numer skrócony bądź zdefiniowany ciąg znaków
  • bezpośredniego wskazania aplikacji w trakcie procesowania połączenia. Ma to z reguły miejsce przy wykonywaniu IVR.

W przypadku gdy system scala dwa lub więcej połączeń, mówimy o stworzeniu spotkania (meeting).

przykładowe drzewko GOTO

Z punktu widzenia użytkownika systemu bardzo ważne jest to że nagrania są tworzone niezależnie dla każdej nogi konsultanta. Spotkanie jest elementem grupującym połączenia, miksującym strumienie media oraz zapewniającym możliwość wyszukiwania powiązanych połączeń.

Użytkownicy

W momencie gdy zachodzi potrzeba zestawienia połączenia do użytkownika, bez względu na to czy jest to kierunek INBOUND czy OUTBOUND, wymagana jest pomyślna rezerwacja użytkownika. Decyzja o rezerwacji zależy od wielu czynników:

  • kierunek połączenia
  • limit jednoczesnych połączeń dla użytkownika
  • liczba aktywnych rezerwacji użytkownika
  • stan użytkownika w systemie
    • dostępność na urządzeniach obsługujących wymagane kanały komunikacji
    • ustawienie parametru on_leave
    • ustawienie parametru do_not_disturb

W momencie gdy dojdzie do rezerwacji użytkownika, system podejmuje decyzję o utworzeniu połączenia na wybrane zgodnie z określonymi priorytetami urządzenia.

Projekty

W sytuacji gdy zachodzi potrzeba zestawienia połączenia do użytkownika w wybranym projekcie, bez względu na to czy jest to kierunek INBOUND czy OUTBOUND, wymagana jest pomyślna rezerwacja użytkownika w projekcie. Dostępność użytkownika w projekcie zależy od wielu czynników:

  • stan użytkownika w systemie
  • tryb pracy użytkownika w projekcie (INBOUND|OUTBOUND|BLENDING|DISABLED)
  • obsługiwane kanały w projekcie (CHAT|AUDIO|VIDEO)
  • stan pracy w systemie (ONLINE|ONBREAK|OFFLINE)

W przypadku dostępności wielu użytkowników o konkretnej rezerwacji decyduje strategia dystrybucji połączeń dla projektu.

  • RANDOM
  • ROUND ROBIN
  • RING ALL
  • TOP DOWN
  • LEAST TALK COUNT
  • LEAST TALK TIME
  • ACCORDING TO SCORE

Jeśli nie będzie dostępnych użytkowników, rezerwacja będzie umieszczona w kolejce projektu zgodnie z określonymi parametrami. W sytuacji gdy użytkownik staje się dostępny w jednym lub więcej projektach, system przydziela mu automatycznie rezerwację zgodnie z listą:

  • priorytet projektu
  • priorytet użytkownika w projekcie
  • priorytet połączenia
  • czas oczekiwania w kolejce