-
Notifications
You must be signed in to change notification settings - Fork 111
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reached queue timeout #18
Comments
Hi Sihameed, The following lines say that the data was indeed sent to your backend. But there were no response. So after 35 seconds the client was disconnected due to timeout.
The reason there was no response is more likely your host understands different message or message header syntax. I suggest you check the manual for your host, its log files or any test messages that are known to work. Thus you can get the syntax difference. |
Hi Igor, Thank you for the advice. I check also there is parameter.js, what is the purpose of this file? |
Sihameed, Could you please provide message body with header the way your host expects it to be? I mean do you have any test case your host is known to answer? There is a --lengthHeaderType option with available values 'numeric' or 'hex'. It changes the header format. You can also use --help so the the list of all options available. |
Hi Igor, Yes, we have sample from the client system known by our Host.
Also attached those request-response stream (captured from wireshark). |
You should use --lengthHeaderType=hex. In your message the length header is 0037. These is hex length that corresponds to 54 in decimal representation. Also, the binary mask of the sample provided ('fixed-b-hex') is different then the default format ('binary'). To change it add --overrides=1:fixed-b-hex:8 parameter. |
Hi Igor, Now looks much better, our host replied the sent message, and SocketQueue can receive the response from host. But still got error and seems like the response not yet parsed well. I also create new config file - upg (copied from smartVista config).
The response:
Is there any other parameters need to configured? |
There seem to be terminal id in the initial message for some reason. SQ knows clients (as all other ISO systems do) by their terminal id. |
Did you tweak the source? If I run your curl I get the terminal id right:
|
Sihameed, just gave you a wrong hint. Please use
This is a proper binary mask format in your case. |
Hi Igor, The result from our host can parsed well in SQ.
Please find in attachment the logs from the testing. Please help... |
Hi Sihameed. Your host uses 2 bytes for field 39 instead of 3 which is default. The terminal id is getting shifted one character to the right and turns into 10 instead of 1. So please add an override:
|
Hi Igor, Thank you very much for your help If you don't mind, can we have your personal contact? for further more question or any discussion :) |
Sihameed, personal contact is fine, but let's keep it public here :-) By the way, what kind of ISO system you work with? As far I can see it is based on JPOS library. |
Ok Igor :-) Currently i'm work with virtual account payment gateway. Current messaging only support iso8583. Yes you are correct, the system based on JPos library. |
Hi Igor,
We try use SocketQueue connect to our backend ISO.
Our backend IP is 10.225.16.48, and the service at the backend listening on port 333.
We start the SocketQueue with this below command:
node socketQueue.js --upstreamHost=10.225.16.48 --upstreamPort=333 --listenHttpPort=8080 --echoServerPort=333 --vv --logFile=log.txt
But, when we try to simulate send the request:
curl -H "Content-Type: application/json" -X POST -d '{ "0": "0800", "3": "1", "7": "1112070616", "11": "436014", "24": "1", "41": "1", "70": "001"}' http://127.0.0.1:8080
We got queue timeout.
We figure out, the SocketQueue doen't sent our requested message to our backend (10.225.16.48).
2017-11-12 08:26:20 - info: Writing to queue http:::1:57404 [0]
2017-11-12 08:26:20 - info: New queue item 2
2017-11-12 08:26:20 - info: Processing queue [pending 1 / total 1]
2017-11-12 08:26:20 - verbose: Queue keys dump: 2
2017-11-12 08:26:20 - info: Upstreaming data for http:::1:57404
2017-11-12 08:26:20 - verbose: [00560800...]
2017-11-12 08:26:55 - info: Queue notice: http:::1:57404 reached queue timeout
2017-11-12 08:26:55 - info: Dropping the client http:::1:57404
2017-11-12 08:26:55 - info: Client http:::1:57404 gateway timeout
2017-11-12 08:26:55 - info: Client http:::1:57404 event
2017-11-12 08:26:55 - verbose: Releasing terminal 00000003 with the key 2
2017-11-12 08:26:55 - info: Warning: client http:::1:57404 [queue id 2] terminated activity
2017-11-12 08:26:55 - info: Processing queue [pending 0 / total 0]
2017-11-12 08:26:55 - info: The queue is empty
N.B:
-No firewall between SocketQueue to the backend.
-We test connection using telnet is successful.
Please help.
Thanks
The text was updated successfully, but these errors were encountered: