Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Sv translation
languageen

Introduction

The TEL server runs the call flows for telephone calls in the jtel system.

It also runs background processes, such as jobs to create statistics subscription e-mails and convert audio files or create audio with a TTS engine.

Also, usually PBX connectors are run on the TEL server. 

Installation

Time Synchronisation

Windows is a notoriously bad 

Also, it is recommended to run 

Die TEL Server sind dafür zuständig Call-Flow-Applikationen und zentrale Verwaltungs- und Steuerfunktionen in Form von R5-Skripten auszuführen. Des weiteren werden auf diesen Servern in der Regel auch die Connectoren für Synchronisation verschiedner Bentzer und Telefonie-Stati der Telefonanlagen installiert.

Einrichtung der Zeitsynchronisation (Alternativer Zeitdienst)

portal.Daemon.TimeServiceMonitor.r5 stoppen im 8-Server falls installiert. 

Zeitdienst herunterladen und installieren:

http

File Downloads

The following script downloads all the files needed in this section.

Translations Ignore


Code Block
powershell -command "& { Start-BitsTransfer -Source https://cdn.jtel.de/downloads/configs/8server_config_v8.reg -Destination $Env:UserProfile\Downloads }"
powershell -command "& { Start-BitsTransfer -Source https://cdn.jtel.de/downloads/
NTP/ntp-4.2.8p10-win32-setup.exe

Immer auf next, bis zur Auswahl der Zeitserver. Zuerst den Kundenserver angeben (falls vorhanden), dann die ptb Zeitserver: ptbtime1.ptb.de,ptbtime2.ptb.de,ptbtime3.ptb.de

Image Removed

Dann installation abschließen. 

Monitor installieren:

configs/odbc_ini_v52.reg -Destination $Env:UserProfile\Downloads }"
powershell -command "& { Start-BitsTransfer -Source http://cdn.jtel.de/downloads/
NTP/ntp-time-server-monitor-104.exe
aculab/AculabInstaller.msi -Destination $Env:UserProfile\Downloads }"


Configure Data Sources

Import the downloaded file

Sicherstellen dass dienst läuft. Monitor prüfen, dass mindestens einer der Zeitserver "grün" ist.

Image Removed

Achtung:

  • Sicherstellen, dass der Parameter im Portal Portal.Alarming.Time.WindowsTimeService auf 0 gestellt ist.

Konfigurieren der Datenquellen

Als nächstes müssen die Datenquellen im ODBC Administrator konfiguriert werden.

Folgende Registry-File downloaden und importieren:

https://cdn.jtel.de/downloads/configs/odbc_ini_v52.reg

Hinweis: Konfigurationsdateien für neuere ODBC Treiber sind ebenfalls vorhanden. Es wird jedoch empfohlen, wegen Speicherprobleme im MySQL ODBC Treiber, mit dieser Version zu arbeiten. Auch mit den neuesten 8.x Treiber treten Speicherprobleme auf, wenn Datenbankverbindungen abbrechen.

Installieren des 8Servers

Repository Clonen

  • https://bitbucket.org/jtelgmbh/8-server-deploy.git in das zu erstellende Verzeichnis c:\8Server\deploy
  •  to the registry to configure the data sources in windows.

    Prepare 8-Server Registry

    Import the downloaded file 8server_config_v8.reg to the registry to prepare the registry for 8-Server.

    Install 8-Server

    Clone Repository

    Run the following commands from a non elevated command prompt

    Wechsel auf das gewünschte Release, beispielsweise release/rc-5.23.9 (derzeit aktuell empfohlen)
    Note
    titleHinweis

    Beide Aktionen erfordern die Kenntnis gültiger Zugangsberechtigungen zum zentralen jtel Software-Server.

    Software Installieren

    Telefonie und Daemonen:

    Translations Ignore
    Code Block
    titleInstallation of an 8 server for telephony and daemons
    c:\8Server\deploy\OEM\JTEL\first_install.cmd
    c:\8Server\deploy\OEM\JTEL\copy_keyfile_en_mcp_v67.cmd

    Nur Daemonen:

    Translations Ignore
    Code Block
    titleInstallation of an 8 server for administration and control functions
    c:\8Server\deploy\OEM\JTEL\first_install.cmd
    c:\8Server\deploy\OEM\JTEL\copy_keyfile_en_daemon.cmd

    C++ Runtimes installieren

    Folgende Runtimes installieren:

    Translations Ignore


    Code Block
    c:
    cd \
    mkdir \8Server
    cd \8Server
    git clone https://bitbucket.org/jtelgmbh/8-server-deploy.git deploy
    cd deploy
    git checkout release/rc-5.23.12


    Install 8-Server

    Telephony and Deamons

    Run the following commands from a non elevated command prompt:

    Translations Ignore


    Code Block
    c:
    cd 
    titleC++ Runtimes
    C:\8Server\deploy\OEM\JTEL\Required\vcredist_2012_x64_11.0.61030.exe /passive /norestart
    C:\8Server\deploy\OEM\JTEL\Required\vcredist_2012_x86_11.0.61030.exe /passive /norestart
    C:\8Server\deploy\OEM\JTEL\Required\vcredist_2015_x64_14.0.24123.exe /install /passive /norestart
    C:\8Server\deploy\OEM\JTEL\Required\vcredist_2015_x86_14.0.24123.exe /install /passive /norestart
    C:\8Server\deploy\OEM\JTEL\Required\ww_icl_redist_ia32_2017.1.143.msi /quiet /passive
    C:
    first_install.cmd
    copy_keyfile_en_mcp_v67.cmd


    Deamons Only

    Run the following commands from a non elevated command prompt:

    Translations Ignore


    Code Block
    c:
    cd \8Server\deploy\OEM\JTEL\Required\ww_icl_redist_intel64_2017.1.143.msi /quiet /passive

    Installieren des Aculab Media Servers

    AIT Installieren

    v67 Paket installieren

    
    first_install.cmd
    copy_keyfile_en_daemon.cmd


    Install Aculab SIP and RTP Stack

    Install AIT

    Run the following commands from a non elevated command prompt, and install for all users:

    Translations Ignore


    Code Block
    start %USERPROFILE%\Downloads\AculabInstaller.msi


    Install Aculab v67

    • Start the AIT application
    • AIT Starten
    • Choose
    • "Connection" -> "Work offline".
    • "File" -> ""Import"  -> Load Aculab Package File...".
      • c:\8Server\deploy\oem\jtel\aculab\v67.apf
    • Zielpfad:
      • C:\aculab\v67
    • "Install"

      Image Removed

    • Installation von allen Treibern (Windows Abfragen) bestätigen

    Aculab Konfiguration

      • \aculab\v67.apf
    • Target Directory:
      • C:\aculab\v67
    • "Install"

      Image Added

    Warning

    Note - if secure boot is not switched off in the virtual environment, the installation of the drivers might fail.

    Configure Aculab

    • Start ACT 


    • Add a Prosody-S instance
    • ACT Starten
    • Choose
    • "Prosody S" ... "Add...":Die Seriennummer kann frei gewählt werden. Als Security Key jtel angeben.
      Image Removed
      "IP Settings", "Enable SIP on Host" aktivieren:
      Image Removed
    • The serial number can be freely chosen, as can the security key. We recommend 100000 and jtel respectively.

    Image Added

    • Install the licenses
    • Choose "License Manager", Lizenz einspielen ( Install Licence Keys...)

    Image Modified

    • Save and apply
    • Choose "Save Settings" gefolgt dann  then "Apply Settings".

    Startup Scripts

    Ggf in c:\8Server\bin\startup.cmd das "net use" anpassen.

    Verknüpfungen

    Verknüpfung von 

    c:\8Server\bin\startup_launcher.cmd

    Auf den Desktop sowie nach shell:startup legen.

    Aculab Konfiguration für 8-Server

    giAculab config erzeugen (cmd als ADMIN):

    Achtung: manchmal schluckt Windows das Verändern des Pfads nicht 100% sofort. Wenn nicht (falls gihal.exe nicht gefunden wird), dann neu booten.

    Translations Ignore


    Code Block
    titlecmd (as ADMIN)
    gihal
     
    # If it starts, press CTRL+C then cancel



    giAculab.cfg muss nun angepasst werden.

    Den Einstellungsbereich unten kopieren und in der Zieldatei ersetzen.

    • channel_count auf die Anzahl der SIP Kanäle stellen
    • default_rtp_ip muss bei Multi-Homed Maschinen auf die IP Adresse der Netzwerkkarte für die Telefonie gesetzt werden

    Translations Ignore


    Code Block
    titleChanges to C: \\ 8Server \\ gi2 \\ config \\ giAculab.cfg
        [SIP]
        {
          netport			                = 0
          channel_count		                = 30
          default_vmp_set		            = "VMP_SET1"
          default_rtp_ip		            = "0.0.0.0"
          default_rtp_dscp		            = 46
          defaultSignallingGateway	        = ""
          numberOnly		                = FALSE
          rfc2833RxToneEvent	            = TRUE
          rfc2833RxInbandToneRegeneration	= TRUE
          rfc2833TxToneConversion	        = TRUE
        }



    Eine weitere Änderung betrifft die Datei C:\8Server\gi2\bin\gi2.ini: hier sollte der Wert DISABLE_ERROR_DIALOG folgendermaßen angepasst werden:

    Translations Ignore


    Code Block
    titleChanges to C: \\ 8Server \\ gi2 \\ bin \\ gi2.ini
    DISABLE_ERROR_DIALOG = 2



    Zusätzlich wird eine Datei C:\8Server\bin\gi2.ini angelegt, mit folgenden Inhalt:

    Translations Ignore


    Code Block
    titleChanges to C: \\ 8Server \\ bin \\ gi2.ini
    CONFIG_DIR = ../gi2/config
    LOG_DIR = ../log




    Die letzte Datei, an der manuelle Anpassungen erfolgen müssen, ist C:\8Server\config\StdCall_MCP.cfg 

    Folgende Einstellungen insbesonders beleuchten:

    • Enable_SIP_Registrar - für Installationen mit eingehende Registrierungen (insbesonders Panasonic)
    • Default_SIP_Contact - hier die IP Adresse des SIP Interfaces eintragen
    • Startup_Command4 und Startup_Sleep4 - löschen, falls die Maschine keine Registrierung nach Aussen aufbauen muss (derzeit alle Installationen ausser NFON)

    • Total_Channel_Count - Entspricht die Gesamtzahl der SIP Kanäle
    • Inbound_Use_Channels - Entspricht nAgents + nSupervisor + nQueueChannels
    • Outbound_Use_Channels - Entspricht nAgents + nSupervisor + nCallTransferChannels
    • Beachte: Total_Channel_Count = Inbound_Use_Channels + Outbound_Use_Channels
    Translations Ignore


    Code Block
    titleChanges to C: \\ 8Server \\ config \\ StdCall_MCP.cfg
    ROOT
    {
       StdCall_MCP
       {    
          bool    Use_RemoteHAL                         = TRUE;
    	  
          integer LocalStream_RX_Port                   = 0;	  
          integer Dispatcher_ThreadCount                = 4;
    	  
          bool    Auto_SETUP_ACK                        = FALSE;
          string  Alert_DefaultFile                     = "c:\8Server\Voice\System\070.wav";
    	  
          integer Stream_Receiver_MaxUnconfirmedPackets = 8;
          integer Stream_Receiver_MaxBufferSize         = 16384;
          integer Stream_Sender_Timeout                 = 2000;
          integer Stream_Sender_MaxBufferSize           = 16384;
    	  
          integer SIP_Interceptor_Port                  = 5060;
          bool    Enable_SIP_Interceptor                = TRUE;
    	  integer Start_SIP_Interceptor_After_Command   = 1;
    	  bool    Enable_SIP_Registrar                  = FALSE;
          bool    Enable_L3_Monitor                     = FALSE;
    
          string  Default_SIP_Contact                   = "<sip:10.4.11.81>";
    
    	  string  Startup_Command0                      = "c:/windows/system32/taskkill.exe /im gihal.exe /f";
    	  integer Startup_Sleep0                        = 2000;
    	  string  Startup_Command1                      = "c:/aculab/v67/bin/amd64/aculabservicemanager -stop sip";
    	  integer Startup_Sleep1                        = 2000;
    	  string  Startup_Command2                      = "c:/aculab/v67/bin/amd64/aculabservicemanager -start sip";
    	  integer Startup_Sleep2                        = 2000;
    	  string  Startup_Command3                      = "c:/8Server/gi2/bin/giHal.exe -w -tingtrace";
    	  integer Startup_Sleep3                        = 5000;
    	  string  Startup_Command4                      = "c:/8Server/bin/startup_registrations.cmd";
    	  integer Startup_Sleep4                        = 1000;
    	  
    	  string  Shutdown_Command0                     = "c:/windows/system32/taskkill.exe /im gihal.exe /f";
    	  integer Shutdown_Sleep0                       = 2000;
    	  string  Shutdown_Command1                     = "c:/windows/system32/taskkill.exe /im giacu.exe /f";
    	  integer Shutdown_Sleep1                       = 2000;
    	  string  Shutdown_Command2                     = "c:/aculab/v67/bin/amd64/aculabservicemanager -stop sip";
    	  integer Shutdown_Sleep2                       = 2000;
    
          Controller1
          {
             integer Total_Channel_Count    = 0;
             integer Inbound_Use_Channels   = 0;
             integer Outbound_Use_Channels  = 0;
             string  HAL_HostName           = "127.0.0.1";
             bool    SIP_URL_Cleaner        = TRUE;     
             bool    Ignore_L1Status        = TRUE;
             bool    RFC2833_DTMF_Detection = TRUE;
          };
       };
    };
    
    



    Symmetrisches RTP

    Wir installieren alle Systeme mit symmetrisches RTP.

    Dies erfordert, dass eine neue Konfigurationsdatei Namens C:\Aculab\v67\cfg\mhp.cfg mit folgendem Inhalt angelegt wird:

    Translations Ignore


    Code Block
    titleFile C: \\ aculab \\ v67 \\ cfg \\ mhp.cfg
     LocalRtpSymmetric=1



    8-Server Konfiguration

    Von diese URL, die Registry Datei importieren:

    MySQL 8.x

    http://cdn.jtel.de/downloads/configs/8server_config_v8.reg

    MySQL 5.x

    http://cdn.jtel.de/downloads/configs/8server_config.reg

    8-Server als ADMIN starten (rechter Mausklick auf robot5.exe im Verzeichnis c:\8Server\Config).

    WICHTIG: Nicht über startup.cmd oder startup_launcher.cmd!

     General Settings, General

    • "Machine ID" letztes Byte der IP Adresse

    Bereich Internet Components

    Nur bei Maschinen mit viele Leitungen: ggf. der Wert von "UDP" erhöhen. 

    Bereich UDP Settings

    Nur bei den Betrieb von mehreren 8-Server:

    • Die Broadcast-Adresse des LAN Segments eintragen
    • Port 20202 bestimmen


    Bereich Daemon Processes

    Ggf. bei ein reiner Daemonen-Server oder reine Telefonie-Server einige der Daemonen entfernen.


    Translations Ignore


    Code Block
    titleList of daemons of a combination server
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.AcdEvents.Cleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.AcdEvents.Distribute.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.DailyAutoGroupLogout.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.DailyAutoUserLogout.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.GroupDistribute.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.LongCalls.Warning.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\conf\ConfServer.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.8Server.LogFileCleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Audio.Converter.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.ChangeEvent.Manager.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.EventSpool.SMS.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.EventSpool.SMTP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Recordings.Cleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Recordings.Manager.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.ReportSubscriptions2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Cleaner.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Update.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\TimeServiceMonitor\portal.Daemon.TimeServiceMonitor.r5
    C:\8Server\Samples\LogFileCleaner\8Server.Daemon.LogFileCleaner.mySQL.r5



    Bei einem reinen Telefonie-Server müssen mindestens folgende Daemonen eingetragen werden (Die Pfade orientieren sich an der Beispielskonfiguration):


    Translations Ignore


    Code Block
    titleList of daemons of a telephony server
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\conf\ConfServer.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Update.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\TimeServiceMonitor\portal.Daemon.TimeServiceMonitor.r5
    C:\8Server\Samples\LogFileCleaner\8Server.Daemon.LogFileCleaner.mySQL.r5



    Bei einem Daemonen-Server müssen mindestens folgende Daemonen eingetragen werden (Die Pfade orientieren sich an der Beispielskonfiguration):

    Translations Ignore


    Code Block
    titleList of daemons in a daemon server
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.AcdEvents.Cleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.AcdEvents.Distribute.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.DailyAutoGroupLogout.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.DailyAutoUserLogout.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.GroupDistribute.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.LongCalls.Warning.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.8Server.LogFileCleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Audio.Converter.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.ChangeEvent.Manager.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.EventSpool.SMS.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.EventSpool.SMTP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Recordings.Cleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Recordings.Manager.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.ReportSubscriptions2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Cleaner.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Update.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\TimeServiceMonitor\portal.Daemon.TimeServiceMonitor.r5
    C:\8Server\Samples\LogFileCleaner\8Server.Daemon.LogFileCleaner.mySQL.r5



    Hiermit ist die Interaktive Grund-Konfiguration des 8Servers abgeschlossen. Der 8Server kann nun beendet werden, so dass eine gültige Lizenz generiert und eingespielt werden kann.

    8Server Lizenz anfordern

    Die Anforderung der Lizenz erfolgt mittels des Programms C:\8Server\bin\KeyOrder6.exe direkt aus dem Explorer:

    Die Datei C:\8Server\bin\8server.key wird an support@jtel.de gesendet.

    Sobald eine gültige Lizenzdatei verfügbar ist, muss diese ins Verzeichnis C:\8Server\Config Verzeichnis eingespielt werden.

    Installation des Hazelcast Platform UDP Listeners

    Platform UDP Listener Installieren

    Im Anschluss wird der Platform UDP Listener mit folgenden Befehlen installiert:

    Translations Ignore


    Code Block
    titleInstallation des Platform UDP Listeners
    C:
    md \PlatformUDPlistener
    xcopy /E \\acd-store\shared\JTELCarrierPortal\Utils\Install\PlatformUDPListener C:\PlatformUDPlistener 
    copy \\acd-store\shared\hazelcast.xml C:\PlatformUDPlistener\conf



    Verknüpfungen

    Verknüpfung von 

    c:\PlatformUDPListener\startListener.bat

    Auf den Desktop sowie nach shell:startup legen.

    Test

    Platform UDP Listener starten. Es sollten nun im Cluster alle TEL Nodes gefunden werden. Wenn zuvor, die Webserver und DBM installiert wurden, sollten diese Nodes nun auch im Cluster aktiv sein.

    Windows Autostart

    Bedingung für die Installation durch uns, ist ein lokaler Administrator Account. 

    Ferner ist es zu empfehlen, dass die Maschine nicht in der Domäne des Kunden eingebunden ist. Hier gibt es einfach die Möglichkeit, dass zu viele Policies uns in die Suppe spucken.

    Maschine ohne "Administrator" Login

    Dies betrifft meistens Maschinen die in der Kunden-Domäne sind.

    Damit der 8-Server korrekt läuft, muss es mit "Als Administrator ausführen" gestartet werden. 

    Es gibt jedoch einen Weg, dies automatisch zu machen. 

    Voraussetzung ist, dass wir die Einstellungen der Benutzerkontensteuerung verändern können, sollte dies nicht möglich sein, MUSS der Kunde das anpassen. Sonst an dieser Stelle: HALT.

    Einstellungen der Benutzerkontensteuerung ändern

    Auf den Startmenü clicken oder Windows Taste drücken.

    Dann eingeben:

    Benutzerkontensteuerung (Deutsches Windows) oder User Account Control.

    Siehe Screenshot:

    Den entsprechenden Menüpunkt auswählen, und dann die Benutzerkontensteuerung auf die Niedrigste Stufe stellen - siehe Screenshot. 

    Autostart Installieren

    http://cdn.jtel.de/downloads/tools/AutoLogon.zip 

    Entpacken, und für den Benutzer (Administrator oder den jtel Benutzer) ein Autologin einrichten.

    Anschließend testen:

    • Maschine neu starten
    • Nachdem die Maschine gebootet ist, sollte der User sich automatisch angemeldet haben, und alle relevanten Dienste sollten laufen

    Windows Firewall

    Falls die Windows Firewall aktiviert bleiben soll, müssen ein paar Anpassungen getätigt werden.

    Folgende Befehle als Administrator im cmd Fenster ausführen:

    Translations Ignore


    Code Block
    titleWindows Firewall adjustments - run as administrator in cmd
    netsh advfirewall firewall add rule name="ICMPv4" protocol=icmpv4:8,any dir=in action=allow edge=yes
    netsh advfirewall firewall add rule name="Hazelcast" dir=in action=allow protocol=TCP localport=5701-5801 edge=no
    netsh advfirewall firewall add rule name="RTP" dir=in action=allow protocol=UDP localport=30000-34999 edge=yes
    netsh advfirewall firewall add rule name="SIP" dir=in action=allow protocol=UDP localport=5060 edge=yes
    netsh advfirewall firewall add rule name="UDP Local" dir=in action=allow protocol=UDP localport=1-65535 edge=no



    Aculab Port Eingrenzung

    Damit das UDP von Remote auch an bestimmte Ports in Aculab ankommt, muss zusätzlich die Aculab Konfiguration angepasst werden.

    Mit notepad++ folgende Datei bearbeiten: C:\aculab\v67\cfg\aculab.config und die Port Range auf 30000 bis 34999 setzen:

    Translations Ignore


    Code Block
    titleC:\aculab\v67\cfg\aculab.config
    ...
    							<rxrange minvalue="30000" maxvalue="34999"/>
    ...






    Sv translation
    languagede

    Table of Contents
    maxLevel3
    printablefalse

    Beschreibung der Rolle

    Die TEL Server sind dafür zuständig Call-Flow-Applikationen und zentrale Verwaltungs- und Steuerfunktionen in Form von R5-Skripten auszuführen. Des weiteren werden auf diesen Servern in der Regel auch die Connectoren für Synchronisation verschiedner Bentzer und Telefonie-Stati der Telefonanlagen installiert.

    Einrichtung der Zeitsynchronisation (Alternativer Zeitdienst)

    portal.Daemon.TimeServiceMonitor.r5 stoppen im 8-Server falls installiert. 

    Zeitdienst herunterladen und installieren:

    http://cdn.jtel.de/downloads/NTP/ntp-4.2.8p10-win32-setup.exe

    Immer auf next, bis zur Auswahl der Zeitserver. Zuerst den Kundenserver angeben (falls vorhanden), dann die ptb Zeitserver: ptbtime1.ptb.de,ptbtime2.ptb.de,ptbtime3.ptb.de

    Dann installation abschließen. 

    Monitor installieren:

    http://cdn.jtel.de/downloads/NTP/ntp-time-server-monitor-104.exe

    Sicherstellen dass dienst läuft. Monitor prüfen, dass mindestens einer der Zeitserver "grün" ist.

    Achtung:

    • Sicherstellen, dass der Parameter im Portal Portal.Alarming.Time.WindowsTimeService auf 0 gestellt ist.

    Konfigurieren der Datenquellen

    Als nächstes müssen die Datenquellen im ODBC Administrator konfiguriert werden.

    Folgende Registry-File downloaden und importieren:

    https://cdn.jtel.de/downloads/configs/odbc_ini_v52.reg

    Hinweis: Konfigurationsdateien für neuere ODBC Treiber sind ebenfalls vorhanden. Es wird jedoch empfohlen, wegen Speicherprobleme im MySQL ODBC Treiber, mit dieser Version zu arbeiten. Auch mit den neuesten 8.x Treiber treten Speicherprobleme auf, wenn Datenbankverbindungen abbrechen.

    Installieren des 8Servers

    Repository Clonen

    1. https://bitbucket.org/jtelgmbh/8-server-deploy.git in das zu erstellende Verzeichnis c:\8Server\deploy
    2. Wechsel auf das gewünschte Release, beispielsweise release/rc-5.23.9 (derzeit aktuell empfohlen)

    Note
    titleHinweis

    Beide Aktionen erfordern die Kenntnis gültiger Zugangsberechtigungen zum zentralen jtel Software-Server.

    Software Installieren

    Telefonie und Daemonen:

    Translations Ignore


    Code Block
    titleInstallation of an 8 server for telephony and daemons
    c:\8Server\deploy\OEM\JTEL\first_install.cmd
    c:\8Server\deploy\OEM\JTEL\copy_keyfile_en_mcp_v67.cmd



    Nur Daemonen:

    Translations Ignore


    Code Block
    titleInstallation of an 8 server for administration and control functions
    c:\8Server\deploy\OEM\JTEL\first_install.cmd
    c:\8Server\deploy\OEM\JTEL\copy_keyfile_en_daemon.cmd



    C++ Runtimes installieren

    Folgende Runtimes installieren:

    Translations Ignore


    Code Block
    titleC++ Runtimes
    C:\8Server\deploy\OEM\JTEL\Required\vcredist_2012_x64_11.0.61030.exe /passive /norestart
    C:\8Server\deploy\OEM\JTEL\Required\vcredist_2012_x86_11.0.61030.exe /passive /norestart
    C:\8Server\deploy\OEM\JTEL\Required\vcredist_2015_x64_14.0.24123.exe /install /passive /norestart
    C:\8Server\deploy\OEM\JTEL\Required\vcredist_2015_x86_14.0.24123.exe /install /passive /norestart
    C:\8Server\deploy\OEM\JTEL\Required\ww_icl_redist_ia32_2017.1.143.msi /quiet /passive
    C:\8Server\deploy\OEM\JTEL\Required\ww_icl_redist_intel64_2017.1.143.msi /quiet /passive




    Installieren des Aculab Media Servers

    AIT Installieren

    v67 Paket installieren

    • AIT Starten
    • "Connection" -> "Work offline".
    • "File" -> ""Import"  -> Load Aculab Package File...".
      • c:\8Server\deploy\oem\jtel\aculab\v67.apf
    • Zielpfad:
      • C:\aculab\v67
    • "Install"

    • Installation von allen Treibern (Windows Abfragen) bestätigen

    Aculab Konfiguration

    • ACT Starten
    • "Prosody S" ... "Add...":
      Die Seriennummer kann frei gewählt werden. Als Security Key jtel angeben.


    • "IP Settings", "Enable SIP on Host" aktivieren:


    • "License Manager", Lizenz einspielen (Install Licence Keys...)


    • "Save Settings" gefolgt dann "Apply Settings".

    Startup Scripts

    Ggf in c:\8Server\bin\startup.cmd das "net use" anpassen.

    Verknüpfungen

    Verknüpfung von 

    c:\8Server\bin\startup_launcher.cmd

    Auf den Desktop sowie nach shell:startup legen.

    Aculab Konfiguration für 8-Server

    giAculab config erzeugen (cmd als ADMIN):

    Achtung: manchmal schluckt Windows das Verändern des Pfads nicht 100% sofort. Wenn nicht (falls gihal.exe nicht gefunden wird), dann neu booten.

    Translations Ignore


    Code Block
    titlecmd (as ADMIN)
    gihal
     
    # If it starts, press CTRL+C then cancel



    giAculab.cfg muss nun angepasst werden.

    Den Einstellungsbereich unten kopieren und in der Zieldatei ersetzen.

    • channel_count auf die Anzahl der SIP Kanäle stellen
    • default_rtp_ip muss bei Multi-Homed Maschinen auf die IP Adresse der Netzwerkkarte für die Telefonie gesetzt werden

    Translations Ignore


    Code Block
    titleChanges to C: \\ 8Server \\ gi2 \\ config \\ giAculab.cfg
        [SIP]
        {
          netport			                = 0
          channel_count		                = 30
          default_vmp_set		            = "VMP_SET1"
          default_rtp_ip		            = "0.0.0.0"
          default_rtp_dscp		            = 46
          defaultSignallingGateway	        = ""
          numberOnly		                = FALSE
          rfc2833RxToneEvent	            = TRUE
          rfc2833RxInbandToneRegeneration	= TRUE
          rfc2833TxToneConversion	        = TRUE
        }



    Eine weitere Änderung betrifft die Datei C:\8Server\gi2\bin\gi2.ini: hier sollte der Wert DISABLE_ERROR_DIALOG folgendermaßen angepasst werden:

    Translations Ignore


    Code Block
    titleChanges to C: \\ 8Server \\ gi2 \\ bin \\ gi2.ini
    DISABLE_ERROR_DIALOG = 2



    Zusätzlich wird eine Datei C:\8Server\bin\gi2.ini angelegt, mit folgenden Inhalt:

    Translations Ignore


    Code Block
    titleChanges to C: \\ 8Server \\ bin \\ gi2.ini
    CONFIG_DIR = ../gi2/config
    LOG_DIR = ../log




    Die letzte Datei, an der manuelle Anpassungen erfolgen müssen, ist C:\8Server\config\StdCall_MCP.cfg 

    Folgende Einstellungen insbesonders beleuchten:

    • Enable_SIP_Registrar - für Installationen mit eingehende Registrierungen (insbesonders Panasonic)
    • Default_SIP_Contact - hier die IP Adresse des SIP Interfaces eintragen
    • Startup_Command4 und Startup_Sleep4 - löschen, falls die Maschine keine Registrierung nach Aussen aufbauen muss (derzeit alle Installationen ausser NFON)

    • Total_Channel_Count - Entspricht die Gesamtzahl der SIP Kanäle
    • Inbound_Use_Channels - Entspricht nAgents + nSupervisor + nQueueChannels
    • Outbound_Use_Channels - Entspricht nAgents + nSupervisor + nCallTransferChannels
    • Beachte: Total_Channel_Count = Inbound_Use_Channels + Outbound_Use_Channels
    Translations Ignore


    Code Block
    titleChanges to C: \\ 8Server \\ config \\ StdCall_MCP.cfg
    ROOT
    {
       StdCall_MCP
       {    
          bool    Use_RemoteHAL                         = TRUE;
    	  
          integer LocalStream_RX_Port                   = 0;	  
          integer Dispatcher_ThreadCount                = 4;
    	  
          bool    Auto_SETUP_ACK                        = FALSE;
          string  Alert_DefaultFile                     = "c:\8Server\Voice\System\070.wav";
    	  
          integer Stream_Receiver_MaxUnconfirmedPackets = 8;
          integer Stream_Receiver_MaxBufferSize         = 16384;
          integer Stream_Sender_Timeout                 = 2000;
          integer Stream_Sender_MaxBufferSize           = 16384;
    	  
          integer SIP_Interceptor_Port                  = 5060;
          bool    Enable_SIP_Interceptor                = TRUE;
    	  integer Start_SIP_Interceptor_After_Command   = 1;
    	  bool    Enable_SIP_Registrar                  = FALSE;
          bool    Enable_L3_Monitor                     = FALSE;
    
          string  Default_SIP_Contact                   = "<sip:10.4.11.81>";
    
    	  string  Startup_Command0                      = "c:/windows/system32/taskkill.exe /im gihal.exe /f";
    	  integer Startup_Sleep0                        = 2000;
    	  string  Startup_Command1                      = "c:/aculab/v67/bin/amd64/aculabservicemanager -stop sip";
    	  integer Startup_Sleep1                        = 2000;
    	  string  Startup_Command2                      = "c:/aculab/v67/bin/amd64/aculabservicemanager -start sip";
    	  integer Startup_Sleep2                        = 2000;
    	  string  Startup_Command3                      = "c:/8Server/gi2/bin/giHal.exe -w -tingtrace";
    	  integer Startup_Sleep3                        = 5000;
    	  string  Startup_Command4                      = "c:/8Server/bin/startup_registrations.cmd";
    	  integer Startup_Sleep4                        = 1000;
    	  
    	  string  Shutdown_Command0                     = "c:/windows/system32/taskkill.exe /im gihal.exe /f";
    	  integer Shutdown_Sleep0                       = 2000;
    	  string  Shutdown_Command1                     = "c:/windows/system32/taskkill.exe /im giacu.exe /f";
    	  integer Shutdown_Sleep1                       = 2000;
    	  string  Shutdown_Command2                     = "c:/aculab/v67/bin/amd64/aculabservicemanager -stop sip";
    	  integer Shutdown_Sleep2                       = 2000;
    
          Controller1
          {
             integer Total_Channel_Count    = 0;
             integer Inbound_Use_Channels   = 0;
             integer Outbound_Use_Channels  = 0;
             string  HAL_HostName           = "127.0.0.1";
             bool    SIP_URL_Cleaner        = TRUE;     
             bool    Ignore_L1Status        = TRUE;
             bool    RFC2833_DTMF_Detection = TRUE;
          };
       };
    };
    
    



    Symmetrisches RTP

    Wir installieren alle Systeme mit symmetrisches RTP.

    Dies erfordert, dass eine neue Konfigurationsdatei Namens C:\Aculab\v67\cfg\mhp.cfg mit folgendem Inhalt angelegt wird:

    Translations Ignore


    Code Block
    titleFile C: \\ aculab \\ v67 \\ cfg \\ mhp.cfg
     LocalRtpSymmetric=1



    8-Server Konfiguration

    Von diese URL, die Registry Datei importieren:

    MySQL 8.x

    http://cdn.jtel.de/downloads/configs/8server_config_v8.reg

    MySQL 5.x

    http://cdn.jtel.de/downloads/configs/8server_config.reg

    8-Server als ADMIN starten (rechter Mausklick auf robot5.exe im Verzeichnis c:\8Server\Config).

    WICHTIG: Nicht über startup.cmd oder startup_launcher.cmd!

     General Settings, General

    • "Machine ID" letztes Byte der IP Adresse

    Bereich Internet Components

    Nur bei Maschinen mit viele Leitungen: ggf. der Wert von "UDP" erhöhen. 

    Bereich UDP Settings

    Nur bei den Betrieb von mehreren 8-Server:

    • Die Broadcast-Adresse des LAN Segments eintragen
    • Port 20202 bestimmen


    Bereich Daemon Processes


    Ggf. bei ein reiner Daemonen-Server oder reine Telefonie-Server einige der Daemonen entfernen.


    Translations Ignore


    Code Block
    titleList of daemons of a combination server
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.AcdEvents.Cleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.AcdEvents.Distribute.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.DailyAutoGroupLogout.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.DailyAutoUserLogout.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.GroupDistribute.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.LongCalls.Warning.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\conf\ConfServer.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.8Server.LogFileCleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Audio.Converter.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.ChangeEvent.Manager.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.EventSpool.SMS.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.EventSpool.SMTP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Recordings.Cleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Recordings.Manager.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.ReportSubscriptions2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Cleaner.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Update.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\TimeServiceMonitor\portal.Daemon.TimeServiceMonitor.r5
    C:\8Server\Samples\LogFileCleaner\8Server.Daemon.LogFileCleaner.mySQL.r5



    Bei einem reinen Telefonie-Server müssen mindestens folgende Daemonen eingetragen werden (Die Pfade orientieren sich an der Beispielskonfiguration):


    Translations Ignore


    Code Block
    titleList of daemons of a telephony server
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\conf\ConfServer.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Update.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\TimeServiceMonitor\portal.Daemon.TimeServiceMonitor.r5
    C:\8Server\Samples\LogFileCleaner\8Server.Daemon.LogFileCleaner.mySQL.r5



    Bei einem Daemonen-Server müssen mindestens folgende Daemonen eingetragen werden (Die Pfade orientieren sich an der Beispielskonfiguration):

    Translations Ignore


    Code Block
    titleList of daemons in a daemon server
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.AcdEvents.Cleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.AcdEvents.Distribute.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.DailyAutoGroupLogout.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.DailyAutoUserLogout.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.GroupDistribute.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.LongCalls.Warning.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\acd\Daemons\acd.Daemon.UDP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.8Server.LogFileCleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Audio.Converter.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.ChangeEvent.Manager.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.EventSpool.SMS.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.EventSpool.SMTP.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Recordings.Cleaner.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.Recordings.Manager.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.ReportSubscriptions2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Cleaner.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\Portal.Daemon.SystemStartSequence.Update.v2.r5
    \\acd-store\shared\JTELCarrierPortal\AppServer\TimeServiceMonitor\portal.Daemon.TimeServiceMonitor.r5
    C:\8Server\Samples\LogFileCleaner\8Server.Daemon.LogFileCleaner.mySQL.r5



    Hiermit ist die Interaktive Grund-Konfiguration des 8Servers abgeschlossen. Der 8Server kann nun beendet werden, so dass eine gültige Lizenz generiert und eingespielt werden kann.

    8Server Lizenz anfordern

    Die Anforderung der Lizenz erfolgt mittels des Programms C:\8Server\bin\KeyOrder6.exe direkt aus dem Explorer:

    Die Datei C:\8Server\bin\8server.key wird an support@jtel.de gesendet.

    Sobald eine gültige Lizenzdatei verfügbar ist, muss diese ins Verzeichnis C:\8Server\Config Verzeichnis eingespielt werden.

    Installation des Hazelcast Platform UDP Listeners

    Platform UDP Listener Installieren

    Im Anschluss wird der Platform UDP Listener mit folgenden Befehlen installiert:

    Translations Ignore


    Code Block
    titleInstallation des Platform UDP Listeners
    C:
    md \PlatformUDPlistener
    xcopy /E \\acd-store\shared\JTELCarrierPortal\Utils\Install\PlatformUDPListener C:\PlatformUDPlistener 
    copy \\acd-store\shared\hazelcast.xml C:\PlatformUDPlistener\conf



    Verknüpfungen

    Verknüpfung von 

    c:\PlatformUDPListener\startListener.bat

    Auf den Desktop sowie nach shell:startup legen.

    Test

    Platform UDP Listener starten. Es sollten nun im Cluster alle TEL Nodes gefunden werden. Wenn zuvor, die Webserver und DBM installiert wurden, sollten diese Nodes nun auch im Cluster aktiv sein.

    Windows Autostart

    Bedingung für die Installation durch uns, ist ein lokaler Administrator Account. 

    Ferner ist es zu empfehlen, dass die Maschine nicht in der Domäne des Kunden eingebunden ist. Hier gibt es einfach die Möglichkeit, dass zu viele Policies uns in die Suppe spucken.

    Maschine ohne "Administrator" Login

    Dies betrifft meistens Maschinen die in der Kunden-Domäne sind.

    Damit der 8-Server korrekt läuft, muss es mit "Als Administrator ausführen" gestartet werden. 

    Es gibt jedoch einen Weg, dies automatisch zu machen. 

    Voraussetzung ist, dass wir die Einstellungen der Benutzerkontensteuerung verändern können, sollte dies nicht möglich sein, MUSS der Kunde das anpassen. Sonst an dieser Stelle: HALT.

    Einstellungen der Benutzerkontensteuerung ändern

    Auf den Startmenü clicken oder Windows Taste drücken.

    Dann eingeben:

    Benutzerkontensteuerung (Deutsches Windows) oder User Account Control.

    Siehe Screenshot:

    Den entsprechenden Menüpunkt auswählen, und dann die Benutzerkontensteuerung auf die Niedrigste Stufe stellen - siehe Screenshot. 

    Autostart Installieren

    http://cdn.jtel.de/downloads/tools/AutoLogon.zip 

    Entpacken, und für den Benutzer (Administrator oder den jtel Benutzer) ein Autologin einrichten.

    Anschließend testen:

    • Maschine neu starten
    • Nachdem die Maschine gebootet ist, sollte der User sich automatisch angemeldet haben, und alle relevanten Dienste sollten laufen

    Windows Firewall

    Falls die Windows Firewall aktiviert bleiben soll, müssen ein paar Anpassungen getätigt werden.

    Folgende Befehle als Administrator im cmd Fenster ausführen:

    Translations Ignore


    Code Block
    titleWindows Firewall adjustments - run as administrator in cmd
    netsh advfirewall firewall add rule name="ICMPv4" protocol=icmpv4:8,any dir=in action=allow edge=yes
    netsh advfirewall firewall add rule name="Hazelcast" dir=in action=allow protocol=TCP localport=5701-5801 edge=no
    netsh advfirewall firewall add rule name="RTP" dir=in action=allow protocol=UDP localport=30000-34999 edge=yes
    netsh advfirewall firewall add rule name="SIP" dir=in action=allow protocol=UDP localport=5060 edge=yes
    netsh advfirewall firewall add rule name="UDP Local" dir=in action=allow protocol=UDP localport=1-65535 edge=no



    Aculab Port Eingrenzung

    Damit das UDP von Remote auch an bestimmte Ports in Aculab ankommt, muss zusätzlich die Aculab Konfiguration angepasst werden.

    Mit notepad++ folgende Datei bearbeiten: C:\aculab\v67\cfg\aculab.config und die Port Range auf 30000 bis 34999 setzen:

    Translations Ignore


    Code Block
    titleC:\aculab\v67\cfg\aculab.config
    ...
    							<rxrange minvalue="30000" maxvalue="34999"/>
    ...