Das Skript was da zu 1) verlinkt ist (mit der Erweiterung der Zeit) ist prinzipiell schon sehr weit fortgeschritten und für diesen Zweck nutzbar. Es fehlt noch die konkrete Änderung der Weiterleitungsnummer einer Nebenstelle. Das würde ich bei Interesse nachreichen.
Das Programm zu 2 könnte sein:
Nimm einen CFD C# Code Block und füge dort den C# Schnipsel ein
return (DateTimeOffset.Now.ToUnixTimeSeconds()/86400)%4;. Dieser Block liefert die Zahl an Tagen seit Start der Unixtime (1.1.1970) modulo 4 (deine Rotationsdauer des Supportes). Der CFD Block liefert daher immer eine Zahl zwischen 0 und 3, abhängig vom akt. Tag. Darunter kommt ein CFD Block 'Create a Condition', der den Rückgabewert des CFD C# Blocks 4x nebeneinander auswertet (Vergleich mit 0, 1, 2 und 3) und je nach Vergleich des Rückgabewert den Anruf mit dem CFD Block 'Transfer' zu der jeweiligen fest hinterlegten Nummer des Supporters verbindet. Das ist die einfach Variante. Das kann man noch flexibel mit Variablen ausbauen etc.. Dieses Programm - die CFA - bekommt außerhalb der Geschäftszeiten alle Supportanrufe und leitet direkt zum jeweils tag aktuellen Supporter weiter.
Vorsicht nach Mitternacht, da muss man beim C# Schnipsel einige Stunden subtrahieren. Das Skript schaltet nach dem akt. Tag um, nicht nach der akt. Nacht.
Das Programm zu 3 ist im wesentlichen abhängig von eurem Ticket System, den dort vorhandenen Daten, wie man diese auswertet und den dort vorhandenen Support Nummern. Dafür fehlen hier zu viele Daten um dir zu erklären wie man so etwas baut. Merke: der CFD hat Funktionsblöcke wie z.B. 'HTTP Request', 'Web Service REST', 'JSON / XML Parser' und 'CSV Parser'.
Stichwort Call Flow App Schnipsel