/AC-Configbuilder

Primary LanguageC#MIT LicenseMIT

AC-Configbuilder

Überblick

Der AC-Configbuilder soll eine Automatisierung für das Erstellen von Konfigurationsdatein für AudioCode werden.
Er erstellt lerre Vorlagen der gewünschten Konfiguration oder ersetzt bestimme Teile einer bereits bestehenden.

Build Master-Status NuGet Packagestatus
ACConfigBuilder Build Status ACConfigbuilder ACConfigbuilder package in artifact_ACB feed in Azure Artifacts

Installation

Für die Installation wird .Net Core 2.2 SDK oder neuer gebraucht.
Ist .Net Core 2.2 SDK installiert, benutze folgenden Code

dotnet tool install --global ACConfigBuilder

Hast du schon eine ältere Version istalliert und möchtest diese auf eine neuere updaten, benutze folgenden Code

dotnet tool update --global ACConfigBuilder

Benutzung

Usage: acb [options] [command]

Options:
  -h|--help  Show help information

Commands:

  create     Erstellt eine neue Configvorlage.
  replace    Dieser Befehl soll es ermöglichen die hinterlegte Konfiguration zu editieren. 

Replace-Command

Der Replace-Command soll eine bereits bestehende Konfiguration editieren.
Dazu muss man in der Change.json im Configordner angeben, wo etwas geändert werden muss.

Beispiel für Change.json
{
    "configurenetwork": {
      "networkdev": [
        {
          "listid": <\value>,
          "vlan": "<\value>",
          "underlyingif": "<\value>",
          "Name" : "<\value>",
          "tag": "<\value>"
        }
      ],
      "interfacenetworkif":[
        {
          "listid": <\value>,
          "apptype": "<\value>",
          "ipaddress":"<\value>",
          "prefixlength": <\value>,
          "gateway": "<\value>",
          "Name": "<\value>",
          "underlyingdev": "<\value>"
        }
      ]
    },
    "configureviop":{
      "proxyset":[
        {
          "listid": <\value>,
          "proxyname": "<\value>",
          "proxyenablekeepalive": "<\value>",
          "srdname":"<\value>",
          "sbcipv4sipintname": "<\value>",
          "keepalivefailresp":"<\value>",
          "successdetectretries": <\vaule>,
          "successdetectint" : <\value>,
          "proxyredundancymode" : "<\value>",
          "isproxyhotswap": <\value>,
          "proxyloadbalancingmethod": <\value>,
          "minactiveservlb": <\value>
        }
      ],
      "proxyip":[
        {
          "ip": "<\value>",
          "proxyadress": "<\value>",
          "transporttype": "<\value>"
        }
      ]
    }
}
ListId, beschreibt in diesem Kontext, den Wert, welcher nach ```network-dev``` , ```ìnterface network-if``` oder ```proxy-set``` kommen würde.
Damit beschreibt ListId, welcher Abschnitt in der Konfiguration bearbeitet werden soll.

Options für die Commands

Replace

Der Replace-Command hat eine zusätzliche Option.
acb replace --path <path> Mit der Option --path <path> wird dauerhaft der Pfad, in welchem das Programm nach Konfigurationen zum überarbeiten sucht verädnert.
Default ist der Wert auf den Samplesordner gelegt.

Create

Der Create-Command hat mehrere zusätzliche Optionen.
acb create --path <path> Mit der Option --path <path> wird der Pfad, welcher angibt wo die leere Konfiguration erstellt werden soll, für diese Ausführung verändert.

acb create --networkdev <anzahl> Mit der Option --networkdev <anzahl> wird die Anzahl der network-dev Blöcken varriert, standartmäßig ist diese auf 1 gesetzt.

acb create --interfacenetworkif <anzahl> Mit der Option --interfacenetworkif <anzahl> wird die Anzahl der interface network-if Blöcken varriert, standartmäßig ist diese auf 1 gesetzt.

acb create --proxyset <anzahl> Mit der Option --proxyset <anzahl> wird die Anzahl der proxy-set Blöcken varriert, standartmäßig ist diese auf 1 gesetzt.

acb create --proxyip <anzahl> Mit der Option --proxyip <anzahl> wird die Anzahl der proxy-ip Blöcken varriert, standartmäßig ist diese auf 1 gesetzt.

Danke das du dir die Zeit genommen hast mich zu lesen.

Habe einen schönen Tag :)