beautypg.com

4 - developing custom apps – MagTek iDynamo User Manual

Page 15

background image

4 - Developing Custom Apps

iDynamo| MagneSafe Secure Card Reader Authenticator | Technical Reference Manual


Page 15

4.4.1 State Transitions Example: Power Up, Authentication, Good Swipe

1) Reader Powers Up (State = WaitActAuth:PU). App should send the Get Reader State

command to discover the current state of the reader.

2) App sends valid Activate Authenticated Mode command (State→WaitActRply:PU).

Reader returns response code 00 inferring the transition to the WaitActRply:PU state.

3) App sends valid Activation Challenge Reply command (State→WaitSwipe:PU).

Reader returns response code 00 inferring the transition to the WaitSwipe:PU state.

4) User swipes a card correctly (State→WaitActAuth:GoodSwipe). Reader sends encrypted card

data to the app inferring the transition to the WaitActAuth:GoodSwipe state.

4.4.2 State Transitions Example: Reader Timeout Waiting for Swipe

1) Reader waiting (State = WaitActAuth:GoodSwipe). This is after a good swipe. App may send

the Get Reader State command to discover the current state of the reader.

2) App sends valid Activate Authenticated Mode command

(State→WaitActRply:GoodSwipe). Reader returns response code 00 inferring the transition to
the WaitActRply:GoodSwipe state.

3) App sends valid Activation Challenge Reply command

(State→WaitSwipe:GoodSwipe). Reader returns response code 00 inferring the transition to the
WaitSwipe:GoodSwipe state.

4) Timer expires (State→WaitActAuth:TOSwipe). Reader returns empty card data to the app to

report the timeout (see Reader Encryption Status in iDynamo MagneSafe
Communication Reference Manual
). App infers a transition to WaitActAuth:TOSwipe state.

4.4.3 State Transitions Example: App Sends Invalid Activation Challenge Reply Command

1) Reader Waiting (State = WaitActAuth:GoodSwipe). This is after a good swipe. App may send

the Get Reader State command to discover the current state of the reader.

2) App sends valid Activate Authenticated Mode command

(State→WaitActRply:GoodSwipe). Reader returns response code 00, inferring the transition to
the WaitActRply:GoodSwipe state.

3) App sends invalid Activation Challenge Reply command

(State→WaitActAuth:FailAuth). Reader returns response code 02 or 04 inferring the
transition to the WaitActAuth:FailAuth state.

4.4.4 State Transitions Example: Timeout Waiting for App’s Activation Challenge Reply

1) Reader Waiting (State = WaitActAuth:GoodSwipe). This is after a good swipe. App may send

the Get Reader State command to discover the current state of the reader.

2) App sends valid Activate Authenticated Mode command

(State→WaitActRply:GoodSwipe). Reader returns response code 00 inferring the transition to
the WaitActRply:GoodSwipe state.

3) Reader times out waiting for app to send Activation Challenge Reply command

(State→WaitActAuth:TOAuth). App doesn’t know because the reader can/does not send any
message.

4) App eventually sends Activation Challenge Reply command (state remains

WaitActAuth:TOAuth). Reader returns response code 07 inferring the previous transition to
WaitActAuth:TOAuth state.