Leider scheint es ja nicht so zu sein, dass 3cx noch vor Jahresende, also wenn letztlich auf die V20 geupdated werden muss, mit einem Mac-Client herauskommt.
3cx "behilft" sich ja mit dem Hinweis, man solle die 3cx per PWA mit/unter Chrome laufen lassen. Das funktioniert auch insofern, als dass die 3cx so tatsächlich als separate APP läuft.
ABER der große Nachteil zu früher. Früher: Wenn ein Nutzer den Desktop-Client mit dem roten Button weggeklickt hat, so lief der native 3cx-Desktop-Client im Hintergrund weiter. Der Nutzer war also stets erreichbar, auch wenn er im tagesaktuellen Geschäft mal die App geschlossen hat. Roter Button beim Mac heisst ja eben nicht, dass ein Programm komplett geschlossen wird.
Das ist aber bei der PWA Methode nicht der Fall: Wegklicken mit dem roten Button heisst: Die App ist auch komplett terminated, der Nutzer ist nicht mehr erreichbar bzw. für die anderen gar nicht anwesend.
Ich habe mir jetzt folgenden Behelf gebastelt:
Kostenlose Mac-APP Hammerspoon.
Darin folgendes Script verpackt:
local appIsRunning = false -- Flag, um den Status der App zu verfolgen
-- Watchdog für das Schließen der 3CX-App
local appWatcher = hs.application.watcher.new(function(name, event, app)
if name == "3CX" and event == hs.application.watcher.terminated then
print("3CX wurde beendet.")
appIsRunning = false -- Setzt das Flag zurück, wenn die App geschlossen wird
elseif name == "3CX" and event == hs.application.watcher.launched then
print("3CX wurde gestartet.")
appIsRunning = true -- Setzt das Flag, wenn die App gestartet wird
end
end)
appWatcher:start()
-- Periodisches Überprüfen und Neustarten der App, falls sie nicht läuft
hs.timer.doEvery(3, function()
print("Überprüfung gestartet...")
if not appIsRunning then
print("3CX läuft nicht. Starte die App neu...")
local success = hs.application.launchOrFocus("3CX")
if success then
print("3CX wurde erfolgreich neu gestartet.")
appIsRunning = true
else
print("Fehler: 3CX konnte nicht gestartet werden.")
end
else
print("3CX läuft bereits.")
end
end)
Das Script überprüft den Status der 3cx.app, und aktualisiert den Status nur dann, wenn bestimmte Ereignisse eintreten (Starten - launched / terminated - schließen).
Mit der appIsRunning-Flag als einfacher Indikator für den App-Status, basierend auf den von watcher gemeldeten Ereignissen.
Hammerspoon dann unter Systemeinstellungen - Allgemein - Anmeldeobjekte hinterlegen.
Ist zwar deutlich aufwendiger als ein nativer Mac-Client, aber immerhin ist so die ständige Erreichbarkeit der Benutzer sichergestellt. Vielleicht hilft diese Lösung etwas weiter.