charly Termine 
Herzlich Willkommen bei charly Termine – einer App für das mobile Betriebssystem iOS von Apple, die für für alle gängigen iOS-Geräte (iPhone, iPad, iPod touch) im Hochformat entwickelt wurde.
Mit charly Termine haben Sie Ihre Termine immer griffbereit. Neue Termine reservieren Sie mit der App ebenfalls – von zu Hause oder unterwegs.
Voraussetzungen
Für die Verwendung von charly Termine im Zusammenspiel mit charly gelten die folgenden Voraussetzungen:
- iPhone, iPad oder iPodtouch mit iOS 12.4 oder neuer
- charly ab der Version 9.17.0b
- Java-Laufzeitumgebung (JRE) in Version 8 – entweder von AdoptOpenJDK oder von Oracle
Datenaustausch
Für den Abgleich der Termine zwischen charly und der App charly Termine sind eine Reihe von Komponenten im Einsatz.
Ablauf
Das folgende Schaubild zeigt den grundsätzlichen Ablauf des Datenaustauschs:
- Ausgangspunkt ist das charly-Terminbuch. Alle Behandler, für die im Terminbuch eine Terminspalte angelegt ist, können ihre Termine in die App charly Termine übermitteln.
- Der Apps-Service extrahiert die Termine der Behandlers aus der charly-Datenbank und erstellt daraus pro Behandler eine .ics-Kalenderdatei.
- Die .ics-Kalenderdateien übermittelt der Apps-Service an den WebDAV-Server.
- Mittels eines Kalenderabonnements werden die Termine der .ics-Kalenderdatei in die App charly Termine übertragen.
- Wenn mit der App charly Termine ein Terminblocker angelegt wird, wird dieser in Form einer .xml-Datei an den WebDAV-Server übertragen.
- Der Apps-Service holt die .xml-Datei vom WebDAV-Server und überträgt den Terminblocker in die charly-Datenbank.
- Der Terminblocker wird in Form eines „Terminvorgabebereichs“ in der Terminspalte des Behandlers im charly-Terminbuch dargestellt.
WebDAV-Server
WebDAV (Web-based Distributed Authoring and Versioning) ist ein Netzwerkprotokoll zur Bereitstellung von Dateien über das Internet. Damit können Dateien über das Internet geteilt, kopiert, verschoben und geändert werden. Die Benutzer greifen über eine Art Online-Festplatte auf ihre Daten zu.
Apps-Service
Der Apps-Service ist einer von mehreren Serverkomponenten (sogenannten „Microservices“), die in der Summe den charly-Java-Server bilden. Der charly-Java-Server ist automatisch in charly enthalten und wird im Rahmen der charly-Updates laufend aktualisiert.
Einmal konfiguriert, hat der Apps-Service folgende Aufgaben:
- Der Apps-Service erstellt in regelmäßigen Zeitintervallen für die Behandler des charly-Terminbuchs jeweils eine Kalenderdatei im .ics-Format („iCalendar“ – ein Datenformat zum Austausch von Kalenderinhalten) und übermittelt diese .ics-Dateien an den WebDAV-Server.
- Mit der App charly Termine werden Terminblocker in Form einer .xml-Datei erstellt und an den WebDAV-Server übermittelt. Diese .xml-Datei holt der Apps-Service ab und überträgt den darin enthaltenen Terminblocker in das charly-Terminbuch. Nachdem der Apps-Service eine .xml-Datei verarbeitet hat, löscht er sie automatisch von dem WebDAV-Server.
Datenschutz
WebDAV-Server
Für den Zugriff auf den WebDAV-Server empfehlen wir, einen eigenen WebDAV-Dienst in der Praxis einzurichten, der nur per VPN zugänglich ist. VPN steht für „Virtual Private Network“. Das sind „virtuelle private Netzwerke“, durch die das Risiko für unbefugte Zugriffe beim Surfen über öffentliche Zugänge minimiert werden kann. Dabei werden sogenannte VPN-Tunnel zwischen dem Endgerät und dem VPN-Server aufgebaut, zwischen denen der Datenverkehr nach Authentifizierung verschlüsselt übertragen wird.
Sofern Sie einen charly mit mehreren Mandanten haben, empfehlen wir, für diese Mandanten unterschiedliche WebDAV-Konten oder mindestens unterschiedliche Verzeichnisse zu verwenden. Dazu geben Sie in der Konfiguration des Apps-Services für die Instanzen unterschiedliche WebDAV-Konten bzw. die unterschiedlichen Verzeichnisse an. Siehe Beispiel-Konfiguration 2 (mit zwei Instanzen).
Apps-Service
Der Apps-Service ist in seiner Voreinstellung datenschutzkonform („PRIVATE“). Das heißt, die .ics-Dateien, die der Apps-Service für charly Termine erstellt, enthalten keine personenbezogenen Daten. Stattdessen sehen Sie die Terminart bzw. eine Termin-ID.
Diese Voreinstellung können Sie ändern, indem Sie in der Konfigurationsdatei des Apps-Services – der Datei „application.yml“ – den Content-Toggle-Button in „FULL“ ändern.
Siehe Wie ändere ich die Konfiguration des Apps-Services?.
App charly Termine
Mit charly Termine können Sie Termine („Terminblocker“) anlegen, die in Form von .xml-Dateien zum WebDAV-Server übertragen werden. Beim Anlegen dieser Termine vergeben Sie in der App einen Termin-Titel, der später im charly-Terminbuch angezeigt wird.
Installation und Konfiguration
WebDAV-Server einrichten
Möglicherweise verfügen Sie bereits über einen WebDAV-Server als Bestandteil des Vertrages mit Ihrem E-Mail- oder Internet-Anbieter. Sollte dies nicht der Fall sein, müssen Sie einen WebDAV-Server einrichten. Je nach Anbieter können dadurch zusätzliche Kosten entstehen.
Sobald der Apps-Service auf Ihren WebDAV-Server konfiguriert wurde (siehe Apps-Service konfigurieren), werden Abonnements in Form von .ics-Dateien auf den WebDAV-Server geschrieben. Diese .ics-Dateien können dann abonniert werden (siehe Abonnement für die Anzeige von Terminen einrichten).
- einen eigenen WebDAV-Dienst in der Praxis einzurichten, der nur per VPN-Tunnel zugänglich ist.
- auf dem WebDAV-Server für den Datenaustausch mit der App charly Termine pro Konfiguration (Instanz) ein eigenes Verzeichnis anzulegen.
- für unterschiedliche Mandanten unterschiedliche WebDAV-Konten oder mindestens unterschiedliche Verzeichnisse innerhalb eines WebDAV-Kontos zu verwenden.
Apps-Service konfigurieren
Der Apps-Service ist einer von mehreren Serverkomponenten (sogenannten „Microservices“), die in der Summe den charly-Java-Server bilden. Der charly-Java-Server ist automatisch in charly enthalten und wird im Rahmen der charly-Updates laufend aktualisiert.
Damit der Apps-Service die .ics-Dateien auf den WebDAV-Server schreiben und die Terminblocker (.xml-Dateien) vom WebDAV-Server in das charly-Terminbuch importieren kann, muss die kundenspezifische „application.yml“-Datei des Apps-Service konfiguriert werden. Die Konfiguration teilt sich auf in globale Einstellungen und Einstellungen für die Instanzen.
So konfigurieren Sie den Apps-Service
Voraussetzungen
- Sie verfügen über Administratorrechte für den Server, auf dem charly bzw. der charly-Java-Server installiert sind.
- Ihnen liegen die Zugangsdaten für den WebDAV-Server vor. Bei einem charly-Mandantensystem lautet die Empfehlung, unterschiedliche WebDAV-Konten zu verwenden.
Vorgehensweise
- Öffnen Sie auf dem Server folgendes Verzeichnis:
<charly-Installationspfad>\Solutio\Server\ncjs\
- Legen Sie in diesem Verzeichnis das Verzeichnis „conf2“ und darin das Verzeichnis „apps“ an:
<charly-Installationspfad>\Solutio\Server\ncjs\conf2\apps\
- Legen Sie in dem Verzeichnis „apps“ eine Textdatei an und benennen Sie diese mit „application.yml“.
- Kopieren Sie die Standard-Konfiguration in die application.yml. Siehe Standard-Konfiguration für einen Mandanten (mit einer Instanz).
-
Bearbeiten Sie die application.yml: In der kopierten Standard-Konfiguration müssen Sie mindestens die Angaben für den WebDAV-Server hinterlegen.
Hinweis: Alle verfügbaren Einstellungen finden Sie in der Übersicht: Einstellungen in der „application.yml“-Datei für die Termine-Konfiguration. -
Damit der Apps-Service die fertig bearbeitete application.yml verwendet, muss der Apps-Service gestoppt und anschließend wieder gestartet werden:
-
Windows
-
Öffnen Sie die Administrator-Kommandozeile und geben Sie folgende Befehle ein:
cd <charly-Installationspfad>\Solutio\Server\ncjs
-
Stoppen Sie den Apps-Service:
acd.bat stop apps
-
Starten Sie den Apps-Service:
acd.bat start apps
-
-
macOS
-
Öffnen Sie das Terminal und geben Sie folgende Befehle ein:
cd <charly-Installationspfad>/Solutio/Server/ncjs
-
Stoppen Sie den Apps-Service:
sudo ./acd.sh stop apps
-
Starten Sie den Apps-Service:
sudo ./acd.sh start apps
-
-
-
Prüfen Sie, ob der Apps-Service gestartet ist:
- Öffnen Sie ein Browserfenster.
-
Geben Sie folgende URL ein:
http://<IP des charly-Servers oder IP der charly-VM (bei Containerinstallation)>:8087
- Das Eureka-Dashboard öffnet sich und zeigt alle registrierten und gestarteten Microservices des charly-Java-Servers. Nach ca. 1-2 Minuten sollte hier auch der Apps-Service gelistet sein.
Terminzuordnung in charly festlegen
Um die gesendeten Terminblocker und die importierten Termine im charly-Terminbuch anzeigen zu können, muss in den Stammdaten von charly unter Termine > Terminzuordnung eine Terminzuordnung mit der folgenden Bezeichnung angelegt werden (Bitte achten Sie auf eine korrekte Schreibweise der Bezeichnung):
Import (iPhone, iPad)
Die Terminzuordnung ist notwendig, da mit der App charly Termine der Termin in Form eines „Terminvorgabebereichs“ in das Terminbuch eingetragen wird. Diesen Terminvorgabebereich können Sie dann in charly durch einen Termin ersetzen.
Abonnement für die Anzeige von Terminen einrichten
Nachdem der Apps-Service entsprechend konfiguriert wurde, exportiert er Termine aus charly in Form von .ics-Dateien auf das WebDAV-Konto. Für jeden Mitarbeiter, der im charly-Terminbuch über eine Terminspalte verfügt und für den in einem bestimmten Zeitraum Termine vorhanden sind (1 Monat in die Vergangenheit, 3 Monate in die Zukunft), wird eine .ics-Datei in dem WebDAV-Konto angelegt. Der Name der .ics-Dateien setzt sich aus dem Nach- und Vornamen des Mitarbeiters zusammen (Nachname_Vorname.ics, z.B. „Molar_Markus.ics“).
Das Abonnement von Terminen läuft über das Abonnementsystem der Kalender-App von Apple.
Beim Einrichten des Abonnements versucht Ihr iOS-Gerät auf die .ics-Datei zuzugreifen. Deshalb sollte die .ics-Datei bereits im WebDAV-Konto vorhanden sein. Wenn Sie dies sichergestellt haben, öffnen Sie auf Ihrem Home-Bildschirm den Bereich Einstellungen. Ab iOS 14: Tippen Sie dann auf Kalender > Accounts > Account hinzufügen > Andere > Kalenderabo hinzufügen.
-
Feld Server
Im Feld Server geben Sie die Adresse (URL) Ihres WebDAV-Kontos sowie den Namen der .ics-Datei ein, die Sie abonnieren möchten.
Beispiel:https://<URL_zu_WebDAV-Server>/Molar_Markus.ics
Sollten Sie ein spezielles Verzeichnis in dem WebDAV-Konto verwenden, muss dies entsprechend mit angegeben werden.
Beispiel:https://<URL_zu_WebDAV-Server>/<Verzeichnis>/Molar_Markus.ics
-
Feld Beschreibung
Im Feld Beschreibung wird beim Einrichten des Abonnements automatisch die unter Server eingetragene WebDAV-Adresse übernommen.
Die Beschreibung wird in der Kalender-App sowie bei der Einrichtung der App charly Termine verwendet.
Daher empfiehlt es sich, die Beschreibung zu kürzen und beispielsweise in den Behandlernamen zu ändern.
Beispiel: Molar Markus -
Felder Benutzername und Passwort
In den Feldern Benutzername und Passwort geben Sie die Zugangsdaten Ihres WebDAV-Kontos ein.
Zur Überprüfung öffnen Sie bitte anschließend die Kalender-App von Apple auf Ihrem iOS-Gerät. Dort können Sie über Kalender alle eingerichteten Abonnements einsehen. Das eben eingerichtete Abonnement muss durch einen gesetzten Haken aktiviert sein – in unserem Beispiel bei „Molar Markus“.
Das Abonnement können Sie auch in anderen iCal-kompatiblen Kalendern einrichten, z.B. in „Kalender“ auf macOS. Die Synchronisation erfolgt über iCal.
charly Termine auf dem iOS-Gerät installieren
Zur Installation benötigen Sie Ihr eingeschaltetes iOS-Gerät mit Internetverbindung.
So installieren Sie charly Termine
- Tippen Sie auf das „App Store“-Symbol, um den App Store von Apple zu öffnen.
-
Tragen Sie im Suchfeld die Begriffe „solutio charly“ ein. Tippen Sie anschließend auf der eingeblendeten Tastatur auf Suchen. Wählen Sie charly Termine und laden Sie die App kostenlos.
-
Nach erfolgreicher Installation sehen Sie auf Ihrem Home-Bildschirm die App charly Termine
.
-
charly Termine auf dem iOS-Gerät einrichten
Tippen Sie auf dem Home-Bildschirm Ihres iOS-Gerätes auf das „Einstellungen“- Icon, um in das Menü für die Geräteeinstellungen zu gelangen. Hier finden Sie auch die App charly Termine, für die ebenfalls das WebDAV-Konto eingerichtet werden muss.
Im Bereich Export hinterlegen Sie die URL sowie die Zugangsdaten zu Ihrem WebDAV-Konto. Des Weiteren geben Sie die Benutzer-ID des Mitarbeiters an, für den die App konfiguriert werden soll. Diese Konfiguration benötigen Sie, damit die Terminblocker („Termine“), die Sie mit der App anlegen, zum WebDAV-Server gesendet werden können. Von dort werden die Terminblocker vom charly-Java-Server in das charly-Terminbuch übertragen.
-
Feld WebDAV-Server
Im Feld WebDAV-Server geben Sie die Adresse (URL) Ihres WebDAV-Kontos ein.
Falls Sie ein spezielles Verzeichnis in dem WebDAV-Konto verwenden, geben Sie dieses ebenfalls an.
Beispiel:https://<URL_zu_WebDAV-Server>/<Verzeichnis>/
-
Felder WebDAV-Benutzer und WebDAV-Passwort
Unter WebDAV-Benutzer und WebDAV-Passwort geben Sie die Zugangsdaten Ihres WebDAV-Kontos ein.
-
Feld charly-Benutzer-ID
Unter charly-Benutzer-ID geben Sie die Benutzer-ID des Mitarbeiters an, für den die App charly Termine konfiguriert werden soll.
Die Benutzer-ID (in charly Benutzernummer genannt), finden Sie in charly in den Stammdaten > Praxis > Beschäftigte rechts neben der Überschrift Benutzerkennung.
Im Bereich Import geben Sie den Namen des Kalenderabonnements ein.
-
Feld Kalenderabonnement
Damit die in charly angelegten Termine in der App charly Termine ebenfalls angezeigt werden, geben Sie unter Kalenderabonnement den Namen des Kalenderabonnements an, den Sie zuvor bei der Einrichtung des Abonnements in das Feld Beschreibung eingegeben hatten. Siehe Abonnement für die Anzeige von Terminen einrichten.
charly Termine das erste Mal starten
Starten Sie charly Termine auf dem Home-Bildschirm Ihres iOS-Gerätes.
Beim ersten Start nach der Installation der App öffnet sich die Seite „Nutzungsdaten und Absturzberichte“. Definieren Sie über den Toggle-Button Daten senden, ob Sie anonymisierte Nutzungsdaten und Absturzberichte senden möchten.
- Toggle-Button Daten senden aktiviert: Die Nutzungsdaten und Absturzberichte werden gesendet.
- Toggle-Button Daten senden deaktiviert: Es werden keine Nutzungsdaten und Absturzberichte gesendet.
Möglicherweise erhalten Sie beim ersten Start nach der Installation auch den Hinweis, dass auf den Kalender nicht zugegriffen werden kann und deswegen die Datenschutz-Einstellungen geändert werden müssen. Dazu verlassen Sie charly Termine, tippen auf dem Home-Bildschirm auf Einstellungen und navigieren zu Datenschutz. Wählen Sie dort Kalender und verschieben bei Termine den Toggle-Button nach rechts.
charly Termine auf dem iOS-Gerät aktualisieren
Öffnen Sie den App Store auf dem Home-Bildschirm Ihres iOS-Gerätes und wählen Sie Updates in der unteren Navigation.
Wenn Apps auf Ihrem Gerät nicht auf dem aktuellen Stand sind, werden die neuen Versionen hier zum Download angeboten.
Die Funktionen der App charly Termine
charly Termine starten
charly Termine starten Sie durch Tippen auf das Symbol mit der Beschriftung Termine .
Das Hauptfenster – die einzelnen Funktionen
-
Pfeil links
Rufen sie den vorherigen Monat auf.
-
Pfeil rechts
Rufen Sie den folgenden Monat auf.
-
Monatskalender
Tippen Sie in dem Monat auf das gewünschte Datum, um die Termine anzuzeigen bzw. für den gewählten Tag einen Terminblocker einzutragen.
-
Terminliste
In der Terminliste sehen Sie alle aus charly importierten Termine sowie alle zu charly gesendeten Terminblocker (zur Erklärung der Symbole, siehe Statusanzeige der Termine).
-
Button Heute
Rufen Sie den aktuellen Tag auf.
-
Button Löschen
Löschen Sie sämtliche in der App angelegten Terminblocker aus der Ansicht (Tagübergreifend). Es werden nur Terminblocker entfernt, denen ein grünes Briefsymbol vorangestellt ist.
-
Button Plus (+)
Legen Sie einen neuen Terminblocker für das aktuell ausgewählte Datum an.
Neuen Terminblocker im Terminbuch anlegen
Mit charly Termine können Sie Terminblocker für das Terminbuch in charly anlegen. Dieser Terminblocker wird mit Datum und Uhrzeit an den konfigurierten WebDAV-Server gesendet und von dort mit dem charly-Java-Server in das charly-Terminbuch übertragen. Im charly-Terminbuch können Sie die Terminblocker dann durch einen Termin ersetzen.
Wählen Sie in dem Hauptfenster zunächst Monat und Tag, an dem ein Terminblocker angelegt werden soll. Tippen Sie anschließend im Hauptfenster auf den Button Plus (+), um das Fenster Termineingabe zu öffnen:
-
Oberstes Feld
Vergeben Sie mithilfe der eingeblendeten Tastatur einen Titel für den neuen Terminblocker.
-
Auswahl Anfang und Ende
Über das Auswahlrad stellen Sie Anfang und Dauer des Terminblockers ein – je nachdem, welches der beiden gerade markiert ist.
-
Button Senden
Tippen Sie auf Senden um den Terminblocker anzulegen und gleichzeitig in das WebDAV-Konto zu übertragen. Eine Hinweismeldung zeigt, ob der Terminblocker übertragen werden konnte.
Statusanzeige der Termine
Termindetails aufrufen
Die Termine werden unter der Kalenderansicht in Form einer Liste dargestellt. Um Details zum jeweiligen Termin anzuzeigen, tippen Sie auf den gewünschten Termin. Damit öffnet sich das Fenster Termindetails. Hier können Sie Titel, Anfang, Ende und Details sehen.
charly Termine mit charly in der Praxis synchronisieren
Die App charly Termine nimmt automatisch eine Synchronisation vor, sofern
- eine Internetverbindung besteht
- das Abonnement eingerichtet ist
- die Kalender-App von Apple geöffnet ist
- das Abonnement in der Kalender-App aktiv ist
Beim Erstellen eines neuen Terminblockers wird dieses durch Tipp auf Senden automatisch an das WebDAV-Konto geschickt und von dort mithilfe des Apps-Services in das charly-Terminbuch übertragen.
Umgekehrt überträgt der Apps-Service standardmäßig alle zwei Minuten eine aktualisierte .ics-Datei aus dem charly-Terminbuch in das WebDAV-Konto. Über das Kalenderabonnement ruft die App charly Termine diese .ics-Datei ab. Dazu muss das Kalenderabonnement zunächst in der Kalender-App von Apple aktualisiert werden. Dies können Sie auch manuell veranlassen.
So aktualisieren Sie das Kalenderabonnement manuell
-
Öffnen Sie die App „Kalender“.
-
Tippen Sie in der Kalender-App auf den Button Kalender.
- Eine Liste mit allen angelegten und abonnierten Kalendern wird angezeigt.
- Prüfen Sie, dass in der Liste das Kalenderabonnement für die App charly Termine aktiviert ist.
-
Streichen Sie über die Liste nach unten.
-
Tippen Sie in der Liste auf den ButtonFertig.
- Der Kalender ist aktualisiert.
-
Öffnen Sie die App charly Termine.
- Die Termine in der App sind aktualisiert.
System-Einstellungen der App charly Termine
In den System-Einstellungen können Sie charly Termine konfigurieren. Außerdem finden Sie allgemeine Informationen zu der App.
Um die Einstellungen von charly Termine aufzurufen, tippen Sie auf dem Home-Bildschirm Ihres iOS-Geräts auf den Button . Suchen Sie in der Tabelle nach „Termine“ und tippen Sie darauf. Dadurch werden die Einstellungen von charly Termine angezeigt.
Dieser Bereich wird automatisch vom iOS-Betriebssystem angelegt. Sobald Sie charly Termine das erste Mal öffnen, werden Sie vom iOS-Betriebssystem gefragt, ob Sie den Zugriff auf den Kalender erlauben möchten.
Um die Termine aus dem charly-Terminbuch mit der App charly Termine synchronisieren zu können, muss der Toggle-Button Kalender aktiv sein.
Im Bereich Export hinterlegen Sie die URL sowie die Zugangsdaten zu Ihrem WebDAV-Konto. Des Weiteren geben Sie die Benutzer-ID des Mitarbeiters an, für den die App konfiguriert werden soll. Diese Konfiguration benötigen Sie, damit die Terminblocker („Termine“), die Sie mit der App anlegen, zum WebDAV-Server gesendet werden können. Von dort werden die Terminblocker vom charly-Java-Server in das charly-Terminbuch übertragen.
-
Feld WebDAV-Server
Im Feld WebDAV-Server geben Sie die Adresse (URL) Ihres WebDAV-Kontos ein.
Falls Sie ein spezielles Verzeichnis in dem WebDAV-Konto verwenden, geben Sie dieses ebenfalls an.
Beispiel:https://<URL_zu_WebDAV-Server>/<Verzeichnis>/
-
Felder WebDAV-Benutzer und WebDAV-Passwort
Unter WebDAV-Benutzer und WebDAV-Passwort geben Sie die Zugangsdaten Ihres WebDAV-Kontos ein.
-
Feld charly-Benutzer-ID
Unter charly-Benutzer-ID geben Sie die Benutzer-ID des Mitarbeiters an, für den die App charly Termine konfiguriert werden soll.
Die Benutzer-ID (in charly Benutzernummer genannt), finden Sie in charly in den Stammdaten > Praxis > Beschäftigte rechts neben der Überschrift Benutzerkennung.
Im Bereich Import geben Sie den Namen des Kalenderabonnements ein.
-
Feld Kalenderabonnement
Damit die in charly angelegten Termine in der App charly Termine ebenfalls angezeigt werden, geben Sie unter Kalenderabonnement den Namen des Kalenderabonnements an, den Sie zuvor bei der Einrichtung des Abonnements in das Feld Beschreibung eingegeben hatten. Siehe Abonnement für die Anzeige von Terminen einrichten.
Um die Stabilität und Zuverlässigkeit von charly Termine zu verbessern, sind in der App die Dienste „Firebase Crashlytics“ sowie „Google Analytics for Firebase“ implementiert.
Beim ersten Start nach einer Neuinstallation von charly Termine werden Sie im Konfigurationsassistenten automatisch gefragt, ob Sie anonymisierte Nutzungsdaten und Absturzberichte senden möchten. Die Entscheidung, die Sie dort treffen, wird in den System-Einstellungen der App im Bereich Nutzungsdaten und Absturzberichte gespeichert. Über die Funktion Nutzungsdaten und Absturzberichte senden können Sie Ihre Entscheidung jederzeit ändern.
- Toggle-Button Nutzungsdaten und Absturzberichte senden aktiviert: Die Nutzungsdaten und Absturzberichte werden gesendet.
- Toggle-Button Nutzungsdaten und Absturzberichte senden deaktiviert: Es werden keine Nutzungsdaten und Absturzberichte gesendet.
Ausführliche Informationen zu den verwendeten Diensten finden Sie in den Systemeinstellungen der App im Bereich Datenschutzerklärung.
In dem Bereich Produktinformation sehen Sie Informationen zur installierten Version von charly Termine sowie zu verwendeten Bibliotheken.
Des Weiteren befindet sich hier der Bereich Datenschutzerklärung, in dem Sie ausführliche Informationen zu den Diensten „Firebase Crashlytics“ und „Google Analytics for Firebase“ finden.
FAQ
Problem: In der App charly Termine wird der Kalender nicht aktualisiert. Dort werden z.B. noch Termine angezeigt, die im charly-Terminbuch inzwischen gelöscht wurden.
Ursache: Das Abonnement von Terminen läuft über das Abonnementsystem der Kalender-App von Apple (siehe Abonnement für die Anzeige von Terminen einrichten). Das bedeutet, dass auch die Aktualisierung der Termine aus dem charly-Terminbuch über die Kalender-App läuft. Normalerweise synchronisiert die Kalender-App selbständig das Abonnement. Sie können diese Aktualisierung aber auch manuell durchführen.
Lösung: Führen Sie eine manuelle Aktualisierung der Kalender-App durch.
-
Öffnen Sie die App „Kalender“.
-
Tippen Sie in der Kalender-App auf den Button Kalender.
- Eine Liste mit allen angelegten und abonnierten Kalendern wird angezeigt.
- Prüfen Sie, dass in der Liste das Kalenderabonnement für die App charly Termine aktiviert ist.
-
Streichen Sie über die Liste nach unten.
-
Tippen Sie in der Liste auf den Button Fertig.
- Der Kalender ist aktualisiert.
-
Öffnen Sie die App charly Termine.
- Die Termine in der App sind aktualisiert.
Voraussetzungen macOS
-
Bei der Installation von Java wurde der Pfad zu
JAVA_HOME
gesetzt. Über folgenden Befehl können Sie den Pfad nachträglich setzen:echo "export JAVA_HOME=`/usr/libexec/java_home -v 1.8`" >> ~/.bash_profile
Vorgehensweise
-
Öffnen Sie die Eingabeaufforderung (Windows) bzw. das Terminal (macOS):
Windows
- Klicken Sie in der Task-Leiste auf Start bzw. das Windows-Symbol.
- Wählen Sie Windows-System.
- Wählen Sie Eingabeaufforderung.
macOS
- Öffnen Sie im Finder ein Fenster.
- Gehen Sie unter Programme > Dienstprogramme.
- Öffnen Sie das Programm Terminal.app.
-
Geben Sie in der Eingabeaufforderung bzw. dem Terminal folgenden Befehl ein:
java -version
-
Drücken Sie die Enter-Taste.
-
Die Java-Version, die die auf Ihrem Server installiert ist, wird ausgegeben.
Beispiel: Ausgabe für eine JRE von OracleKopierenjava version "1.8.0_73"
Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)Beispiel: Ausgabe für eine JRE von AdoptOpenJDKopenjdk version "1.8.0_222"
OpenJDK Runtime Environment (AdoptOpenJDK) (build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK) (build 25.222-b10, mixed mode)
-
Der Apps-Service ist einer von mehreren Serverkomponenten (sogenannten „Microservices“), die in der Summe den charly-Java-Server bilden. Der charly-Java-Server ist automatisch in charly enthalten und wird im Rahmen der charly-Updates laufend aktualisiert.
Seit der charly-Version 9.17.0b enthält der Apps-Service die Funktionalitäten für die App charly Termine:
- .ics-Kalenderdateien für Behandler anlegen und an WebDAV-Server übermitteln
- Terminblocker aus der App charly Termine in charly-Terminbuch eintragen
Der Apps-Service ist ein Microservice, der mit Hilfe der Datei „application.yml“ konfiguriert wird. Die Konfiguration teilt sich auf in globale Einstellungen und Einstellungen für die Instanzen.
Eine Übersicht der Einstellungen finden Sie im Kapitel Einstellungen in der „application.yml“-Datei für die Termine-Konfiguration. Beispiel-Konfigurationen finden Sie im Kapitel Beispiel-Konfigurationen für die Datei „application.yml“.
Installationspfad charly-Java-Server (ncjs)
Alle Komponenten des charly-Java-Servers befinden sich auf dem charly-Server unter folgendem Pfad:<charly-Installationspfad>\Solutio\Server\ncjs
Kundenspezifische Konfiguration
Für kundenspezifische Konfigurationen muss unter „ncjs“ zusätzlich das Verzeichnis „conf2“ angelegt und darin in dem Unterverzeichnis „apps“ die kundenspezifische „application.yml“-Datei abgelegt werden.<charly-Installationspfad>\Solutio\Server\ncjs\conf2\apps\application.yml
Voraussetzungen
- Sie verfügen über Administratorrechte für den Server, auf dem charly bzw. der charly-Java-Server installiert sind.
Windows
-
Öffnen Sie auf dem Server die Administrator-Kommandozeile und geben Sie folgende Befehle ein:
cd <charly-Installationspfad>\Solutio\Server\ncjs
-
Stoppen Sie den Apps-Service:
acd.bat stop apps
-
Starten Sie den Apps-Service:
acd.bat start apps
macOS
-
Öffnen Sie auf dem Server das Terminal und geben Sie folgende Befehle ein:
cd <charly-Installationspfad>/Solutio/Server/ncjs
-
Stoppen Sie den Apps-Service:
sudo ./acd.sh stop apps
-
Starten Sie den Apps-Service:
sudo ./acd.sh start apps
(Undefined variable: solutio_TextVariables.ProcedureSteps)Start des Apps-Service prüfen
- Öffnen Sie ein Browserfenster.
-
Geben Sie folgende URL ein:
http://<IP des charly-Servers oder IP der charly-VM (bei Containerinstallation)>:8087
- Das Eureka-Dashboard öffnet sich und zeigt alle registrierten und gestarteten Microservices des charly-Java-Servers. Der Apps-Service benötigt ca. 1-2 Minuten, bis er fertig gestartet ist und in dem Eureka-Dashboard gezeigt wird.
(This is the Drop-down text)
Die Konfiguration des Apps-Services ist in der Datei „application.yml“ hinterlegt. Für Änderungen an der Konfiguration, müssen Sie diese Datei bearbeiten.
Voraussetzungen
- Sie verfügen über Administratorrechte für den Server, auf dem charly bzw. der charly-Java-Server installiert sind.
Vorgehensweise
-
Öffnen Sie auf dem Server folgendes Verzeichnis:
<charly-Installationspfad>\Solutio\Server\ncjs\conf2\apps\
-
Bearbeiten Sie die „application.yml“-Datei.
Hinweis: Alle verfügbaren Einstellungen finden Sie in der Übersicht: Einstellungen in der „application.yml“-Datei für die Termine-Konfiguration. - Damit der Apps-Service die fertig bearbeitete „application.yml“-Datei verwendet, muss der Apps-Service gestoppt und anschließend wieder gestartet werden. Siehe Wie stoppe und starte ich den Apps-Service?.
Problem: Seit dem Update auf charly 9.17.0 sehe ich in der App keine Patientennamen mehr.
Ursache: Seit der charly-Version 9.17.0 enthält der Apps-Service die Funktionalitäten für die App charly Termine.
Die Termine-Funktionalität des Apps-Service ist standardmäßig auf „PRIVATE“ eingestellt. So werden datenschutzkonform keine personenbezogenen Daten (Patientenname und Freitext-Beschreibung des Termins) in der App gezeigt. Stattdessen sehen Sie die Terminart bzw. eine Termin-ID.
Lösung: Um personenbezogene Daten in der App zu sehen, ändern Sie in der "application.yml"-Datei in der folgenden Einstellung den Wert "PRIVATE" auf "FULL":de.solutio.ncjs.apps.appointment.instances.migrated-configs.content: PRIVATE
Siehe Wie ändere ich die Konfiguration des Apps-Services?.
Problem: In der App charly Termine wird der Benutzer nicht synchronisiert. Das Log des Apps-Service (NCJS-Apps.log) zeigt den folgenden Fehler.
Caused by: de.solutio.ncjs.appointment.storage.WebDAVUploadException: failed to write webdav location xxx
Ursache: Das Verzeichnis, in dem die Datei gespeichert werden soll, existiert nicht. Oder in der „application.yml“-Datei ist der Verzeichnisname falsch geschrieben.
Lösung: Legen Sie auf dem WebDAV-Server das Verzeichnis an oder ändern Sie in der„application.yml“-Datei die URL des WebDAV-Servers. Starten Sie den Apps-Service anschließend neu. Siehe Wie ändere ich die Konfiguration des Apps-Services?.
Einstellungen in der „application.yml“-Datei für die Termine-Konfiguration
Der Apps-Service ist ein Microservice, der mit Hilfe der Datei „application.yml“ konfiguriert wird. Siehe Wie ändere ich die Konfiguration des Apps-Services?
Unter dem Key de.solutio.ncjs.apps.appointment
konfigurieren Sie das Verhalten der Termine-Synchronisation für die App charly Termine. Die Properties aus den Tabellen müssen jeweils an den Key angehängt werden, um den Key-Value zu vervollständigen.
de.solutio.ncjs.apps.appointment.enabled
Die Konfiguration teilt sich auf in globale Einstellungen und Einstellungen für die Instanzen. Sowohl in den globalen Einstellungen als auch in den Instanzen-Einstellungen gibt es notwendige (Status „required“) und optionale (Status „optional“) Einstellungen.
Beispiel-Konfigurationen finden Sie unter Beispiel-Konfigurationen für die Datei „application.yml“.
Globale Einstellungen sind allgemeine Einstellungen, die für alle angelegten Instanzen gelten, es sei denn, sie werden in den Instanzen mit anderen spezifischen Einstellungen überschrieben. In den globalen Einstellungen wird z.B. festgelegt, ob die Termine-Synchronisation aktiviert ist.
Property | Status | Default | Beschreibung |
---|---|---|---|
enabled
|
Required | - | definiert, ob die Termine-Synchronisation aktiv ist oder nicht. Werte: true /false |
content
|
Optional | PRIVATE | definiert, ob Termine mit („FULL“) oder ohne Patientendaten („PRIVATE“) exportiert werden. Die Voreinstellung ist datenschutzkonform „PRIVATE“. Diese Voreinstellung ist auch dann aktiv, wenn in der „application.yml“-Datei der Key de.solutio.ncjs.apps.appointment.content nicht enthalten ist. Werte: FULL /PRIVATE |
schedule
|
Optional | '0 */2 * * * *' | definiert, in welchen Zeitintervallen die Termine-Synchronisation erfolgen soll. Das Intervall wird via Cron-Expression ausgedrückt. Voreinstellung ist 2 Minuten. |
Es können beliebig viele Instanzen definiert werden. Dadurch können spezifische WebDAV-Settings für einzelne Behandler oder auch Mandanten erstellt werden. Jede Instanz benötigt einen eindeutigen Namen (#name#). Den Namen können Sie frei vergeben.
Verwenden Sie für die Instanzen-Namen ausschließlich Buchstaben (a-z), Ziffern (0-9), Unterstriche („_“) und Gedankenstriche („-“). Leerzeichen sind nicht erlaubt.
Property | Status | Default | Beschreibung |
---|---|---|---|
instances.#name#.enabled
|
Required | false | definiert, ob die Instanz aktiv ist oder nicht. Werte: true /false |
instances.#name#.tenant
|
Required | - |
definiert von welchem Mandanten die Termine synchronisiert werden sollen. Beispiel: Um die Termine für Behandler von Mandant 2 zu synchronisieren, geben Sie die Ziffer „2“ an.
Hinweis: Wenn keine Black- und/oder Whitelist definiert ist, werden alle Behandler des angegebenen Mandanten mit Terminspalte im charly-Terminbuch synchronisiert.
|
instances.#name#.blacklist
|
Optional | Leere Liste |
definiert, welche Behandler-IDs nicht synchronisiert werden sollen. Werte: komma-separierte Liste. Beispiel: „1,3,18“ sind die Behandler mit den Behandler-IDs 1, 3 und 18.
|
instances.#name#.whitelist
|
Optional | Leere Liste |
definiert, welche Behandler-IDs synchronisiert werden. Werte: komma-separierte Liste. Hinweis: Wenn die Behandler-ID sowohl auf der Black- als auch der White-Liste steht, wird die Behandler-ID nicht synchronisiert.
|
instances.#name#.content
|
Optional | DEFAULT | definiert ob die Termine mit oder ohne Patientendaten exportiert werden. Werte: PRIVATE /FULL /DEFAULT . Der Default-Wert übernimmt die Einstellung aus der globalen Einstellung. |
instances.#name#.webdav.server
|
Required | - |
ist die URL des WebDAV-Servers. Die URL kann auf ein Verzeichnis auf dem WebDAV-Server verweisen. Das Verzeichnis muss bereits angelegt sein. Der Apps-Service legt keine Verzeichnisse auf dem WebDAV-Server an. Beispiel: Auf dem WebDAV-Server ist das Verzeichnis „/mandant1/termine“ angelegt, über das die Synchronisation für die Instanz mit dem Namen „mandant1“ laufen soll.
|
instances.#name#.webdav.username
|
Required | - | ist der Benutzername für den WebDAV-Server |
instances.#name#.webdav.password
|
Required | - | ist das Passwort für den WebDAV-Server |
instances.#name#.webdav.allow-self-signed-certificate
|
Optional | false | definiert, ob selbst signierte SSL-Zertifikate erlaubt sind |
Beispiel-Konfigurationen für die Datei „application.yml“
Alle verfügbaren Einstellungen finden Sie in der Übersicht: Einstellungen in der „application.yml“-Datei für die Termine-Konfiguration.
Standard-Konfiguration für einen Mandanten (mit einer Instanz)
- Kalenderdateien werden ohne Patientenname und Freitext-Beschreibung des Termins erstellt („PRIVATE“ Voreinstellung, nicht gesondert in der „application.yml“-Datei konfiguriert)
- Synchronisation alle 2 Minuten (= Voreinstellung, nicht gesondert in der „application.yml“-Datei konfiguriert)
- Instanz für Mandant 1 mit dem Instanz-Namen „mandant1“; alle Behandler mit einer Spalte im Terminbuch werden synchronisiert; Kalenderdateien werden auf dem WebDAV-Server im Verzeichnis „/mandant1/termine“ abgelegt
#Globale Einstellung
de.solutio.ncjs.apps.appointment.enabled: true
#Instanzen-Einstellung fuer Mandant 1 "mandant1"
de.solutio.ncjs.apps.appointment.instances.mandant1.enabled: true
de.solutio.ncjs.apps.appointment.instances.mandant1.tenant: 1
de.solutio.ncjs.apps.appointment.instances.mandant1.webdav.server: https://<URL WebDAV-Server>/mandant1/termine
de.solutio.ncjs.apps.appointment.instances.mandant1.webdav.username: <Benutzername WebDAV-Server>
de.solutio.ncjs.apps.appointment.instances.mandant1.webdav.password: <Passwort WebDAV-Server>
Beispiel-Konfiguration 2 (mit zwei Instanzen)
- Kalenderdateien werden global ohne Patientennamen und Terminarten erstellt („PRIVATE“ = Voreinstellung, nicht gesondert in der „application.yml“-Datei konfiguriert)
- Synchronisation alle 10 Minuten
- Instanz für Mandant 1 mit dem Instanz-Namen „mandant1“; in dieser Instanz werden die Kalenderdateien für alle Behandler mit Patientenname und Freitext-Beschreibung des Termins erstellt („FULL“); alle Behandler mit einer Spalte im Terminbuch werden synchronisiert; Kalenderdateien werden auf dem WebDAV-Server im Verzeichnis „/mandant1/termine“ abgelegt
- Instanz für Mandant 2 mit dem Instanz-Namen „mandant2“; in dieser Instanz werden die Kalenderdateien für alle Behandler ohne Patientenname und Freitext-Beschreibung des Termins erstellt (Übernahme der globalen Einstellung „PRIVATE“); alle Behandler mit einer Spalte im Terminbuch werden synchronisiert; Kalenderdateien werden auf dem WebDAV-Server im Verzeichnis „/mandant2/termine“ abgelegt
# Globale Einstellungen
de.solutio.ncjs.apps.appointment.enabled: true
de.solutio.ncjs.apps.appointment.content: PRIVATE
de.solutio.ncjs.apps.appointment.schedule: '0 */10 * * * *'
# Instanzen-Einstellungen fuer Mandant 1 "mandant1"
de.solutio.ncjs.apps.appointment.instances.mandant1.enabled: true
de.solutio.ncjs.apps.appointment.instances.mandant1.content: FULL
de.solutio.ncjs.apps.appointment.instances.mandant1.tenant: 1
de.solutio.ncjs.apps.appointment.instances.mandant1.webdav.server: https://<URL WebDAV-Server Mandant1>/mandant1/termine
de.solutio.ncjs.apps.appointment.instances.mandant1.webdav.username: <Benutzername WebDAV-Server Mandant1>
de.solutio.ncjs.apps.appointment.instances.mandant1.webdav.password: <Passwort WebDAV-Server Mandant1>
# Instanzen-Einstellungen fuer Mandant 2 "mandant2"
de.solutio.ncjs.apps.appointment.instances.mandant2.enabled: true
de.solutio.ncjs.apps.appointment.instances.mandant2.tenant: 2
de.solutio.ncjs.apps.appointment.instances.mandant2.webdav.server: https://<URL WebDAV-Server Mandant2>/mandant2/termine
de.solutio.ncjs.apps.appointment.instances.mandant2.webdav.username: <Benutzername WebDAV-Server Mandant2>
de.solutio.ncjs.apps.appointment.instances.mandant2.webdav.password: <Passwort WebDAV-Server Mandant2>
Beispiel-Konfiguration 3 (mit zwei Instanzen und Black-/Whitelist)
- Kalenderdateien werden global ohne Patientennamen und Terminarten erstellt („PRIVATE“ = Voreinstellung, nicht gesondert in der „application.yml“-Datei konfiguriert)
- Instanz für Mandant 1 mit dem Instanz-Namen „full“; in dieser Instanz werden die Kalenderdateien für alle Behandler mit Patientenname und Freitext-Beschreibung des Termins erstellt („FULL“); alle Behandler mit einer Spalte im Terminbuch werden synchronisiert, ausgenommen die Behandler mit ID 4 und 10 (werden gar nicht synchronisiert); Kalenderdateien werden auf dem WebDAV-Server im Verzeichnis „/full“ abgelegt
- Zweite Instanz für Mandant 1 mit dem Instanz-Namen „private“ nur für die Behandler mit ID 4 und 10; in dieser Instanz werden die Kalenderdateien ohne Patientenname und Freitext-Beschreibung des Termins erstellt („PRIVATE“); Kalenderdateien werden auf dem WebDAV-Server im Verzeichnis „/private“ abgelegt
#Globale Einstellung
de.solutio.ncjs.apps.appointment.enabled: true
#Instanzen-Einstellung fuer Mandant 1 "full" ohne Behandler mit IDs 4 und 10
de.solutio.ncjs.apps.appointment.instances.full.enabled: true
de.solutio.ncjs.apps.appointment.instances.full.content: FULL
de.solutio.ncjs.apps.appointment.instances.full.tenant: 1
de.solutio.ncjs.apps.appointment.instances.full.blacklist: 4,10
de.solutio.ncjs.apps.appointment.instances.full.webdav.server: https://<URL WebDAV-Server>/full
de.solutio.ncjs.apps.appointment.instances.full.webdav.username: <Benutzername WebDAV-Server>
de.solutio.ncjs.apps.appointment.instances.full.webdav.password: <Passwort WebDAV-Server>
#Instanzen-Einstellung fuer Mandant 1 "private" fuer Behandler mit IDs 4 und 10
de.solutio.ncjs.apps.appointment.instances.private.enabled: true
de.solutio.ncjs.apps.appointment.instances.private.content: PRIVATE
de.solutio.ncjs.apps.appointment.instances.private.tenant: 1
de.solutio.ncjs.apps.appointment.instances.private.whitelist: 4,10
de.solutio.ncjs.apps.appointment.instances.private.webdav.server: https://<URL WebDAV-Server>/private
de.solutio.ncjs.apps.appointment.instances.private.webdav.username: <Benutzername WebDAV-Server>
de.solutio.ncjs.apps.appointment.instances.private.webdav.password: <Passwort WebDAV-Server>