Changelog ReservixCheck

Version 1.8.2.0 2016-08-17
- Der in den ReservixCheck-Einstellungen vergebene Gerätename wird auch im Betriebssystem als Gerätename (und damit auch als Netzwerk- und Bluetooth-Hostname) gesetzt, wenn dieser NetBIOS-kompatibel ist.
- Barcodes vom Typ „2-of-5-interleaved“ mit der Länge von 24 Zeichen werden als Fremdticketcodes erkannt. Die Rückmeldung ist negativ (rot) mit den Hinweisen „Fremdticket“ und „Sichtkontrolle des Tickets“.  In der Ticketscan-Historie erscheint ein solcher Scan als „Ticket nicht gefunden (tnf)“, aber die Hintergrundfarbe der entsprechenden Zeile ist dunkelrot (statt hellrot). Dieses Verhalten lässt sich durch die Programmkonfiguration abschalten. Die Länge des Fremdticketcodes kann dort konfiguriert werden.
- Beim Scan von Fremdticketcodes vom Typ „Code39“ wird der führende und abschließende Stern automatisch ergänzt. Dementsprechend müssen solche Ticketcodes mit Stern am Anfang und Ende hochgeladen werden. Dieses Verhalten lässt sich durch die Programmkonfiguration abschalten.
- Optimierung: Auf dem Geräteinfo-Bildschirm wird der Barcode für die Seriennummer von Gerät und Akku nur noch angezeigt, wenn diese ausgelesen werden konnte.
- Fehlerbehebung: Die Konfigurationseigenschaft „Nur print@home-Tickets“ wird beim Auflisten der Veranstaltungen und Laden der Tickets vollständig berücksichtigt.
- Optimierung: Die maximale Wartezeit bei HTTP- und HTTPS-Serveranfragen wurde von 30 Sekunden auf 10 Minuten erhöht, um auch große Datenbestände durchgängig laden zu können. Diese Änderung tritt nur in Kraft, wenn ReservixCheck erstmals auf einem Gerät installiert wird oder die Programmkonfiguration auf die Standardwerte zurückgesetzt wird.
- Die seit kurzem von der API verfügbaren eindeutigen ClientScanIDs werden nach Erhalt in der Datenbank gespeichert.
- Die seit kurzem von der API verfügbaren Rückmeldungen für gesendete Scans werden ausgewertet. Eventuelle Ungereimtheiten werden zunächst als Warnung protokolliert und später untersucht.
- Fehlerbehebung: Bei der Übermittlung von lokalen Scans an die API wird das unnötige Feld „ServerIDx“ nicht mehr mitgegeben (vorher immer „−1“).
- Fehlerbehebung: Bei der Übermittlung von lokalen Scans an die API wird das Feld „EventID“ immer mit der ID einer geladenen Veranstaltung belegt (vorher immer „0“, wenn Ticket unbekannt oder Fehler).
- Fehlerbehebung: Die gewöhnlich auf SIM-Karten aufgedruckte ICC-ID wird jetzt beim Programmstart protokolliert, wenn eine SIM-Karte in einem Datalogic Lynx oder Motorola MC65/67 eingelegt ist.
- Optimierung: Die Protokollierung bei abgewiesenem API-Key wurde verbessert. Die Dateiendung von Protokolldateien wurde von .txt auf .log geändert.
Dateien mit den Endungen .log und .json werden mit Microsoft Word Mobile geöffnet.
- Optimierung: Die Protokollierung bei einem unerwarteten Fehler wurde verbessert.
- Optimierung: Es wird besser abgesichert, dass von ReservixCheck und dem ReservixCheck-Starter (HandScanner.exe) nur eine Instanz gestartet werden kann.
- Die eindeutige Geräte-ID wird jetzt im UUID-Format an den Server übermittelt.
- Fehlerbehebung: Es wird abgesichert, dass es sich bei Server-Adresse um HTTP- oder HTTPS-Adresse handelt.
- Fehlerbehebung: Bei Datalogic Lynx wird die Vibration auch nach dem Speichern der Einstellungen unterstützt.
- Optimierung: Die automatische Zeitzonenkorrektur bei Anwendungsstart wird auch bei falschen/fehlenden Daten in der Registry vorgenommen.
- Optimierung: Bei der sporadisch aufgetretenen Datenbankfehlermeldung „database or disk is full“ wird die entsprechende Anfrage wiederholt, da zumindest die Aussage „disk ist full“ als nicht zutreffend betrachtet werden kann. Zudem wurde die Datenbankbibliothek aktualisiert.
 
Version 1.8.0.0 2016-07-05
- Beim Anwendungsstart erscheint ReservixCheck schnellstmöglich auf dem Bildschirm und informiert anschließend über die einzelnen Vorbereitungsschritte bis zur Betriebsbereitschaft. Ein eventuell notwendiger Geräteneustart wird zum bestmöglichen Zeitpunkt angestoßen. Das Installationspaket ist nach der Reorganisation der Ressourcen nur noch 3 Megabyte (statt vorher 4 Megabyte) groß. Achtung: Ab sofort dient die ausführbare Datei „HandScanner.exe“ nur noch als Starter für die eigentliche Anwendung „ReservixCheck.exe“.
- Vor dem Beenden der Anwendung werden laufenden Prozesse abgeschlossen und zwischengespeicherte Protokolleinträge geschrieben.
Ein eventuell notwendiger Geräteneustart wird erst anschließend angestoßen.
- Zum Verlassen des Ticketscan-Bereiches muss die Bildschirmtaste „Menü“ von links nach rechts bzw. „Info“ von rechts nach links geschoben werden. Damit soll ein versehentliches Verlassen (mittels einfachem Drücken einer Bildschirmtaste) verhindert werden. Dieses Verhalten kann über die Konfigurationsdatei deaktiviert werden.
- Ticketcodes können manuell über eine Bildschirmtastatur mit großen Zifferntasten eingegeben werden. Zum Anzeigen dieser Tastatur muss der Nutzer auf das Symbol auf dem Ticketcode-Eingabefeld tippen. Die Bildschirmtastatur kann über die Konfigurationsdatei aktiviert werden.
- Über den Filter nach Blöcken werden nur solche Tickets eingelassen, die für Plätze in bestimmten Blöcken gebucht wurden. Der Block-Filter kann in den Einstellungen aktiviert und konfiguriert werden. Die Namen der gewählten Blöcke werden in der Konfigurationsdatei gespeichert und beim Einlass zum Vergleich herangezogen. Wird ein Ticket nicht eingelassen, weil es in keinem der im Filter gewählten Blöcke gebucht wurde, dann erscheint die Meldung „falscher Eingang“. Standardmäßig wird beim Betreten des Ticketscan-Bereiches eine Warnung ausgegeben, wenn im Filter gewählte Blöcke bei den geladenen Veranstaltungen unbekannt sind. Diese Warnung kann über die Konfigurationsdatei deaktiviert werden.
- Der Prozess für das Laden und die Auflisten von Veranstaltungen wurde überarbeitet. Unter anderem werden nun alle Veranstaltungen gleichzeitig (statt nacheinander) geladen. Die Liste der geladenen Veranstaltungen wird nicht mehr dauerhaft im Arbeitsspeicher vorgehalten.
- Jeder Ticket-Scan erhält eine eindeutige Kennung und einen Zähler, der die Anzahl der Übermittlungsversuche des Scans an den Server enthält.
- Der Bezug von Tickets und Ticket-Scans bei der Synchronisierung wurde umfangreich überarbeitet. In seltenen Fällen wurden bisher nicht alle aktuellen Daten vom Server bezogen.
- Beim Anwendungsstart wird die auf dem Gerät installierte Firmware-Version geprüft. Gehört die Version nicht zu den zwei neusten, dann erscheint ein entsprechender Hinweis. In Sonderfällen wird die installierte Version als „fehlerhaft“ bezeichnet und um eine „umgehende“ Verbindungsaufnahme mit dem Reservix-Support gebeten. Aktuell betrifft dies Datalogic Lynx mit der Firmware 1.65.053, mit der Reservix-1D-Ticketcodes oft falsch gelesen werden, und Motorola MC65 mit der Firmware 02.30.01 und 02.31.02, bei der die Vibration zum Programmabsturz führt. Die Firmware-Aktualisierung kann nur durch den Reservix-Support vorgenommen werden.
- Die Ampel der Scansäule wird unterstützt. Die Anzeige- und Wartedauer (bis zur Freigabe des nächsten Ticketscans) für die drei Ticket-Scan-Ergebnisarten individuell angepasst werden.
- Ein CheckWLAN-Direktmodus wurde ergänzt, der über die Konfigurationsdatei aktiviert werden kann. In diesem Modus hält ReservixCheck keine Daten offline vor und sendet stattdessen jeden Ticket-Scan direkt an den CheckWLAN-Server und wartet, bis dieser die Entwertung vorgenommen hat. Es ist abgesichert, dass in diesem Modus keine Veranstaltungen, Tickets oder Ticket-Scans geladen sind. Des weiteren wird kein Synchronisierung mit dem Server durchgeführt und es werden keine lokalen Ticket-Scans in der ReservixCheck-Datenbank gespeichert.
- Die Seriennummer des Gerätes wurde in den HTTP-User-Agent aufgenommen und wird damit bei jeder Anfrage an den Server gesendet.
- Beim Anwendungsstart wird die Seriennummer des Gerätes protokolliert. Bei Benutzeranmeldung am Server wird der bezogene API-Key (anonymisiert und um den Namen des Accounts ergänzt) protokolliert.
- Beim Anwendungsstart und -ende wird der Ladezustand des Akkus protokolliert. Beim Start werden zusätzliche Akku-Daten wie Herstellungsdatum und Seriennummer protokolliert (nicht auf Motorola MC55 und MC55A).
- Bei Anwendungsstart und -ende wird der Netzwerkstatus protokolliert, unter anderem IP- und MAC-Adressen und Informationen zum verbundenen WLAN.
- Beim Anwendungsstart werden Daten zum Telefonmodul und zur eingelegten SIM-Karte protokolliert.
- Es wurde ein neuer Geräte-Status-Bereich hinzugefügt, welcher durch einen Doppelklick auf die Statusleiste geöffnet bzw. geschlossen werden kann. Dieser zeigt unter anderem den Netzwerkstatus und die Seriennummern von Gerät und Akku.
- Die Datenbank wird mittels Kennwort vor unbefugtem Zugriff auf die enthaltenen Daten geschützt.
- Die Anzahl der gespeicherten Ticket-Scans in der Historie wurde auf 10.000 erhöht.
- Beim Anwendungsstart wird der freie Festspeicher auf dem Gerät ermittelt. Bei weniger als 30 MiB, weist eine Warnung auf den möglicherweise zu geringen freien Speicher hin.
- Der Datalogic Lynx unterstützt – wie die Motorola MC55A und MC65 – drei verschiedene Vibrationsmuster. Zudem konnte es bisher in Sonderfällen zu einer Dauervibration kommen.
- Die Akzeptanz von 1D- und 2D-Codes im „Fremdticketcode“-Modus wurde erhöht. Es werden folgende Codes akzeptiert: Code128, 2 of 5 Interleaved, 2 of 5 Standard, Code39,  Code93, QRCode, MicroQR, DataMatrix, Aztec, PDF417 und MicroPDF417. Alle Codes können 8 bis 32 Zeichen lang sein (außer 2 of 5 Interleaved mit mindestens 14 Zeichen). Bei Motorola-Scannern ist der Aztec-Code nicht beschränkt. Der MicroQR-Code ist generell nicht beschränkt.
- Nach dem Anwendungsstart kann sofort im Ticket-Scan-Bereich gestartet werden, sofern die Einstellung in der Programmkonfiguration gesetzt ist.
- Im Online-Modus wird die Kommunikation mit dem Server ohne gültigen API-Key wird – außer bei der Benutzeranmeldung zum Bezug des API-Key – unterbunden. Ich CheckWLAN-Modus wird der API-Key weder angefordert noch übermittelt, denn er wird seitens CheckWLAN nicht benötigt.
- Beim Anwendungsstart werden in der Datenbank gespeicherte API-Keys und IDs gewählter Veranstaltungen aufgeräumt.
- Die Datenbankdatei wird nach dem Entfernen aller Veranstaltungen oder dem Zurücksetzen der Programmkonfiguration reorganisiert.
- Beim Benutzerwechsel werden Veranstaltungs- und Ticketdaten aufgeräumt.
- Die Ticketauswahl im Info-Bereich berücksichtigt zwischenzeitlich entfernte Tickets.
- Das Eingabefokus-Verhalten für numerische Eingabefelder wurde korrigiert.
- Das Aktivieren und Deaktivieren von Farbverlaufsbuttons wurde korrigiert.
- Die Behandlung von Datenfeldern, die keinen Wert enthalten müssen, wurde in Datenbank und Programmablauf korrigiert.
- Die automatische Korrektur der Zeitzone wurde überarbeitet.
- Die Sonderbehandlung der Scansäule bei der Zeit-Synchronisierung wurde entfernt.
- Die Ausgabe der Ticketanzahl beim Auflisten der verfügbaren Veranstaltungen erfolgt nur noch im Online-Modus.
- Kleine Fehlerkorrektur beim Protokollmanager.
- Die Stabilität beim Zugriff auf die Datenbank wurde erhöht.
- Die SQLite-Datenbankbibliothek wurde auf Version 1.0.101.0 aktualisiert.
 
Version 1.7.4.0 2016-01-18
- Im CheckWLAN-Modus kann kein API-Key persistent gespeichert werden, da CheckWLAN keine Authentifizierung vorsieht. Beim Wechsel vom Online-Modus in den CheckWLAN-Modus wird der API-Key weiterhin gespeichert, aber nicht mehr an den CheckWLAN-Server übertragen. Die Kommunikation im CheckWLAN-Modus mit dem CheckWLAN-Server erfolgt ohne Authentifizierung, hierfür wurden verschiedene Sicherheitsmechanismen deaktiviert.
- Ein Fehler bei der Synchronisation wurde behoben, sofern ungesendete Ticket-Scans aus älteren Versionen (< 1.7.0) vorhanden sind.
- Ticket-Scan-Button ist im CheckWLAN-Modus aktiv, wenn mindestens eine Veranstaltung geladen ist
- Wegen eines Bugs in CheckWLAN wird die Ticketanzahl bei den verfügabren Veranstaltungen nur im Online-Modus angezeigt.
 
Version 1.7.3.0 2015-12-18
- Lange Benutzernamen werden in den Einstellungen verkürzt dargestellt. Sinnvolle Tabulatorreihenfolge für die Benutzerdatenfelder
- Nach dem Ändern des Verbindungstyp werden die Veranstaltungen wieder entfernt.
- Wartezeit bei Authentifizierung am Server wird mit einer Warteanimation überbrückt
- Rechtschreibkorrektur (wenn die Authentifizierung beim Server nicht erfolgreich war)
- Veränderungen an der Programmkonfiguration werden protokolliert.
 
Version 1.7.2.0 2015-12-14
- Die Anwendungsdaten werden auf der Scansäule im persistenten Order Application abgelegt.
- Die Eigenschaft Buchungskommentar wurde in der Ticket-Info-Anzeige nach oben verschoben.
- Die aktuelle Firmeware-Version wird nur einmal ausgelesen.
- Die versteckten Eigenschaften der Programmkonfiguration werden dauerhaft gespeichert.
 
Version 1.7.1.0 2015-12-04
- Unnötigt häufige Authentifizierung mit dem Server wurde korrigiert.
- Automatischer Geräteneustart nach der Installation der CAB-Datei.
- Der User-Agent bei der Kommunikation mit dem Server wurde auf den RFC2616-Standard angepasst.
 
Version 1.7.0.0 2015-12-03
- Die Protokollierung wird durch einen Protokollmanager unterstützt. Häufig auftretende identische Protokolleinträge werden zusammengefasst und gruppiert, so dass die Protokolldateien besser lesbar werden und weniger Speicherplatz benötigen. Zusätzliche Daten werden beim Anwendungsstart protokolliert (z. B. installierte ReservixCheck-Version und Firmware-Version des Gerätes), ebenso bei Fehlern in der Kommunikation mit dem Server.
- Alle durch die Anwendung erstellten Daten liegen ab sofort im dafür vorgesehenen Anwendungsdaten-Ordner „/Application Data/ReservixCheck“. Dies betrifft die Konfigurationsdatei, die Datenbankdatei und die Protokolldateien (im Unterordner „logs“). Vorhandene Dateien aus älteren ReservixCheck-Versionen werden automatisch beim Programmstart verschoben. Für die Analyse von Daten muss nur noch der Unterordner „ReservixCheck“ im Ordner „Application Data“ samt Inhalt (möglichst als Zip-Archiv) gesichert und an uns übermittelt werden.
- Die Datenhaltung der Programmkonfiguration wurde überarbeitet. Die proprietär formatierte Datei „scanner.conf“ wurde durch eine JSON-formatierte Datei „config.json“ ersetzt. Die Daten werden nun typsicher ausgelesen und vorgehalten und können in der Anwendung schneller verarbeitet werden.
Eine vorhandene Programmkonfiguration aus älteren ReservixCheck-Versionen wird automatisch in die neue Form gewandelt. Die Plausibilität der Konfigurationsdaten wird beim Laden und Speichern abgesichert.
- Die Zugangsdaten für den Online-Server werden nicht mehr in der Programmkonfiguration gespeichert. Stattdessen wird nach der Eingabe von Benutzername und Kennwort ein API-Key vom Server angefordert und dort (bis zur nächsten Änderung der Benutzerdaten) gespeichert. Ab sofort wird beim Speichern der Konfiguration eine Internetverbindung benötigt, sofern die Zugangsdaten erstmalig eingegeben oder geändert werden.
- Offene (noch nicht an den Server gesendete) Ticket-Scans werden mit dem API-Key und den Veranstaltungs-IDs übertragen, die zum Zeitpunkt des Scans aktiv waren, und bleiben bis zur erfolgreichen Übermittlung in der lokalen Datenbank erhalten. Offene Ticket-Scans aus älteren ReservixCheck-Versionen werden mit dem API-Key und den Veranstaltungs-IDs übertragen, die zum Übertragungszeitpunkt aktiv sind.
- Einträge in der Ticket-Scan-Historie werden nun einzeilig dargestellt, um die Übersicht zu verbessern. Ein Klick auf eine Zeile der Historie führt auf das jeweilige Ticket im Ticket-Info-Bereich. Die Liste kann nach einem Ticketcode gefiltert werden. In der Liste werden die letzten 100 Scans angezeigt, in der Datenbank die letzten 1.000 Scans gespeichert. Beides kann in der Konfigurationsdatei angepasst werden.
- Der Zeitpunkt eines Ticket-Scans wird sofort nach dem Erfassen des Codes ermittelt und für alle folgenden Aktionen (bis zur Übertragung an den Server) beibehalten. Die Ticket-Scan-Ergebnis ERR (Fehler) und TNF (Ticket nicht gefunden) werden an den Server übermittelt, dass das Ergebnis UNK (Unbekannt) hingegen wird nicht mehr an den Server übermittelt. Weiterhin wurden diverse Optimierungen bei der Verarbeitung der Ticket-Scans vorgenommen. Unter anderem werden nur Informationen vom Server verarbeitet, die neuer als die bis dahin auf dem Gerät gespeicherten sind (und andernfalls eine Warnung protokolliert).
- Die Auswahl in Filterlisten (Kategorien, Preisstufen und Ermäßigungen) kann nun umgekehrt werden, um die Auswahl fast aller Listeneinträge zu erweitern. Die Umkehrung der Auswahl erfolgt über das Kontextmenü der Liste.
- Das Gerät Motorola/Zebra MC67NA wird unterstützt.
- Vom Server erhaltene Ticket-Scans für Tickets, die noch nicht erhalten wurden, werden nicht mehr verworfen, sondern korrekt verarbeitet.
- Beim Anwendungsstart wird eine auf dem Gerät befindliche Datenbank verworfen, wenn es keine Programmkonfigurationsdatei gibt, da bestehende Datenbank und neue Konfiguration inkompatibel sein können. (Die verworfene Datenbankdatei wird unter einem anderen Namen gesichert.) Außerdem ist der Ticket-Scan-Bereich gesperrt, so lange kein API-Key aus der Konfigurationsdatei oder vom Server bezogen werden konnte und keine Veranstaltungen geladen sind.
- In der Anwendung wurde abgesichert, dass nach dem Auslösen eines Geräteneustarts keine Aktionen mehr vorgenommen werden.
- Der Text für das Ticket-Scan-Ergebnis wird nun korrekt zentriert dargestellt.
- Der automatische Wechsel des Tastaturlayouts im Ticket-Scan-Bereich wurde zunächst entfernt, da ein unerwartetes Verhalten auf Geräten mit numerischer Tastatur auftrat.
- Die Verfügbarkeit der Vibrationsfunktion wird bei Motorola-Geräten nun korrekt geprüft.
- Nicht mehr verwendeter Arbeitsspeicher wird korrekt freigegeben.
 
Version 1.6.3.0 2015-11-02
Durch Änderungen am Web-Server konnte die automatische Korrektur vom Datum und Uhrzeit nicht durchgeführt werden. Dieser Fehler wurde nun behoben.
 
Version 1.6.2.0 2015-10-26
- Zusätzliche Protokollierung bei unerwartetem Verhalten des Servers und Firmware-Version des Gerätes.
- Scanrichtung wird beim Laden der Programmkonfiguration berücksichtigt.
- Korrektur einer Fehlermeldung
 
Version 1.6.0.0 2015-10-05
- Die Listen im Bereich „Einzeltermine“ wurden komplett überarbeitet. Neben dem Veranstaltungstitel und -zeitraum ist dort auch die ID aufgeführt und (wenn in den Einstellungen aktiviert) auch die Ticketanzahl. Das Scrollen innerhalb der Termine ist komfortabel mit dem Finger auf der gesamten Liste möglich,  eventuell weiter oben oder unten befindliche Termine werden durch einen kleinen Pfeil signalisiert. Die Auswahl von Terminen ist beim Wählen neuer Termine über die ganze Zeile (nicht nur über das Häkchenfeld) möglich. Bereits geladene Termine werden durch ein gesetztes Häkchenfeld dargestellt, welches nicht abgewählt werden kann. Über ein Kontextmenü an der Auswahlliste (lange auf die Liste drücken) können alle Veranstaltungen aus- oder abgewählt und verschiedene Listeneinstellungen vorgenommen werden.
- Im Bereich „Einstellungen“ können Preisstufen als ermäßigt gekennzeichnet werden. Wird ein Ticket mit einer entsprechenden Preisstufe gescannt und kann eingelassen werden, dann wird die Rückmeldung „kontrollbedürftig“ (gelber Bildschirmhintergrund) ausgegeben. Die Liste der Preisstufe wird veranstalterübergreifend generiert. Bei der Auswahl von Kategorien oder Preisstufen werden dieselben neuen Listen verwendet wie im Bereich „Einzeltermine“, sodass diese nun auf allen Geräten performant dargestellt werden.
- Die Protokollierung wurde umfangreich erweitert. So werden jetzt Informationen zu Anwendungsstart und -ende mit verschiedenen Systemstatusdaten protokolliert, ebenso das Speichern oder Zurücksetzen der Konfiguration, das Laden oder Entfernen von Veranstaltungen, das Aktualisieren der Anwendung und andere Benutzerinteraktionen. Die Protokolldateien werden offen gehalten während die Anwendung läuft, um Störungen beim Protokollieren zu vermeiden. So ist ein Öffnen mit dem Editor nicht mehr möglich, die betreffenden Dateien können kopiert werden, um dann die Kopie zu öffnen. In der Produktivversion werden die Meldungsstufen „Information“, „Warnung“, „Fehler“ und „schwerer Fehler, Anwendung wird beendet“ protokolliert.
- Beim Anwendungsstart wird über die API angefragt, ob eine neuere Version der Anwendung als die aktuell ausgeführte verfügbar ist. Wird eine neuere Version angeboten, dann wird dem Nutzer eine Aktualisierung empfohlen. Die Aktualisierung kann mit zwei bis drei Klicks durchgeführt werden. Serverseitig kann eine Aktualisierung bestimmter Versionen erzwungen werden. Der Nutzer wird dann über die bevorstehende Aktualisierung informiert, kann diese aber nicht ablehnen.
- Während der Installation der Anwendung werden zusätzliche Registry-Einstellungen gesetzt, um das Erscheinen verschiedener Systemmeldungen (z. B. über den Verbindungsstatus der mobilen Internetverbindung) zu verhindern.
- Im „Info“-Bereich kann nun mittels Eingabe oder Scan nach einer Ticket-ID gesucht werden.
- Werden Einstellungen gespeichert, dann wird die Statusleiste sofort aktualisiert, um den Erfolg der Nutzeranmeldung zu signalisieren. Die Statusleiste wird zusätzlich regelmäßig aktualisiert, wenn sich der Benutzer im Bereich „Einstellungen“ oder in der Veranstaltungsauswahl befindet.
- Beim Anwendungsstart wird die Netzwerkeinstellung des Gerätes geprüft bei Bedarf auf „Internet“ geändert. Ist eine Änderung erfolgt, dann wird das Gerät anschließend neu gestartet.
- Beim Scan eines Codes für den PIN-Schutz wird die Eingabe auf Motorola-Scannern automatisch mit „OK“ bestätigt.
- Bei der Uhrzeitsynchronisation beim Anwendungsstart werden bis zu drei Verbindungsversuche zur angegebenen Quelle unternommen.
- Die Anzahl der letzten Ticketscans, die in der Datenbank gespeichert und in der Historie angezeigt werden, kann gesondert konfiguriert werden. Standardmäßig werden in der Datenbank die 1.000 letzten Ticketscans gespeichert und in der Historie die letzten 100 Ticketscans aufgelistet.
- Diverse Bibilotheken wurden aktualisiert.
- Fehlerkorrektur: Ticketscans ermäßigter Tickets aus CheckWLAN werden nun korrekt verarbeitet.
- Fehlerkorrektur: Hardware-Scanner können direkt nach dem Programmstart nun keine Scans mehr durchführen.
- Achtung: Geräte mit der ReservixCheck-Version 1.5.4 oder älter werden zunächst auf Version 1.5.5 aktualisiert und erst anschließend auf eine neuere Version.
 
Version 1.5.5.0 2015-08-25
Autoupdater kann Installationspakete bis 10 MB Größe verarbeiteten
 
Version 1.5.4.0 2015-08-24
- ScanComposites der zwischenzeitlich verkauften und bereits gescannten Tickets werden zunächst verworfen und erst bei einer nachfolgendenden Synchronisation verarbeitet.
 
Version 1.5.3.0 2015-08-06
- Für den Bereich „Tickets scannen“ kann im Bereich „Einstellungen“ eine PIN (ein beliebiges Kennwort) hinterlegt werden. Die Sperre verhindert das versehentliche oder unautorisierte Verlassen des Scan-Bereiches. Die Eingabe kann über die physische oder virtuelle Tastatur erfolgen. Alternativ kann ein Code gescannt werden, dessen Inhalt als PIN verwendet wird.
- Das Symbol für die Batterieanzeige wurde geändert und zeigt den aktuellen Füllstand als Prozentzahl an.
Die Batterieanzeige besitzt fünf unterschiedliche Zustände:
1. Batterie entlädt sich: Batterierahmen ist weiß
2. Batterie entlädt sich und ist fast leer: Batterierahmen färbt sich rot
3. Batterie wird geladen: Batterie färbt sich innen grün, Rahmen ist weiß
4. Batterie wird geladen und ist fast voll: Batterierahmen färbt sich grün
Ist keine Batterie vorhanden (aktuell nur Scansäule), dann wird ein anderes Symbol angezeigt. Ab wann eine Batterie als voll oder leer angezeigt wird, kann über die Programmkonfigurationsdatei eingestellt werden.
- Die Standardwerte in der Programmkonfiguration wurden überarbeitet (u. a. Töne). Benutzerdaten und Server-Adresse sind in der Standardkonfiguration nicht mehr enthalten. Die Server- und Benutzerdaten werden beim Speichern der Programmeinstellungen auf Vollständigkeit überprüft. Die Programmkonfiguration lässt sich im Bereich „Einstellungen“ auf die Standardwerte zurücksetzen. Werden Verbindungstyp oder Benutzerdaten geändert oder die Einstellungen zurückgesetzt, dann werden Veranstaltungs- und Ticketdaten auf dem Gerät automatisch gelöscht.
- Der Bereich „Tickets scannen“ bleibt solange gesperrt, bis mindestens eine Veranstaltung geladen wurde.
- Das Scannen eines Codes ist nur noch im Bereich „Tickets scannen“ oder bei der PIN-Eingabe möglich. Auch im Bereich „Info“ kann kein Code mehr gescannt werden.
- Sind keine Benutzerdaten in den Programmeinstellungen hinterlegt, dann erscheint im Online-Modus die Statusmeldung „Benutzer fehlt“. Sind falsche Benutzerdaten hinterlegt, dann erscheint die Meldung „Anmeldung falsch“.
- Bei manueller Eingabe eines Passwortes oder Ticketcodes erscheint die Anzahl der eingegebenen Zeichen in grauer Schrift am Ende des Textfeldes.
- Ist die Option „Anzahl der Tickets anzeigen“ deaktiviert, werden die Ticketanzahlen in allen Menüs ausgeblendet.
- Der Farbverlaufs-Button wurde überarbeitet, damit deutlich erkennbar ist, wann dieser gedrückt wird oder deaktiviert ist.
- Ist im Ergebnisse der Ticketentwertung eine „Kontrolle“ erforderlich, dann kommt passend zum gelben Hintergrund ein gesonderter Ton (Voreinstellung „Boing“). Dies betrifft momentan folgende Status:
1. Das Ticket ist OK und eine Ermäßigungsberechtigung muss geprüft werden
2. Der Ticketcode wurde vor kurzem auf demselben Gerät entwertet (wahrscheinlich unkritischer Doppelscan)
- Das Vibrationsverhalten für Motorola MC55/65 wurde überarbeitet:
1. Positiv: lang
2. Kontrolle erforderlich: kurz, lang, kurz
3. Negativ: kurz, kurz, kurz, kurz
- Es wurde ein Fehler beim Wechseln vom Online-Modus zum CheckWLAN-Modus mit instabiler Internetverbindung behoben. Lokale Ticketscans werden nicht mehr gelöscht und bleiben dauerhaft erhalten, bis diese an den Server übertragen wurden (außer bei Benutzerdaten- oder Verbindungstypänderung). Die lokalen Ticket-Scans werden auch an den Server übertragen, wenn keine Veranstaltung geladen ist. Neue Tickets oder Ticketscans werden beim Synchronisieren blockweise verarbeitet, um einen flüssigen Ticket-Scan zu gewährleisten.
- Das Wechseln des Kontrollpunktes wurde stärker abgesichert. Die automatische Löschung der Ticketdaten (werden später über die Synchronisierung neu geladen) erfolgt nur noch im CheckWLAN-Modus.
- Implementierung von zwei verschieden Modus zur Code-Erkennung:
1. Im Modus „nur Reservix-Codes“ können nur Codes vom Typ 2-of-5-Interleaved und DataMatrix (normales Ticket) bzw. QRCode (Apple-Passbook-Ticket) mit genau 14 Ziffern gescannt werden.
2. Im Modus „auch Fremd-Codes“ können alle im Werksauslieferungszustand eingestellten Codes mit beliebigem Inhalt gelesen werden (mindestens 14 Zeichen beim Typ Typ 2-of-5-Interleaved).
- Die Installationsroutine nimmt diverse Änderungen an Systemeinstellungen vor, die bisher manuell vorgenommen werden mussten (u. a. Deaktivieren der automatische Geräteabschaltung).
- Jeder Ticketscan wird mit Scanrichtung und Ergebnis in der Tickethistorie angezeigt. Die Tickethistorie wird beim Anwendungsneustart beibehalten und erst beim Benutzerwechsel geleert.
- Bei einem kritischen Doppelscan wird nicht mehr angezeigt, wann das Ticket zuletzt gescannt wurde. Bei einem unkritischen Doppelscan wird angezeigt, wie lange der letzte positive Ticket-Scan (TOK) her ist.
- Für zukünftige Änderungen an der Datenbank wurde eine Datenbankversionierung implementiert. Die gesamte Datenhaltung und Verarbeitung wurde überarbeitet und durch Unit-Tests ergänzt. Die Datensynchronisierung mit dem Server wurde optimiert. Die Berechnung der Ticketanzahl „innen“ und „außen“ wurde neu erstellt. Die Datenbank kann in zwei verschiedenen Modus ausgeführt werden, „Fast“ und „Safe“, über die Programmkonfigurationsdatei einstellbar. Als Standardwert ist „Fast“ ausgewählt, da „Safe“ merkbar langsamer ist.
- Die externe Bibliothek von SQLite wurde auf die Version 1.0.97 aktualisiert. Die Datenbankklasse wurde außerdem zum Singleton-Pattern umgebaut.
- Die maximale Wartezeit bei den Serveranfragen kann über die Programmkonfigurationsdatei eingestellt werden.
- Beim Anwendungsstart werden für die Vorbereitung alle Steuerelemente gesperrt.
- Die Ansteuerung der verschiedenen Scanner-Hardware wurde neu entwickelt. Benutzeroberfläche und Ansteuerung der Hardware wurden technisch voneinander getrennt. Ein Fehler beim Scannen eines inhaltsreichen Barcodes wurde bei Motorola MC55/65 behoben. Die Eigenschaft „AutoTest“ wurde aus der Programmkonfigurationsdatei entfernt.
- Den Anwendung kann auch auf Geräten unbekannten Typs (mit Warn-Hinweis beim Anwendungsstart) genutzt werden. Gescannte Codes können über simulierte Tastatureingaben (z. B. mittels der Fremdsoftware „DataWedge“) in die Anwendung übertragen werden.
- Es wird abgesichert, dass die Adresse des Online-Servers eine HTTPS-Adresse ist. Zusätzlich kann der HTTPS-Port des Online-Servers in der Programmkonfigurationsdatei eingestellt werden.
- Auf allen Geräten stehen Zeitangaben millisekundengenau zur Verfügung.
- Eine mögliche Neustart-Schleife bei der automatischen Korrektur der Zeitzone wurde verhindert.
- Die Übersetzung der Ticketinformationen wurde ermöglicht.
- Ein Speicherüberlauf während der Datensynchronisierung wird abgefangen. Bei Bedarf wird die Ressource erneut ohne die ScanComposites abgefragt.
- Die nicht benötigten Hardware-Buttons werden, soweit es möglich ist, deaktiviert.
- Ab der Protokollstufe „Warnung“ werden alle aufgetretenen Fehler protokolliert, ab der Stufe „Fehler“ nur als wichtig eingestufte Fehler und ab der Stufe „Fatal“ nur Fehler, die zum Beenden der Anwendung führen. Für Tests empfehlen wir die Protokollstufe auf Warnung („WARN“) zu setzen. Im Produktivbetrieb ist eine Protokollstufe Fehler („ERROR“) voreingestellt.
- Der Inhalt der Windows-Registry kann durch Angabe eines zusätzlichen Parameters in der Programmkonfigurationsdatei in eine Datei exportiert werden. ReservixCheck wurde um die Hardwareerkennung der Scansäule erweitert und steht für diese als Prototyp zur Verfügung.
 
Version 1.4.2 2015-04-29
Eine Rechtschreibkorrektur wurde wieder rückgängig gemacht. Die ursprünglich vorgenommene Korrektur führte zu einem Fehler im Zusammenhang mit CheckWLAN.
 
Version 1.4.1.0 2015-04-29
- Die aktuelle Zeitzone wird in den Protokolleinträgen mit ausgegeben.
- Die Symbol-(Motorola) und SQLite-Bibliotheken wurden aktualisiert.
- Die Synchronisation von Veranstaltungsdaten wurde optimiert. Warten noch eigene Scans im Zwischenspeicher darauf, an den Server übertragen zu werden, und der Nutzer drückt die Taste „Einzeltermine“ oder „Beenden“, dann erscheint eine Warnmeldung mit dem Hinweise auf ungesendete Scans, die Nutzer vor dem Fortsetzen bestätigen muss. Fährt der Benutzer fort, so wird eine Warnung (vom Typ Error) im Protokoll hinterlegt.
- Beim Programmende werden alle laufenden Threads sauber beendet und unnötige Fehlereinträge in den Protokollen verhindert. Dauert das Beenden der Anwendung länger als 90 Sekunden, so wird ein entsprechender Protokolleintrag gemacht und die Anwendung wird sofort geschlossen (zusätzliche Protokolleinträge durch das unsaubere Beenden sind möglich). Unerwartete Fehler werden nun in der Stufe „Fatal“ protokolliert.
- Alle Änderungen im Bereich „Einstellungen“ werden erst beim Speichern in den Programmablauf übernommen. In diesem Zusammenhang wurden diverse Fehler im Programmablauf korrigiert.
- Die Texteingabe über die virtuelle Tastatur wurde optimiert. Verliert ein Textfeld den Fokus, so wird die Tastatur ausgeblendet. Erhält ein Textfeld den Fokus, dann wird die Tastatur so eingeblendet, dass das Textfeld nicht überblendet wird.
- Das Anwendungs-Icon wurde aktualisiert und die Darstellung in den verschiedenen Auflösungen optimiert.
- Die aktuelle Zeitzone, das Datum und die Uhrzeit werden beim Programmstart automatisch korrigiert. Ist eine Korrektur der Zeitzone notwendig, dann erfolgt ein automatischer Neustart. Mit welchem Server die Zeitsynchronisierung stattfinden soll, sowie die maximale Wartezeit für die Anfrage, kann über die Programmkonfigurationsdatei eingestellt werden. Alle Änderungen und die Antwort vom eingestellten Zeitserver werden in einem gesonderten Protokoll hinterlegt (timesynclog.txt).
- Es wurden diverse Rechtschreib- und Typografiekorrekturen vorgenommen (in der Oberfläche und für die Protokolleinträge).
- Bei allen Zahlenfeldern im Bereich „Einstellungen“ werden sinnvolle Eingaben erzwungen und Falscheingaben mit entsprechender Meldung korrigiert.
- Das Beenden der Anwendung wurde korrigiert und optimiert, so das alle Komponenten sauber beendet werden
 
Version 1.3.1.0 2015-03-03
- Im Online-Modus können die zu scannenden Tickets nach Preisstufe und Kategorie gefiltert werden. Gehört das gescannte Ticket nicht zu den ausgewählten Preisstufen/Kategorien, dann wird eine Negativmeldung auf dem Scanner angezeigt. Die aufgelisteten Preisstufen/Kategorien sind zugangsabhängig (nicht veranstaltungsabhängig) und können im Menüpunkt Einstellungen konfiguriert werden.
- Der Ticket-Scan ist ab sofort nur möglich, wenn sich der Benutzer im entsprechenden Menü „Tickets scannen“ befindet. Befindet sich der Benutzer in einem anderen Menü, dann passiert beim Drücken auf einen Scan-Button nichts.
- Beim Scannen von Ticketcodes, die nicht zu den ausgewählten Veranstaltungen gehören, kam es bisher zu einer fehlerhaften Datenübertragung an den Server. Der Fehler ist behoben.
- Beim Start der Anwendung wird geprüft, ob genügend Festspeicher (10 MB) und genügend Arbeitsspeicher (5 MB) frei sind. Ist zu wenig Speicher frei, dann wird eine Warnmeldung gezeigt mit der Frage, ob die Anwendung trotzdem gestartet werden soll.
- Speicherüberlauffehler beim Laden, Deserialisieren und Serialisieren von Daten werden abgefangen und behandelt.
- Gemeldete Rechtschreibfehler wurde behoben.
- Die Datenübertragung mittels ProtoBuf wurde komplett entfernt.
- Beim Laden von Daten wurden gelegentlich nicht alle Tickets geladen. Der Fehler wurde behoben.
 
Version 1.2.0.0. 2015-01-07
- Verschiedene Konfigurationseinstellungen wurden nicht gespeichert. Das Problem ist behoben.
- Die Scanner senden nur noch einmal pro Minute ihren Status zum Server.
- Die Konfigurationseinstellung „nur gültige Tickets“ führte dazu, dass während des Einlasses stornierte Tickets fälschlicherweise eingelassen wurden. Die Einstellung wurde ersatzlos entfernt, es werden immer alle Tickets geladen.
- Die Audioausgabe ist unzuverlässig, wenn mehrere Sounds (einschließlich Beeper) zeitgleich abgespielt werden. Nun ist (bis auf ganz seltene Ausnahmen) abgesichert, dass sich Sounds nicht überlagern und die Lautstärke konsistent bleibt. Ein vierter Negativton „Hupe“ wurde hinzugefügt. Neben dem Negativton gibt es nun auch einen Positivton „Pling“, der in lauten Umgebungen wesentlich besser zu hören ist als der monofrequente Beeper.
- Vibration funktionierte bisher auf dem Motorola MC65 nicht, Vibration und Beeper waren auf dem Datalogic Lynx nicht über die Konfigurationseinstellungen einstellbar. Beide Probleme sind behoben.
- Beim Laden von Veranstaltungen mit vielen Tickets kam es mehrfach zu JSON-Fehlermeldungen oder anderem unerwarteten Verhalten. Ursache war ein Arbeitsspeicherüberlauf. Jetzt werden solche Fehler korrekt erkannt und die Pakete bei Bedarf automatisch verkleinert (per scanner.conf konfigurierbar).
- Die Datei scanner.conf hat Kommentare erhalten.
- Das Netzwerkübertragungsvolumen bei der Verwendung im Online-Modus (ohne CheckWLAN) war unnötig groß. Mit verschiedenen Maßnahmen wurde Abhilfe geschaffen.
- Der Konfigurationsdatei nlog.config ist so konfiguriert, dass nur Fehler protokolliert werden. Ein fehlgeschlagene HTTP-Verbindung bzw. eine Zeitüberschreitung gilt nicht mehr als Fehler.
- Der bisher nicht funktionsfähige Software-Updater wurde durch einen neuen ersetzt, so dass Aktualisierungen auf Nachfolgeversionen mit wenigen Klicks möglich werden.
- Der Versionsnummerierung wurde korrigiert und Reservix wird jetzt immer mit kleinem x geschrieben.