COrgaMon.Foto
- Aufgabe dieses Dienstes ist das Umbenennen und Verteilen der Fotos
Weg eines Fotos durch den FotoServer
OrgaMon-App
- Im Protokoll eines Auftrages kann bestimmt werden welche Fotos vom Monteuer gemacht werden können
- Nach der Erstellung des Fotos mit dem Handy wird es auf dem Handy als
GGG-RRRRRR-Fp.jpg
gespeichert (Im Verzeichnis "Pictures")GGG
ist die 3 stellige Geräte-ID (z.B. 023)RRRRR
ist der RID des Auftrages (z.B. 2837372)Fp
ist der Foto-Parameter, also der Name des Foto-Buttons im Protokoll der Baustelle (z.B. FA)
- In die Protokoll-Eingabe des Handys wird
Fp=GGG-RRRRR-Fp.jpg
eingetragen (dies wird erst nach "senden" für den stationären OrgaMon sichtbar) - Der Upload erfolgt im Hintergrund der OrgaMon-App via SFTP, alle Handys einer Firma teilen sich den Upload-Bereich
- Alle Upload landen im App-Server Unterverzeichnis
./ftp
- der Upload erfolgt mit dem Suffix .$$$ bis die Datei komplett übertragen ist
- das Umbenennen von f.jpg.$$$ nach f.jpg erfolgt durch die OrgaMon-App erst bei Erfolg wird die Bilddatei auf dem Handy nach uf.jpg umbenannt
das Foto ist jetzt im FTP Bereiches des FotoServers
Annahme
- Als allerersten Schritt wird eine Kopie des Fotos ins Sicherungsverzeichnis gemacht
- Dabei wird eine Sicherungsnummer
bbbb
dem Foto-Anlieferungsnamen vorangestellt - Die Sicherung erfolgt nach
./bak/nnn/Fotos/bbbb-GGG-RRRRR-Fp.jpg
- Dabei wird eine Sicherungsnummer
- Ermittlung des Baustellen-Kürzels für diesen RID (Steht direkt im Datensatz)
- Suche des Baustellen-Kürzels in baustelle.csv (Suchspalte "NUMMERN_PREFIX")
- Ermittlung des Benennungsmodus (Spalte "FotoBenennung") und des Namen der Internet-Ablage (Spalte "FTPBenutzer")
- Öffnen der \~Kürzel~\Fotobenennung.csv & FotoParameter.ini bei FotoBenennung=JA
- Ermittlung des Zieldateinamens
- Ermittlung des Zielverzeichnisses
- Gibt es bei diesen ersten Schritten ein Problem wird die Datei nach
.\htm
kopiert- In .\log\FotoService.log.txt erfolgt ein Eintrag was das Problem war
20211103 16:56:04;3690708;INFO: 5730: 003-3947416-FN.jpg 20211103 16:56:00 -> 20210825 15:44:54 20211103 16:56:04;3947416;WARNUNG: 003-3947416-FN.jpg: RID in H:\dat\db\AUFTRAG+TS nicht vorhanden! 20211103 16:56:04;3947416;WARNUNG: 003-3947416-FN.jpg: RID in H:\dat\db\_AUFTRAG+TS nicht vorhanden! 20211103 16:56:04;3947416;ERROR: 003-3947416-FN.jpg: RID 3947416 konnte nicht gefunden werden!
Umbenennung
Für die Benennung von Fotos sind manchmal Daten erforderlich, die erst der Monteur noch eingeben muss. Fotos werden meistens bereits übertragen, ohne dass der Monteur etwas eingegeben hat, oder bevor er "gesendet" hat. In diesem Fall landen die Fotos mit ihrem Original-Dateinamen auf der Internet-Ablage des Kunden UND 5 Minuten später in der -neu Datei des App-Server-Dashboards.
Nun gibt es 3 Geschwindigkeiten bei der Umbenennung
Direkt
- ohne dass der Monteur sendet wird hier direkt bei der Lieferung vai ftp umbenannt. Ist z.B. nur die Zählernummer oder andere bekannte Felder Bestandteil des Dateinamens geht das sofort
Schnell
- Sind ZaehlerNummerNeu oder ReglernummerNeu teil des Dateinamens, so ist zum Zeitpunkt der Foto-Dateilieferung in der Regel dieser Wert noch nicht bekannt
- sobald wenn der Monteur "sendet" liegen erst alle Infos vor (z.B. ZählernummerNeu)
- alle 5 Minuten werden diese neuen Daten verarbeitet.
Langsam
- bei machen Umbenennungen sind sogar OrgaMon-Daten erforderlich (z.B. ReglerNummerKorrektur). Also erst wenn der OrgaMon "Sync mit dem Fotoserver" bei der jeweilgen Baustelle durchführt
- Dieser "Sync" wird bei Tagwache und Tagesabschluss automatisch durchgeführt
- Diesen Modus "Langsam" kann man beschleunigen indem man :
- den Monteur motiviert jetzt zu "senden" (wenn noch nicht erfolgt)
- Im OrgaMon -> Tagwache -> Einzeltest vorbereiten -> Haken raus bei 2 Punkten
- [ ] Mobil auslesen
- [ ] Sync mit dem Fotoserver
- nach 5 Min. sollte alles was möglich ist vollständig umbenannt sein
Ablage
nach 00:00 Uhr macht der FotoServer einen automatischen Abschluss
- Alle fix und fertig umbenannten Fotos werden in .zip Datei archiviert
- Erst dadurch werden sie für den stationären OrgaMon sichtbar, der die .zip im Rahmen der Tagwache herunterlädt
OrgaMon
der OrgaMon ist via FTP an die Internet-Ablage gekoppelt und holt nur Fotos-nnnn.zip Archive niemals direkt .jpg Dateien
- durchlaufe alle Fotoladebaustellen
- lade die neuen/bisher fehlenden Fotos-nnnn.zip-Archive der Internet-Ablage in ein lokales FotoVerzeichnis
- entpacke die Archive in ein anderes/das gleiche Verzeichnis
Log
- Der Fotoservice protokolliert seine Aktionen in mehreren Log-Dateien, insbesondere sind hier Gründe aufgezeichnet warum etwas nicht funktioniert hat
- Alle Log-Dateien befinden sich im Unterverzeichnis .\log des OrgaMon-App-Servers
FotoService.log.txt
- Infos über Umbenennungen von Fotos
FotoService-Transaktionen.log.txt
- Infos, wohin Fotos im Erfolgfall umkopiert wurden
FotoService-Ablage-JJJJMMTT.log.txt
- Infos, welche Foto-Zip Archive wohin verschoben/abgelegt wurden (Löschprotokollierung, eine Forderung des Datenschutzes)
Datensicherung
- Im .\bak Verzeichnis muss sich zumindest ein Unterverzeichnis befinden mit dem Namen #zzz (wobei "z" eine Ziffer "0" .. "9" sein muss)
- Der Server startet und ermittelt aus allen "#*" Unterverzeichnissen das mit der höchsten Nummer "zzz", nur in dieses wird gesichert
- Direkt wenn ein Bild im FTP- Bereich komplett hochgeladen ist, wird noch vor der Zuordnung eine Sicherungskopie nach .\bak\Fotos gemacht
- die Befüllung von ./bak/#zzz ist also kontinuierlich über den ganzen Tag zu erwarten
- Im Rahmen des "Ablagedienstes" der automatisch nach 00:00 Uhr anläuft werden zudem alte Dateien aus allen Internetablagen (./web) nach #zzz verschoben
- Nach dem Verschieben der Zips wird die Grösse des aktuell verwendeten Sicherungsverzeichnisses protokolliert
- Ist es >3,8 GB so wird ein neues Sicherungsverzeichnis angelegt (Name ist die alte Nummer + 1), die Umschaltung auf dieses Sicherungsverzeichnis erfolgt beim nächsten Dienste-Start, aber möglicherweise nicht sofort
Entlastung
- Sicherungsverzeichnisse, die man wegverschieben darf, werden deshalb mit der leeren Datei
./MOVE-OK
markiert - Ein externes Sicherungstool sollte also z.B. #222 erst verschieben wenn #222/MOVE-OK vorhanden ist
- Das Verschieben muss manuell erfolgen
Konfiguration
[System] [~Id~] ftphost= ftpuser= # Mussfeld ftppwd= BackUpPath= WebPath= [StatistikPath=] FTPPath= UnverarbeitetPath= LogPath=
- ein Service für das verzögerte Umbenennen von Foto mit Namensbestandteilen aus ZählernummerNeu und ReglernummerNeu
- dabei wird über den Protokoll-Variable Name entschieden, ob es sich um eine Zähler oder Regler Umbenennung handelt
'FA' ... 'FE' ... 'FK' ->Regler#Neu-Umbenennung 'FL' ... 'FN' ... 'FZ' ->Zähler#Neu-Umbenennung