{ "Serilog": { "WriteTo": [ { "Name": "File", "Args": { "path": "logs\\log_.txt", "rollingInterval": "Day" } } ] }, "SerialPort": { "CDMPort": "COM4", "SensorPort": "COM3" }, "StateMachine": { "States": [ "Start", "Init", "Count", "Check", "Store", "End", "AutoEnd", "Logout" ], "Transitions": [ { "From": [ "Start" ], "To": [ "Init" ], "Actions": [ { "Name": "DoInit", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": false }, { "From": [ "Init" ], "To": [ "Count" ], "Actions": [ { "Name": "DoCount", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": true }, { "From": [ "Count" ], "To": [ "Check" ], "Actions": [ { "Name": "DoCheck", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": true }, { "From": [ "Count" ], "To": [ "Store" ], "Actions": [ { "Name": "DoStore", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": true }, { "From": [ "Store" ], "To": [ "End" ], "Actions": [ { "Name": "DoEnd", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": true }, { "From": [ "Count", "Check", "Store" ], "To": [ "Count" ], "Actions": [ { "Name": "DoCount", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": true }, { "From": [ "End", "AutoEnd", "Logout" ], "To": [ "Start" ], "Actions": [ { "Name": "DoLogout", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": false }, { "From": [ "Start", "Init", "Count", "Check", "Store" ], "To": [ "Timeout" ], "Actions": [ { "Name": "ShowTimeoutScreen", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": false }, { "From": [ "Timeout" ], "To": [ "Start", "Init", "Count", "Check", "Store" ], "Actions": [ { "Name": "BackScreen", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": false }, { "From": [ "Init", "Count", "Check", "Store", "Timeout" ], "To": [ "AutoEnd" ], "Actions": [ { "Name": "DoStore", "IsRequired": true }, { "Name": "DoEnd", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": false }, { "From": [ "Init", "Count", "Check", "Store", "Timeout" ], "To": [ "Logout" ], "Actions": [ { "Name": "DoLogout", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": false }, { "From": [ "Start", "Init", "Count", "Check", "Store", "Timeout" ], "To": [ "Maintainance" ], "Actions": [ { "Name": "ShowMaintainanceScreen", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": false }, { "From": [ "Maintainance" ], "To": [ "Start" ], "Actions": [ { "Name": "ShowWelcomeScreen", "IsRequired": true } ], "RequireAtLeastOneActionSuccess": false } ], "Actions": { "DoInit": "Initialize System", "DoCount": "Start counting", "DoCheck": "Get money for re-count", "DoStore": "Perform Store", "DoEnd": "Perform End", "DoLogout": "Logout" } } }