CTI rozhraní - Základní informace_verze 3.X.X

XML bridge

  • Posláním XML bridge je bezpečné zapouzdření a zprostředkování proprietárního rozhraní ústředny (messagebridge). Bezpečné v tom smyslu, že uživatelská aplikace nepracuje přímo s binárními strukturami, ze kterých se zprávy skládají, ale z jejich XML obrazem. Tím se zamezí nežádoucímu chování systému v případě, když do něj špatně napsaná externí aplikace odešle chybně zformátovanou zprávu. XML bridge také vymezuje množinu zpráv, které si mohou externí programy se systémem NetStar vyměňovat. Model uživatelské aplikace je schematicky znázorněn na následujícím obrázku.

  • Operator.exe - libovolná aplikace využívající NsBridge.dll pro komunikaci ústřednou NETSTAR.
  • Message-bridge - proprietární komunikační rozhraní ústředny.
  • Program, který se potřebuje připojovat k ústředně NetStar k tomu použije dynamicky linkovanou knihovnu NsBridge.dll. Ta se skládá z messagového jádra včetně message-bridge, z XML překladače a správce relací. Knihovna musí být po svém zavedení zinicializována zavoláním funkce InitNsBridge. Tato funkce musí být zavolána dříve, než se použije jakákoliv jiná funkce z knihovny. Před uvolněním knihovny je třeba zavolat funkci ExitNsBridge, aby došlo ke korektnímu uvolnění nealokovaných zdrojů. Definice hodnot pro funkce z NsBridge.dll se nachází v NsBridge.h.

TestNsBridge.exe

  • Pro první test připojení budeme používat aplikaci TestNsBridge.exe, která nám poslouží jako simulátor naší aplikace.
  1. Zkontrolujte verzi software v PBX NetStar (verze NsBridge.dll se musí shodovat s verzí firmware na všech 5 místech, napr. verze 3.1.4.99.20)
  2. Přes NetStar Administrator a nebo přes konzolové menu zkontrolujte otevřené porty. V konzolovém menu je toto nastavení v menu: Configuration > Bridges > Display
  3. Vyberte si port který budete používat. Pro první připojení doporučuji použít port bez autorizace. Odpadá tak nutnost zadáni přihlašovacího jména a hesla. Pro naše testování si otevřeme port 6991 bez autorizace.
  4. Potom se připojíme pomocí TestNsBridge.exe s parametrem IP adresa a port :TestNsBridge.exe xxx.xxx.xxx.xxx:6991 = kde xxx.xxx.xxx.xxx je IP adresa ústředny a 6991 port.
  5. Pokud jste se přihlásili na autorizovaný port, je nutné zadat jméno a heslo viz. Kapitola 5.
  6. Nyní jste připojeni do ústředny NetStar a můžete používat všechny příkazy, které najdete v dokumentu: Example.xml
  7. Všechny dokumenty standartě najdete ve složce C:\Program Files\2N Telekomunikace a.s\NETSTAR\Administrator X.X.X\CTI_Interface\ . . .

Připojení pomocí TestNsBridge.exe na nezabezpečený port

  • Přes NetStar Administrator anebo přes konzolové menu zkontrolujte otevřené porty a nastavte jeden port, který nevyžaduje autorizaci.
  1. NetStar Administrator: V menu „Síť" - „Nastavení Služeb" - „TCP/IP Komunikační port" přidáme TCP port, kde není zaškrtnuté políčko „vyžaduje autorizaci".

2. Konzolové menu: V konzolovém menu „Configuration" - „Bridges" - „Open" zvolte číslo portu, na který se chcete připojit a v dalším kroku zvolte „n"      na otázku „Has the bridge to require authorisation"V menu „Configuration" - „Bridges" - „Display" vidíte otevřené porty
V tomhle příkladu jsme nechali otevřený port 6991 bez autorizace. Teď se připojíme pomocí TestNsBridge.exe s parametrem IP adresa a port : TestNsBridge.exe xxx.xxx.xxx.xxx:6991 = kde xxx.xxx.xxx.xxx je IP adresa ústředny a 6991 port.

Připojení XML bridge k cílovému systému se provádí příkazem bind. Pokud se jedná o připojení přes nechráněný kanál, je spojení vybudováno a připraveno k použití v okamžiku, kdy přijde odpověď
<bind Status="OK"/>.

Připojení pomocí TestNsBridge.e na zabezpečený port

  • Každá ústředna NetStar má standardně otevřený zabezpečený port 6992. Pro připojení aplikace TestNsBridge.exe si můžeme zvolit port 6992 nebo vytvořit nový zabezpečený port. V našem příkladu si otevřeme port 6993, který bude vyžadovat autorizaci. Opět jsou dvě možnosti, jak to udělat:
  1. NetStar Administrator: V menu „Síť" - „Nastavení Služeb" - „TCP/IP Komunikační port" přidáme TCP port, kde je zaškrtnuté políčko „vyžaduje autorizaci"
  2. Konzolové menu: V konzolovém menu „Configuration" - „Bridges" - „Open" zvolte číslo portu, na který se chcete připojit a v dalším kroku zvolte „y" na otázku „Has the bridge to require authorisation".

    V tomhle příkladu jsme nechali otevřený port 6993 s vyžadováním autorizace. Teď se připojíme pomocí TestNsBridge.exe s parametrem IP adresa a port :
    TestNsBridge.exe xxx.xxx.xxx.xxx:6993 = kde xxx.xxx.xxx.xxx je IP adresa ústředny a 6993 port.

    O potřebě autentizace je aplikace informována přijetím elementu auth. Tento element nemá žádné atributy, ale obsahuje podelementy method. Jde o seznam podporovaných typů autentizace. Pokud bridge podporuje metodu SASL, tak pod příslušným elementem ještě nalezneme seznam podporovaných autentizačních mechanismů - elementy mechanism. Všechny typy autentizace jsou podrobně rozepsané v manuálu


    CTI doc_XML_bridge_1_22_cz.pdf

    My se teď přihlásíme k ústředně metodou LOGON, která vyžaduje uživatelské jméno a heslo.

    Pro naše účely si vytvoříme přes aplikaci NetStar Administrator uživatele „Test" s heslem „Test". Následně do aplikace TestNsBridge.exe můžeme poslat pokyn:
    <auth Method="LOGON" LoginName "Test" Password="Test"/>;

    A počkáme na odpověď:
    <auth Method="LOGON" Status="OK"/>.
    <bind Status="OK"/>
    Spojení je teď vybudováno a připraveno k použití.

CTI

  • Modul CTI slouží především na vyčítání stanic, uživatelů, sledování stavů uživatelů a hovorů, které v PBX probíhají a v neposlední řadě také k aktivnímu ovládání PBX a na příjem a odesílání zpráv.
  • Příklady použití CTI funkcí:

CTI_IE_REFERENCE je nepovinný řádek

Při zakládání nového uživatele je mu automaticky přiřazeno ID uživatele. Toto ID je specifické pro každého uživatele zvlášť.

CTI_IE_REFERENCE je nepovinný řádek
Vrátí ID uživatele v HEXA tvaru (v tomto případě je ID = 4)

CTI_IE_REFERENCE je nepovinný řádek
Vrátí ID všech stanic uživatele 4 v HEXA tvaru (v tomto případě má uživatel 4 jenom jednu stanici s ID = 0xA = 10).
Dále je možné zjistit jméno stanice (Helios SIP), její interní číslo (666), typ stanice (SIP), ID portu, ke kterému je stanice připojená (98), ...
Do XML Bridže je možné poslat hodnotu proměnný CTI_IE_USER Id také v desítkovém tvaru.
Např: <CTI_IE_USER Id="4"/>

Nejdřív začne zvonit stanice s ID = 10 a po vyzvednutí začne zvonit destinace 301
Do XML Bridže je možné poslat hodnotu proměnný CTI_IE_STATION Id také v desítkovém tvaru.
Např: <CTI_IE_STATION Id="10"/>

Do XML Bridže je možné poslat hodnotu proměnný CTI_IE_USER Id také v desítkovém tvaru.
Např: <CTI_IE_USER Id="4"/>

Po vytvoření HOOK požadavku se sleduje stav stanice s ID = 1
CTI HOOK lze zaregistrovat na objekty station, port, call_id, all, global,profil.
Do XML Bridže je možné poslat hodnotu proměnný CTI_IE_STATION Id také v desítkovém tvaru.
Např: <CTI_IE_STATION Id="1"/>

Do XML Bridže je možné poslat hodnotu proměnný CTI_IE_STATION Id také v desítkovém tvaru.
Napřr: <CTI_IE_STATION Id="1"/>