Poznámky k programu Genesys Log Call Filler pro Calom

Popis

Genesys Log Call Filler načítá a zpracovává logy ze systému Genesys SIP server (vyvíjeno pro verzi 8.1.001.11) a parsuje z nich informace o hovorech. Tyto hovory následně sloučí s hovory uloženými v Call DB databázi systému Calom, doplní potřebné informace (např. hodnoty flags a Authorization code) a výsledek uloží do souboru Call DB databáze Calom.
Plánované použití je pravidelné spouštění například krátce po půlnoci s daty za uplynulý den pro doplnění hodnot, které v databázi Calomu chybí, např. proto, že nebyly podporovány typem ústředny, z které Calom sbírá data.

Instalace a spouštění

Genesys Call Filler je tvořen následujícími soubory, které musí být s danou adresářovou strukturou nainstalovány:

Parametry programu jsou následující:
genesys-filler.py [-h] [-d DEBUG] [-c CALLDB] [-w] logs [logs ..]

Genesys Log Call Filler

požadované argumenty:
  logs                  Genesys log soubory

volitelné argumenty:
  -h, --help                  vypíše nápovědu (tento text) a skončí
  -d DEBUG, --debug DEBUG     print debug info (events,calls,merging,result,all)
  -c CALLDB, --calldb CALLDB  Calom CallDB calls soubor pro vstup (a výstup s -w)
  -w, --write                 zapiš do vstupního Calom CallDB calls souboru výstup
  --max-shift                 maximální časový posun mezi oběma zdroji hovorů (7400)
  --interval-radius           maximální vzdálenost od průměru pro linkování (10)
  --min-success               minimální poměr úspěšně spárovaných hovorů (0.9)
Jediným parametrem, který je nutný je log - log soubor nebo soubory systému Genesys, které mají být zpracovány. V případě, že je uveden parametr -c, načtou se také hovory z databáze Calom a sloučí se s hovory z Genesys logu. Pro správné určení data hovorů je nutné tento parametr uvádět s cestou obsahující dva nadřazené adresáře (např. "../../2013/02/calls.11"). Pokud bude uveden i parametr -w, zapíšou se sloučené hovory do vstupního souboru Calom call DB.
Parametr -d určuje typ vypisovaných informací. Jeho argumentem je čárkou oddělený seznam (bez mezer) následujících hodnot:

Detaily o párování a doplňování hovorů

Mapování probíhá ve dvou fázích. V obou fázích se prochází hovory z Calom Call DB databáze a ke každému hovoru se hledá nejvhodnější kandidát z Genesys hovorů. V první fázi se pro každý Calom hovor prochází Genesys hovory s maximálním časovým posunem 7400 sekund (něco přes 2 hodiny, nastavitelné pomocí argumentu --max-shift) a hledá přibližný časový posun mezi oběma zdroji hovorů.
Následně se určí průměrný rozdíl mezi spárovanými hovory, odstraní hovory, které jsou od průměru příliš vzdálené - více než 10 sekund, nastavitelné pomocí parametru --interval-radius. Pomocí argumentu --min-success je možné ovlivnit minimální poměr hovorů, které projdou testy párování.

Po úspěšném spárování hovorů se v rámci každého páru doplní informace do hovoru z Calom Call DB databáze a pokud je povolen zápis (parametr -w), zapíše se výsledek do souboru určeného parametrem -c.