======4Dgo Winter====== ===== Produkt ===== Produktname: ''4D_Winter'' ===== Demozugang ===== === Master === Verträge: ''4D_Winter_Agilogik_Demo_Contract'', ''4D_Winter_Demo_Contract'' Eigentümer: ''agilogik.demo'' Passwort: ''secret'' Rolle: ''4D_winter_support'' === Agilogik Demovertrag === Demovertrag: ''4D_Winter_Agilogik_Demo_Contract'' User: ''agilogik.winter.office'' Passwort: ''secret'' Rolle: ''4D_winter_office'' User: ''agilogik.winter'' Passwort: ''secret'' Rolle: ''4D_winter_worker'' === Kunden Demovertrag === Vertrag: ''4D_Winter_Demo_Contract'' User: ''winter.office'' Passwort: ''geheim'' Rolle: ''4D_winter_office_demo'' User: ''winter.worker'' Passwort: ''geheim'' Rolle: ''4D_winter_worker_demo'' ===== Supportzugang ===== **Nutzername:** ''agilogik.support'' **Passwort:** ''cds......65'' =====Rollen===== === Supporter === **Agilogik Support**: ''4D_winter_support'' === Office === **Manage User**: ''4D_winter_office'' **Manage User**: ''4D_winter_office_demo'' Achtung diese Rolle erlaubt **Multilogin**! === Worker === **Mobile User**: ''4D_winter_worker'' **Mobile User**: ''4D_winter_worker_demo'' Achtung diese Rolle erlaubt **Multilogin**! =====Zonen===== ==== Standardzone ==== {'version':1, 'options':{ 'access_contract_data':{'create':{'user':{'post':'key'},'zone':{'post':'wi'},'contract':{'post':'key'},'product':{'post':'key'}}, 'read':{'user':{'pre':'none'},'zone':{'pre':'wi'},'contract':{'pre':'key'},'product':{'pre':'key'}}, 'update':{'user':{'pre':'none','post':'key'},'zone':{'pre':'wi','post':'wi'},'contract':{'pre':'key','post':'key'},'product':{'pre':'key','post':'key'}}, 'delete':{'user':{'pre':'none'},'zone':{'pre':'wi'},'contract':{'pre':'key'},'product':{'pre':'key'}} }, 'read_cfg':{'read':{'user':{'pre':'none'},'contract':{'pre':'none'},'product':{'pre':'key'},'zone':{'pre':'cfg'}}, 'update':{'user':{'pre':'none','post':'key'},'contract':{'pre':'key','post':'key'},'product':{'pre':'key','post':'key'},'zone':{'pre':'cfg','post':'cfg'}} } }, 'zones':{'cfg':'4Dwi_cfg','wi':'4Dwi' }, 'standard':{'create':{'user':{'post':'key'},'zone':{'post':'wi'},'contract':{'post':'key'},'product':{'post':'key'}}, 'read':{'user':{'pre':'key'},'zone':{'pre':'wi'},'contract':{'pre':'key'},'product':{'pre':'key'}}, 'update':{'user':{'pre':'key','post':'key'},'zone':{'pre':'wi','post':'wi'},'contract':{'pre':'key','post':'key'},'product':{'pre':'key','post':'key'}}, 'delete':{'user':{'pre':'key'},'zone':{'pre':'wi'},'contract':{'pre':'key'},'product':{'pre':'key'}}} } ==== Masterzone ==== {'version':1, 'options':{ 'access_contract_data':{'create':{'user':{'post':'key'},'zone':{'post':'wi'},'contract':{'post':'key'},'product':{'post':'key'}}, 'read':{'user':{'pre':'none'},'zone':{'pre':'wi'},'contract':{'pre':'key'},'product':{'pre':'key'}}, 'update':{'user':{'pre':'none','post':'key'},'zone':{'pre':'wi','post':'wi'},'contract':{'pre':'key','post':'key'},'product':{'pre':'key','post':'key'}}, 'delete':{'user':{'pre':'none'},'zone':{'pre':'wi'},'contract':{'pre':'key'},'product':{'pre':'key'}} }, 'read_cfg':{'read':{'user':{'pre':'none'},'contract':{'pre':'none'},'product':{'pre':'key'},'zone':{'pre':'cfg'}}, 'update':{'user':{'pre':'none','post':'key'},'contract':{'pre':'key','post':'key'},'product':{'pre':'key','post':'key'},'zone':{'pre':'cfg','post':'cfg'}} }, 'write_cfg':{'create':{'user':{'post':'key'},'contract':{'post':'key'},'product':{'post':'key'},'zone':{'post':'cfg'}}, 'read':{'user':{'pre':'none'},'contract':{'pre':'key'},'product':{'pre':'key'},'zone':{'pre':'cfg'}}, 'update':{'user':{'pre':'none','post':'key'},'contract':{'pre':'key','post':'key'},'product':{'pre':'key','post':'key'},'zone':{'pre':'cfg','post':'cfg'}}, 'delete':{'user':{'pre':'none'},'contract':{'pre':'key'},'product':{'pre':'key'},'zone':{'pre':'cfg'}} }, 'write_contract':{'create':{'user':{'post':'key'},'contract':{'post':'external_contract_key'},'product':{'post':'key'},'zone':{'post':'wi'}}, 'read':{'user':{'pre':'none'},'contract':{'pre':'none'},'product':{'pre':'key'},'zone':{'pre':'wi'}}, 'update':{'user':{'pre':'none','post':'key'},'contract':{'pre':'none','post':'external_contract_key'},'product':{'pre':'key','post':'key'},'zone':{'pre':'cfg','post':'wi'}}, 'delete':{'user':{'pre':'none'},'contract':{'pre':'none'},'product':{'pre':'key'},'zone':{'pre':'wi'}} }}, 'zones':{'cfg':'4Dwi_cfg','wi':'4Dwi' }, 'standard':{'create':{'user':{'post':'key'},'zone':{'post':'wi'},'contract':{'post':'key'},'product':{'post':'key'}}, 'read':{'user':{'pre':'key'},'zone':{'pre':'wi'},'contract':{'pre':'key'},'product':{'pre':'key'}}, 'update':{'user':{'pre':'key','post':'key'},'zone':{'pre':'wi','post':'wi'},'contract':{'pre':'key','post':'key'},'product':{'pre':'key','post':'key'}}, 'delete':{'user':{'pre':'key'},'zone':{'pre':'wi'},'contract':{'pre':'key'},'product':{'pre':'key'}}} } ====Methoden==== ===Base Accessor=== BaseAccessor:aquireLock BaseAccessor:releaseLock RootAccessor:logout RootAccessor:retrieveRemainingSessionTime RootAccessor:retrieveSessionRole ===Descript Accessor=== Freigegebene Methoden: DescriptAccess:updateDescriptValues DescriptAccess:searchDescriptEntry DescriptAccess:deleteDescriptEntry DescriptAccess:putDescriptEntry DescriptAccess:retrieveDescriptObjectContentAsJson DescriptAccess:retrieveDescriptObjectContent DescriptAccess:putDescriptObjectContentAsJson DescriptAccess:updateDescriptObjectContentAsJson DescriptAccess:retrieveFirstKeyOccurrenceByName DescriptAccess:createDescriptObjectAsJson DescriptAccess:deleteDescriptObjectEntryByName Nur Supportrolle: DescriptAccess:createDescriptEntry ===GeoPosition Accessor=== Freigegebene Methoden: GeoPositionAccess:createTrack GeoPositionAccess:appendTrackPoint GeoPositionAccess:closeTrack GeoPositionAccess:retrieveListTracks GeoPositionAccess:deleteTrack (nicht für worker) GeoPositionAccess:retrieveTrack GeoPositionAccess:retrievePointsOfTrack GeoPositionAccess:retrieveDataOfPoint GeoPositionAccess:retrieveSizeOfTrack GeoPositionAccess:retrieveCountTracks GeoPositionAccess:appendBulkOfPoints GeoPositionAccess:calculateTrackStatistics GeoPositionAccess:retrieveLastPositionsOfOpenTracks ==== Datenstrukturen ==== Verwendet werden der Descript-Prozessor und der GeoPositionProcessor. === Rollen === **Agilogik Support**: ''4D_winter_support'' **Manage User**: ''4D_winter_office'', ''4D_winter_office_demo'' (mit Multilogin) **Mobile User**: ''4D_winter_worker'', ''4D_winter_worker_demo'' (mit Multilogin) === Verwendung der GeoTracks === == Live Recorded Tracks == type : ''4D_winter_track'' name : '' - ()'' description : JSON encoded data { "vehicle" : , "salt" : , "tour" : , "login" : , "start_ts" : , "start_lon" : , "start_lat" : , ["customer" : ](0..1) } == Navigation Assistant Tracks == type : ''4D_navigation_track'' name : '''' description : JSON encoded data { "detail_description" : , "start_lon" : , "start_lat" : ["customer" : ](0..1) } === Verwendung der GeoPoints === == Live Recorded Tracks == GeoTrack.type : ''4D_winter_track'' **Fall: Automatisch erzeugter anonymer Trackpunkt** type : ''null'' name : ''null'' state : "-" := keine Streumittelgabe "+" := Streumittelgabe eingeschalten "o" := Räumschild angehoben "u" := Räumschild abgesenkt Beispiel: ''"-o"'' Leerfahrt ''"+u"'' Räumen und Streuen **Fall: Willentlich erzeugter Dokumentationspunkt (Hindernis)** type : ''"obstacle"'' name : '''' state : siehe anonymer Trackpunkt trace_continued : ''...folgt'' == Navigation Assistant Tracks == Dokumentation folgt... ---- ==== Verwendung des DescriptProzessors ==== **Basispfade:** ''4D_winter'' -> '''' -> '''' == Touren == "tours" : { : { : , : , : , : , : , (ab hier für App nicht relevant) : : }, : { } ... } null : Keine Angaben wurde gestrichen, da keine Verwendung mehr für "Lernmodus" : Angaben siehe ''GeoTrack.description'' (JSON encoded) == Fahrer == "drivers" : { : { "name" : , ["contract" : , ](0..1) ... } ... } == Fahrzeuge == "vehicles" : { : , : , (ab hier nicht relevant für Smartphone App) : , ... } == Hindernisse == "obstacles" : { : , ... } == Verträge/Kunden == nicht relevant für App "customers" : { : , "detail_information" : }