Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 2 Aktuelle »


Description:

To setup LCOS based e-mail alerts you need to configure an SMTP mail server, as well as actions that trigger the respective behavior.

You will need to setup the following variables:

Mandatory variables:

  • SMTP_SERVER
  • SMTP_USER
  • SMTP_PASSWORT
  • MAIL_SENDER
  • MAIL_TO

Optional variables:

  • projektName
  • locationName

List of used variables:

VariableBeschreibung




Add-in codes:

Configure email:

/**
 * @param {Config} config
 * @param {Context} context
 * Do not edit this comment or parameter types. Required for code suggestions
*/
exports.main = function (config, context) {

              
                
                  

  if (context.device.isGateway) {

    config.setScalarByOid( "1.2.27.1" , context.vars. SMTP_SERVER );
    config.setScalarByOid( "1.2.27.2" , "587" );
    config.setScalarByOid( "1.2.27.12" , "2" );
    config.setScalarByOid( "1.2.27.13" , "3" );
    config.setScalarByOid( "1.2.27.3" , "" );
    config.setScalarByOid( "1.2.27.4" , "110" );
    config.setScalarByOid( "1.2.27.11" , "" );
    config.setScalarByOid( "1.2.27.5" , context.vars. SMTP_USER );
    config.setScalarByOid( "1.2.27.6" , context.vars. SMTP_PASSWORT );
    config.setScalarByOid( "1.2.27.7" , context.vars. MAIL_SENDER );
    config.setScalarByOid( "1.2.27.8" , "30" );
    config.setScalarByOid( "1.2.27.9" , "72" );
    config.setScalarByOid( "1.2.27.10" , "100" );
  }
};

/*
   [  1] SMTP-Server         : 64 chars from  #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz`
   [  2] SMTP-Port           : 5 chars from 1234567890
   [ 12] SMTP-use-TLS        : Yes (1), No (0), Preferred (2), Required (3)
   [ 13] SMTP-Authentication : None (0), Plain-Text-Preferred (1), Encrypted (2), Preferred-Encrypted (3)
   [  3] POP3-Server         : 64 chars from  #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz`
   [  4] POP3-Port           : 5 chars from 1234567890
   [ 11] Loopback-Addr.      : 16 chars from ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789
   [  5] User-Name           : 63 chars from  #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz`
   [  6] Password            : 31 chars from  #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz`
   [  7] E-Mail-Sender       : 63 chars from  #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz`
   [  8] Send-Again-(min.)   : 3 chars from 1234567890
   [  9] Hold-Time-(hrs.)    : 3 chars from 1234567890
   [ 10] Buffers             : 3 chars from 1234567890
*/

Add-in as JSON file:

email.json

Alerts for all connections:

/**
 * @param {Config} config
 * @param {Context} context
 * Do not edit this comment or parameter types. Required for code suggestions
*/
exports.main = function (config, context) {

              
                
                  

    if (context.device.isGateway && !context.network.isCentralGateway) {

        for ( var pos in context.network.vpnconnections);

        // /Setup/WAN/Action-Table
        var actionTable = config.getTableByOid( "1.2.2.25" );
        var row1 = actionTable.createNewRow();
        row1.setByOid( "1" , "7" );
        row1.setByOid( "8" , "0" );
        row1.setByOid( "2" , context.network.vpnconnections[pos] + "-DOWN" );
        row1.setByOid( "3" , context.network.vpnconnections[pos]);
        row1.setByOid( "10" , "4094" );
        row1.setByOid( "4" , "0" );
        row1.setByOid( "5" , "3" );
        row1.setByOid( "6" , "mailto:" + context.vars. MAIL_TO
            // setup subject (translate to your desired language)
            + "?subject=VPN-Verbindung im Projekt " + context.vars.projectName
            + " am Standort " + context.vars.locationName + " abgebrochen um %t"
            // setup body (translate to your desired language)
            + "?body=Im Projekt " + context.vars.projectName
            + " wurde die VPN-Gegenstelle " + context.network.vpnconnections[pos]
            + " am Standort " + context.vars.locationName + " unerwartet abgebaut" );
        row1.setByOid( "7" , "" );
        row1.setByOid( "9" , "root" );
        actionTable.addOrMerge(row1);
        var row2 = actionTable.createNewRow();
        row2.setByOid( "1" , "8" );
        row2.setByOid( "8" , "0" );
        row2.setByOid( "2" , context.network.vpnconnections[pos] + "-UP" );
        row2.setByOid( "3" , context.network.vpnconnections[pos]);
        row2.setByOid( "10" , "4094" );
        row2.setByOid( "4" , "0" );
        row2.setByOid( "5" , "0" );
        row2.setByOid( "6" , "mailto:" + context.vars. MAIL_TO
            // setup subject (translate to your desired language)
            + "?subject=VPN-Verbindung im Projekt " + context.vars.projectName
            + " am Standort " + context.vars.locationName + " aufgebaut um %t"
            // setup body (translate to your desired language)
            + "?body=Im Projekt " + context.vars.projectName
            + " wurde die VPN-Gegenstelle " + context.network.vpnconnections[pos]
            + " am Standort " + context.vars.locationName
            + " aufgebaut" );
        row2.setByOid( "7" , "" );
        row2.setByOid( "9" , "root" );
        actionTable.addOrMerge(row2);

        /*
           [  1] Index       : 5 chars from 1234567890
           [  8] Active      : Yes (0), No (1)
           [  2] Host-Name   : 64 chars from ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789
           [  3] Peer        : 16 chars from ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789
           [  4] Lock-Time   : 9 chars from 1234567890
           [  5] Condition   : Establish (0), Disconnect (1), End (2), Failure (3), Establish-Failure (4), Budget-Exhausted (5), Budget-Released (6)
           [  6] Action      : 250 chars from #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!"$%&'()*+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz `
           [  7] Check-For   : 50 chars from #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()*+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz `
           [  9] Owner       : 16 chars from ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz`
           [ 10] Routing-Tag : 5 chars from 1234567890
       */
    }
};

Add-in as JSON file:

alert_all_connections.json

Alerts for specific connections:

/**
 * @param {Config} config
 * @param {Context} context
 * Do not edit this comment or parameter types. Required for code suggestions
*/
exports.main = function (config, context) {

              
                
                  

    if (context.device.isGateway) {

        // /Setup/WAN/Action-Table
        var actionTable = config.getTableByOid( "1.2.2.25" );

        // setup disconnect alert
        var row1 = actionTable.createNewRow();
        row1.setByOid( "1" , "5" );
        row1.setByOid( "8" , "0" );
        row1.setByOid( "2" , "VOIP-VPN-DOWN" );
        row1.setByOid( "3" , "VOIP-VPN" );
        row1.setByOid( "10" , "4094" );
        row1.setByOid( "4" , "0" );
        row1.setByOid( "5" , "3" );
        row1.setByOid( "6" , "mailto:" + context.vars. MAIL_TO
            // setup subject (translate to your desired language)
            + "?subject=VOIP-VPN Verbindung im Projekt " + context.vars.projectName
            + ", am Standort " + context.vars.locationName + " abgebrochen um %t"
            // setup body (translate to your desired language)
            + "?body=Im Projekt " + context.vars.projectName
            + " wurde die VPN-Verbindung VOIP-VPN am Standort " + context.vars.locationName + " unerwartet abgebaut" );
        row1.setByOid( "7" , "" );
        row1.setByOid( "9" , "root" );
        actionTable.addOrMerge(row1);

        // setup re-connect alert
        var row2 = actionTable.createNewRow();
        row2.setByOid( "1" , "6" );
        row2.setByOid( "8" , "0" );
        row2.setByOid( "2" , "VOIP-VPN-UP" );
        row2.setByOid( "3" , "VOIP-VPN" );
        row2.setByOid( "10" , "4094" );
        row2.setByOid( "4" , "0" );
        row2.setByOid( "5" , "0" );
        row2.setByOid( "6" , "mailto:" + context.vars. MAIL_TO
            // setup subject (translate to your desired language)
            + "?subject=VOIP-VPN Verbindung im Projekt " + context.vars.projectName
            + ", am Standort " + context.vars.locationName + " aufgebaut um %t"
            // setup body (translate to your desired language)
            + "?body=Im Projekt " + context.vars.projectName
            + " wurde die VPN-Verbindung VOIP-VPN am Standort " + context.location.locationName + " aufgebaut" );
        row2.setByOid( "7" , "" );
        row2.setByOid( "9" , "root" );
        actionTable.addOrMerge(row2);

        // table details
        /*
           [  1] Index       : 5 chars from 1234567890
           [  8] Active      : Yes (0), No (1)
           [  2] Host-Name   : 64 chars from ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789
           [  3] Peer        : 16 chars from ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789
           [  4] Lock-Time   : 9 chars from 1234567890
           [  5] Condition   : Establish (0), Disconnect (1), End (2), Failure (3), Establish-Failure (4), Budget-Exhausted (5), Budget-Released (6)
           [  6] Action      : 250 chars from #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!"$%&'()*+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz `
           [  7] Check-For   : 50 chars from #ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()*+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz `
           [  9] Owner       : 16 chars from ABCDEFGHIJKLMNOPQRSTUVWXYZ@{|}~!$%&'()+-,/:;<=>?[\]^_.0123456789abcdefghijklmnopqrstuvwxyz`
           [ 10] Routing-Tag : 5 chars from 1234567890
       */

    }
};

Add-in as JSON file:

alert_specific_connection.json

  • Keine Stichwörter