Globale Variable setzen, nur wenn das Modul aktiviert ist - Ist das möglich?

  • Ich möchte ein Modul erstellen das nichts anderes macht als eine (globale) Variable auf TRUE setzt.
    In anderen Modulen möchte ich dann diese Variable abfragen und dann entsprechend reagieren.



    Beispiel:
    Modul A:
    - Wenn aktiviert, wird Variable A=TRUE gesetzt
    Modul B:
    - Wenn A=TRUE --> beende ausführung
    - Wenn A=FALSE --> führe den Rest des Moduls aus.



    Ich könnte somit per Modul A aktivierung oder deaktivierung die Ausführung von Modul B steuern.


    Ist das prinzipiell möglich?



    Ich habe leider keine Funktion gefunden mit der ich ein anderes Modul aktivieren oder deaktivieren kann. Das wäre natürlich die elegantere Lösung.


    Danke


    Daniel

  • Nach etwas probieren hat sich die folgende, noch im Detail zu testende Lösung anerboten:


    Modul A:
    - Define module type: Call-Processing
    - Activation: on all incoming calls
    - Code:

    Code
    SetVariableValue('Channel','STOP_MODULE','TRUE')
    exit


    Modul B (zum Beispiel eine Kopie des Moduls Zeitgesteuerte Umleitung)
    - Code am Anfang der Hauptroutine (oder dort wo es reinpasst - Vorsicht beim Modul Zeitgesteuerte Umleitung! Ich habe den Code nicht am Anfang sondern vor dem SWITCH Statement eingesetzt):

    Code
    GetVariableValue('Channel','STOP_MODULE') --> _value
    if(?(_value))
    exit


    Modul Reihenfolge A, B


    Wenn Modul A inaktiv ist, wird Modul B ganz durchlaufen.
    Wenn Modul A aktiv ist, wird Modul B beim 'exit' abgebrochen.



    So wie ich die Option 'Channel' verstehe, wirkt sich das ganze jeweils pro aktiven call (Channel) aus. Das heisst, beim nächsten Anruf startet das ganze von vorne.


    Sieht jemand ein Problem? Ich habe mit dieser Lösung ziemlich alles getestet was mir in den Sinn kam. Aber vielleicht verpasse ich etwas?




    Wozu das Ganze?
    Ein Kunde hat recht komplexe Zeitgesteuerte Umleitungen mit verschiedenen Zeiten und Aktionen (Ansagen, Weiterleitung auf verschiedene Mailboxen, Weiterleitung auf Nummern, etc.). An und für sich mit dem wiederholten Einsatz vom Modul Zeitgesteuerte Umleitung (in meinem Fall 4, ev. 5 aktive Module dieses Typs) kein Problem. Allerdings will der Kunde auch noch eine Möglichkeit alle Umleitungen aufs Mal ausser Kraft zu setzen, im Sinne von "es sind zwar Umleitungen definiert, aber jetzt bin ich trotzdem als Firma erreichbar". Und es sollte machbar sein mit einer Funktionstaste am Telefon.


    --> Modul A aktiv, alle Umleitungen ausser Betrieb
    --> Modul A inaktiv, alle Umleitungen in Betrieb



    Daniel

    Einmal editiert, zuletzt von DanielH ()

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!