timgabets / electron-atm

A simple free open-source NDC ATM emulator, written on JavaScript, jQuery and Electron framework.
GNU Lesser General Public License v2.1
96 stars 58 forks source link

Basic Configuration for Starters #11

Closed rowyna closed 6 years ago

rowyna commented 6 years ago

Hi, thank you for creating and sharing this wonderful project. Really looking forward for how this software will be improved.

I tried the simulator and able to connect to ATM host. However, electron ATM is showing this error:

atm.setScreen(): unable to find screen 001

There is no screen and there is also nothing in States, Screens, FITs, etc. tabs. Sending NDC configuration to ATM simulator also doesn't work.

I believe there is something that I missed. Do you mind to share of how to configure ATM simulator to work, assuming there is ATM host that is live and able to work with real ATM?

timgabets commented 6 years ago

Hi, unfortunately, I cannot share the complete ATM configuration. Sorry for that.

By the way,

Sending NDC configuration to ATM simulator also doesn't work.

Could you please give me some more details on that - what happens when there is "Load States" command being sent from host?

Here is the example of such command being sent from my ATM switch:

default

And here is how the data parsed: default

When the incoming message was parsed, the "Solicited Status Ready" message aka (status 9) was sent: default

If there is any error while receveing or processing the message from host, it will be highlighted with red.

rowyna commented 6 years ago

Thank you for your response. From your response I can compare with mine. I think the cause of the problem is that the LUNO I use is 9 digits and the response I expect contains 000# in front. I am not too proficient about NDC protocol, perhaps the protocol that you use different from mine?

Here is the screenshot: scratmelectron

These are the examples of messages that can be accepted by my system 00 0E 31 1C 30 30 30 30 30 32 33 34 35 1C 1C 34 ..1.000002345..4

#Without header length
30 30 30 23 32 32 1C 30 30 30 30 30 32 33 34 35 1C 1C 46 1C 000#22.000002345..F.
32 39 35 38 39 30 30 30 32 33 38 37 30 31 30 30 30 30 31 30 29589000238701000010
30 30 30 32 30 30 30 30 32 30 30 30 30 30 30 30 31 30 30 30 00020000200000001000
30 31 30 30 30 30 31 30 30 30 30 31 30 30 30 30 30 30 30 30 01000010000100000000
30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 00000000000000000000
30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 30 30 30 00000000000000001000
30 30 30 30 30 30 30 30 30 30 30 30                         000000000000
timgabets commented 6 years ago

Alright,

it seems that the main issue here is that your ATM switch uses 4-byte 000# header. I've checked the NDC manual, but this header is refered as just "Header. Protocol-dependent" without any details on it.

timgabets commented 6 years ago

I've implemented the hardcoded protocol-dependent message header support, you may check it out in app version 1.4.3 That's all that I can do for now.

rowyna commented 6 years ago

I've tried your new version (v1.43, Windows), now it can load screens. Thank you very much.

BTW, one thing I noticed, if I put Header at configuration window (where there is LUNO), e.g. 000# then the response for NDC message will be: 000#000#... If I remove the Header configuration then the response will be: #000...

rowyna commented 6 years ago

I close this issue because in overall the main question has been solved. Thank you again.

hprobotic commented 3 years ago

@rowyna are you still working on this project?