@ -1,7 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<ATB_APP_STATES version= "1.1" >
<APP_STATE name= "IDLE" >
<EVENT name= "BUTTON_START" resultingState= "LICENSEPLATE_INPUT" />
<!-- <EVENT name="BUTTON_START" resultingState="PRODUCT_SELECTION"/> -->
<EVENT name= "BUTTON_START" resultingState= "SETUP_SELL_STATE" />
<EVENT name= "SELL_DISABLE" resultingState= "FREE_PARK" />
<SCREEN name= "START" />
<MODE name= "IDLE" />
@ -12,17 +13,32 @@
<MODE name= "IDLE" />
</APP_STATE>
<APP_STATE name= "SETUP_SELL_STATE" >
<ENTRY_TASK name= "TIMER" timeout= "500" />
<EVENT name= "TIMEOUT" resultingState= "PARKTIME_SELECTION" setProduct= "SHORT_TERM_PARKING" />
</APP_STATE>
<APP_STATE name= "PRODUCT_SELECTION" >
<EVENT name= "BUTTON_CANCEL" resultingState= "IDLE" />
<EVENT name= "BUTTON_VEHICLE_1" resultingState= "LICENSEPLATE_INPUT" setProduct= "SHORT_TERM_PARKING" setCheckFeature= "SKIP_TICKET_PRINT" />
<EVENT name= "BUTTON_VEHICLE_2" resultingState= "PARKTIME_SELECTION" setProduct= "SHORT_TERM_PARKING" />
<SCREEN name= "PRODUCT_SELECTION" />
</APP_STATE>
<!--
<APP_STATE name= "SKIP_TICKET_PRINT_TEST" >
<ENTRY_TASK name= "PRINT_LOG" text= "APP_STATE name=SKIP_TICKET_PRINT_TEST" />
<ENTRY_TASK name= "CHECK_FEATURE" checkFeatureName= "SKIP_TICKET_PRINT" />
<EVENT name= "CHECK_TRUE" resultingState= "LICENSEPLATE_INPUT" />
<EVENT name= "CHECK_FALSE" resultingState= "PARKTIME_SELECTION" />
</APP_STATE>
-->
<APP_STATE name= "LICENSEPLATE_INPUT" >
<EVENT name= "BUTTON_CANCEL" resultingState= "IDLE" />
<EVENT name= "BUTTON_NEXT" resultingState= "PARKTIME_SELECTION" setProduct= "ShortTimeParking" />
<EVENT name= "BUTTON_NEXT" resultingState= "PARKTIME_SELECTION" setProduct= "S HORT_TERM_PARKING "/>
<SCREEN name= "LICENSEPLATE_INPUT" />
</APP_STATE>
<APP_STATE name= "PRODUCT_SELECTION" >
<EVENT name= "BUTTON_CANCEL" resultingState= "IDLE" />
<EVENT name= "BUTTON_VEHICLE_1" resultingState= "PAYMENT_SELECTION_SHORT_TIME" setCashInputMode= "PAY_UP" setProduct= "ShortTimeParking" />
<EVENT name= "BUTTON_VEHICLE_2" resultingState= "PAYMENT_SELECTION_DAY" setCashInputMode= "PAY_DOWN" setProduct= "DayTicket" />
<SCREEN name= "PRODUCT_SELECTION" />
</APP_STATE>
<APP_STATE name= "PAYMENT_SELECTION" >
<EVENT name= "BUTTON_CANCEL" resultingState= "IDLE" />
@ -62,7 +78,7 @@
<APP_STATE name= "CARD_PAYMENT" >
<ENTRY_TASK name= "REQUEST_PARKING_ENDTIME" key= "PRICE_INFO_GROSS" />
<ENTRY_TASK name= "REQUEST_CC_START_TRANSACTION" />
<EVENT name= "RECEIVED_CARD_TRANSACTION_SUCCESS" resultingState= " PRINT_TICKET _CARD"/>
<EVENT name= "RECEIVED_CARD_TRANSACTION_SUCCESS" resultingState= " CHECK_PAPERLESS _CARD"/>
<EVENT name= "RECEIVED_CARD_TRANSACTION_ERROR" resultingState= "CC_PAYMENT_ERROR" />
<EVENT name= "BUTTON_CANCEL" resultingState= "USER_CC_ABORT" />
<SCREEN name= "CC_PAYMENT" />
@ -71,8 +87,8 @@
<APP_STATE name= "CASH_PAYMENT" >
<ENTRY_TASK name= "REQUEST_CASH_INPUT" />
<EVENT name= "RECEIVED_CASH_INPUT" resultingState= "CASH_PAYMENT_INPUT" />
<EVENT name= "RECEIVED_CASH_INPUT_OVERPAYED" resultingState= " PRINT_TICKET _CASH"/>
<EVENT name= "RECEIVED_CASH_INPUT_FINISHED" resultingState= "PRINT_TICKET _CASH"/>
<EVENT name= "RECEIVED_CASH_INPUT_OVERPAYED" resultingState= " CHECK_PAPERLESS _CASH"/>
<EVENT name= "RECEIVED_CASH_INPUT_FINISHED" resultingState= "CHECK_PAPERLESS _CASH"/>
<EVENT name= "RECEIVED_CASH_INPUT_ERROR" resultingState= "CASH_PAYMENT_ERROR" />
<EVENT name= "BUTTON_CANCEL" resultingState= "CASH_PAYMENT_ABORT" />
<SCREEN name= "COIN_PAYMENT" />
@ -80,8 +96,8 @@
<APP_STATE name= "CASH_PAYMENT_INPUT" >
<ENTRY_TASK name= "REQUEST_PARKING_ENDTIME" key= "PRICE_INFO_GROSS" />
<EVENT name= "RECEIVED_CASH_INPUT" resultingState= "CASH_PAYMENT_INPUT" />
<EVENT name= "RECEIVED_CASH_INPUT_OVERPAYED" resultingState= " PRINT_TICKET _CASH"/>
<EVENT name= "RECEIVED_CASH_INPUT_FINISHED" resultingState= "PRINT_TICKET _CASH"/>
<EVENT name= "RECEIVED_CASH_INPUT_OVERPAYED" resultingState= " CHECK_PAPERLESS _CASH"/>
<EVENT name= "RECEIVED_CASH_INPUT_FINISHED" resultingState= "CHECK_PAPERLESS _CASH"/>
<EVENT name= "RECEIVED_CASH_INPUT_ERROR" resultingState= "CASH_PAYMENT_ERROR" />
<EVENT name= "BUTTON_CANCEL" resultingState= "CASH_PAYMENT_ABORT" />
<EVENT name= "BUTTON_NEXT" task= "PAYMENT_ACCEPTED" resultingState= "CASH_PAYMENT_INPUT" />
@ -94,7 +110,7 @@
<SCREEN name= "CASH_PAYMENT_FAILED" note= "screennumber 0x39" />
</APP_STATE>
<APP_STATE name= "CASH_OVERPAYED" >
<ENTRY_TASK name= "REQUEST_IS A MAS_FAIL_TRANSACTION"/>
<ENTRY_TASK name= "REQUEST_IS MAS_FAIL_TRANSACTION"/>
<ENTRY_TASK name= "CASH_ABORT" />
<ENTRY_TASK name= "TIMER" timeout= "3000" />
<EVENT name= "TIMEOUT" resultingState= "IDLE" />
@ -114,6 +130,19 @@
<SCREEN name= "BUSY" />
</APP_STATE>
-->
<APP_STATE name= "CHECK_PAPERLESS_CASH" >
<ENTRY_TASK name= "CHECK_FEATURE" checkFeatureName= "SKIP_TICKET_PRINT" />
<EVENT name= "CHECK_TRUE" resultingState= "FINALISE_CASH_PAYMENT" setTransactionDelivery= "ONLINE" setTransactionResult= "SUCCESS" />
<EVENT name= "CHECK_FALSE" resultingState= "PRINT_TICKET_CASH" />
</APP_STATE>
<APP_STATE name= "CHECK_PAPERLESS_CARD" >
<ENTRY_TASK name= "CHECK_FEATURE" checkFeatureName= "SKIP_TICKET_PRINT" />
<EVENT name= "CHECK_TRUE" resultingState= "CARD_PAYMENT_CONFIRM" setTransactionDelivery= "ONLINE" setTransactionResult= "SUCCESS" />
<EVENT name= "CHECK_FALSE" resultingState= "PRINT_TICKET_CARD" />
</APP_STATE>
<APP_STATE name= "PRINT_TICKET_CASH" >
<ENTRY_TASK name= "REQUEST_PRINT_TICKET" />
<EVENT name= "PRINT_TICKET_FINISHED" resultingState= "FINALISE_CASH_PAYMENT" />
@ -137,20 +166,28 @@
<APP_STATE name= "CARD_PAYMENT_CONFIRM" >
<ENTRY_TASK name= "REQUEST_CC_CONFIRM_TRANSACTION" />
<EVENT name= "RECEIVED_CARD_CONFIRM_TRANSACTION_SUCCESS" resultingState= " PRINT _RECEIPT"/>
<EVENT name= "RECEIVED_CARD_CONFIRM_TRANSACTION_SUCCESS" resultingState= " ASK _RECEIPT"/>
<EVENT name= "RECEIVED_CARD_CONFIRM_TRANSACTION_ERROR" resultingState= "CC_PAYMENT_ERROR" />
</APP_STATE>
</APP_STATE>
<APP_STATE name= "ASK_RECEIPT" >
<ENTRY_TASK name= "TIMER" timeout= "6000" />
<EVENT name= "TIMEOUT" resultingState= "GOODBYE_PAYMENT_OK" />
<EVENT name= "BUTTON_YES" resultingState= "PRINT_RECEIPT" />
<EVENT name= "BUTTON_NO" resultingState= "GOODBYE_PAYMENT_OK" />
<SCREEN name= "ASK_RECEIPT" />
</APP_STATE>
<APP_STATE name= "PRINT_RECEIPT" >
<ENTRY_TASK name= "REQUEST_PRINT_RECEIPT" />
<EVENT name= "PRINT_RECEIPT_FINISHED" resultingState= "GOODBYE_PAYMENT_OK" />
<EVENT name= "PRINT_RECEIPT_ERROR" resultingState= "PRINT_TICKET_FAILED" />
</APP_STATE>
<SCREEN name= "PRINT_RECEIPT" />
</APP_STATE>
<APP_STATE name= "FINALISE_CASH_PAYMENT" >
<ENTRY_TASK name= "CASH_COLLECT" />
<EVENT name= "RECEIVED_CASH_CHANGE_BACK" resultingState= "GIVE_CHANGE" />
<EVENT name= "RECEIVED_CASH_PAYMENT_FINISHED" resultingState= "GOODBYE_PAYMENT_OK" />
<!-- TODO: han g le changer Error -->
<!-- TODO: han d le changer Error -->
<!-- no screen change here -->
</APP_STATE>
<APP_STATE name= "GIVE_CHANGE" >
@ -161,8 +198,8 @@
<ENTRY_TASK name= "REQUEST_ISMAS_TRANSACTION" />
<ENTRY_TASK name= "TIMER" timeout= "2000" />
<EVENT name= "TIMEOUT" resultingState= "IDLE" />
<SCREEN name= "GOODBYE_ PAYMENT_OK "/>
</APP_STATE>
<SCREEN name= "GOODBYE_ 3" note= "green_hook "/>
</APP_STATE>
<APP_STATE name= "CC_PAYMENT_ERROR" >
<ENTRY_TASK name= "REQUEST_ISMAS_FAIL_TRANSACTION" />