--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/a5ef9b0e-8fc1-4565-9577-11ae9ec96d04n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/dd709e9c-18c6-4df5-a1e3-7252ae88cf0bn%40googlegroups.com.
Hi Clifton.
You can use the jPOS-EE client simulator, here you can see an old post explaining how to set it up. Just use a newer version (2.2.9-SNAPSHOT is the current development version).
Modify 10_clientsimulator_channel.xml
configuration to match your server channel class, packager, and
header.
Hope this helps.
Andrés Alcarraz
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/2d6eb75a-a908-4457-846f-ce424cc17f73n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/abef6a55-46fc-f888-c26c-96e2d420da87%40gmail.com.
Hi Clifton, you have two ways to send the header.
<isomsg>
<header>ISO510000001804</header> <!-- I don't remember if you have to put the hex representation or the ASCII characters here -->
<field id="0" value="1800" />
<field id="7" value="! get_date()" />
<field id="11" value="! System.currentTimeMillis() % 1000000" />
<field id="12" value="! previousTrace" />
<field id="63" value="! new Date()" />
</isomsg>
Hope this helps.
Andrés.
Andrés,
Thank you for pointing me to the client simulator. I was able to set it up and work with it. It is able to send a request in echo_s file and receive a response. By the way, echo_s file contain a request in the format :<isomsg>
 <field id="0" value="1800" />
 <field id="7" value="! get_date()" />
 <field id="11" value="! System.currentTimeMillis() % 1000000" />
 <field id="12" value="! previousTrace" />
 <field id="63" value="! new Date()" />
</isomsg>
The client I am working with sends a request in the format below. How can I represent that request in echo_s?
Thank you for your usual support.
Clifton  --- header ---
  0000  49 53 4F 35 31 30 30 30  30 30 30 31 38 30 34   ISO510000001804
  --- data ---
  0000  82 20 00 00 08 00 00 00  04 00 00 00 00 00 00 00  . ..............
0010 Â 30 39 31 32 31 32 31 37 Â 35 38 32 35 38 38 30 31 Â 0912121758258801
0020 Â 32 32 35 35 31 32 32 35 Â 38 38 30 31 30 30 31 Â Â 225512258801001
On Tue, Sep 13, 2022 at 12:15 AM Andrés Alcarraz <alca...@gmail.com> wrote:
Hi Clifton.
You can use thejPOS-EE client simulator, hereyou can see an old post explaining how to set it up. Just use anewer version (2.2.9-SNAPSHOT is the current developmentversion).
Modify
10_clientsimulator_channel.xml
configuration to match your server channel class, packager, andheader.
Hope this helps.
Andrés Alcarraz
On 12/9/22 15:02, Clifton Mtengezowrote:
Sir,How can I develop a client sending a request to aNACChannel? I have a server configuration like below but theserver is kicking off when I send a request through telnet.
<server class="org.jpos.q2.iso.QServer" logger="Q2"name="${serverName}" realm="${serverName}">
  <attr name="port"type="java.lang.Integer">${serverListeningPort}</attr>
  <channelclass="com.acbtz.icpsvisaportal.channels.ICPSChannel"
       packager="org.jpos.iso.packager.ISO87APackager"header="0062ISO51000000"
       type="server"
       logger="Q2"
       realm="${serverName}">
    <property name="packager-config"value="cfg/packager/Iso93APackager.xml"/>
    <property name="timeout" value="180000"/>
  </channel>
  <request-listenerclass="org.jpos.iso.IncomingListener" logger="Q2"realm="incoming-request-listener">
    <property name="queue"  value="TXNMGR" />
    <property name="ctx.DESTINATION" value="${visaChannel1Name}-MUX" />
  </request-listener>
</server>
On Monday, 12 September2022 at 20:25:43 UTC+3 a...@jpos.org wrote:
When I first enteredthis payments world, I was blasted by jackass "PaymentProfessionals" hiding information and living by the"never make it sound simple" mantra. In a jPOSpresentation I did 20+ years ago I used this slide:
This was the way Ipictured them when I was in my twenties and trying tolearn about this, without specs, without access to thestandard, they talked about "bitmaps", and "fields",and then they would photocopy two pages out of a 500pages document so I could implement a parser in C, tobe used in ancient POS devices.
That's why I wrotejPOS, once I figured out this is super simple stuffhidden in poorly written half-baked so-called "Specs",I wanted to share how it works, so that thesemother-f***ers could stop playing the "I'm thesmart one here"Â game.
On Mon, Sep 12, 2022at 12:30 PM Clifton Mtengezo <tiko.m...@gmail.com>wrote:
Thank you Sir foryour endless, timely support. You have a very kind, unselfish heart too.
Thank you.Â
CliftonOn Monday, 12September 2022 at 18:22:03 UTC+3 a...@jpos.org wrote:
No needto apologize. All this stuff is so arbitrarythat it's not a matter of ignorance or beingsmart, it's just a matter of aligning thechannel, that handle the outer part of theISO8583 payload (think about an 'envelope'),and the packager, that handles theencoding/decoding (we call it pack/unpack) ofthe actual ISO8583 payload.
In thiscase, ASCIIChannel is definitely not what youwant. It seems that you are using a linkinspired or actually handled by a proprietaryBASE24 software. That uses a two-byte messagelength indicator in network byte order (alsocalled BIG ENDIAN), and then a header with thefixed constant 'ISO51000000'and then where's the actual ISO8583 messagebegins.
You may have to builda custom channel for that. Similar toNACChannel, but with a larger header.
On Mon, Sep12, 2022 at 11:41 AM Clifton Mtengezo <tiko.m...@gmail.com>wrote:
Sir
My apologies for my ignorance, I am juststarting jpos. Here is my issue: I amreceiving as a header (ISO510000001804)instead of (0062ISO51000000).
Request Received:
  --- header ---
  0000  49 53 4F 35 31 30 30 30  30 30 3031 38 30 34   ISO510000001804
  --- data ---
  0000  82 20 00 00 08 00 00 00  04 00 0000 00 00 00 00  . ..............
0010 Â 30 39 31 32 31 32 31 37 Â 35 38 32 3538 38 30 31 Â 0912121758258801
0020 Â 32 32 35 35 31 32 32 35 Â 38 38 30 3130 30 31 Â Â 225512258801001
 </receive>
Â
 Actual request Sent:
1209 161758893 34865230 00001029|5| StartDumpBank() Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4| - HEADERÂ Â : |0062ISO51000000| Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4| - BITMAP Â Â 82 20 00 00 08 00 00 00 04 00 00 0000 00 00 00 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4|----------------------------------- Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4| - M.T.IÂ Â Â : [1804] Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4| - FLD(FIELD): LENGTH : DATA Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4|----------------------------------- Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4| - FLD(007) Â (010) Â Â [0912121758] Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4| - FLD(011) Â (006) Â Â [258801] Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4| - FLD(037) Â (012) Â Â [225512258801] Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758893 34865230 00001029|4| - FLD(070) Â (003) Â Â [001] Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|5| End  DumpBank()                                      Â
1209 161758894 34865230 00001029|5| StartWriteLineMsg(63, 66) Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|0| Startdump_buffer() Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|D| Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â |START Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|D| Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â |NETWORK Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|D| Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â |OUTGOING Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|D| Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â |TIMESTAMP Â Â Â Â Â 1209161758 Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|D| 0 0 6 2I S O 5 1 0 0 0 0 0 0 1 8 0 Â |30 30 36 32 4953 4F 35 31 30 30 30 30 30 30 31 38 30
1209 161758894 34865230 00001029|D| 4 . Â .. . . . . . . . . . . . . 0 Â |34 82 20 00 0008 00 00 00 04 00 00 00 00 00 00 00 30
1209 161758894 34865230 00001029|D| 9 1 2 12 1 7 5 8 2 5 8 8 0 1 2 2 5 Â |39 31 32 31 3231 37 35 38 32 35 38 38 30 31 32 32 35
1209 161758894 34865230 00001029|D| 5 1 2 25 8 8 0 1 0 0 1 Â Â Â Â Â Â Â |35 31 32 32 3538 38 30 31 30 30 31 Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|D| Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â |END Â Â Â Â Â Â Â Â 1209161758 Â Â Â Â Â Â Â Â Â Â Â Â
1209 161758894 34865230 00001029|0| End  dump_buffer(VOID)                                  Â
1209 161758894 34865230 00001029|5| End  WriteLineMsg(OK)                                   Â
1209 161758894 34865230 00001029|5| StartReadLineMsg(63) Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161759072 34865230 00001029|1|Disconnect : 2 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161759072 34865230 00001029|5| End  ReadLineMsg(DISCONNECT)                               Â
1209 161759072 34865230 00001029|1| ProblemeOn Receiving Response..... Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
1209 161759072 34865230 00001029|0| ShutdownResource ...In Progress Â
My server configuration is below.
<server class="org.jpos.q2.iso.QServer"logger="Q2" name="${serverName}"realm="${serverName}">
  <attr name="port"type="java.lang.Integer">${serverListeningPort}</attr>
  <channelclass="org.jpos.iso.channel.ASCIIChannel"
       packager="org.jpos.iso.packager.ISO87APackager"header="0062ISO51000000"
       type="server"
       logger="Q2"
       realm="${serverName}">
    <property name="packager-config"value="cfg/packager/Iso93APackager.xml"/>
    <property name="timeout"value="180000"/>
  </channel>
  <request-listenerclass="org.jpos.iso.IncomingListener"logger="Q2"realm="incoming-request-listener">
    <property name="queue" value="TXNMGR" />
    <property name="ctx.DESTINATION" value="${visaChannel1Name}-MUX" />
  </request-listener>
</server>
Please assist.
Thanks for your usual support.
Clifton
--
--
jPOS is licensed under AGPL - free forcommunity usage for your open-source project.Licenses are also available for commercialusage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you aresubscribed to the Google Groups "jPOS Users"group.
To unsubscribe from this group and stopreceiving emails from it, send an email to jpos-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/a5ef9b0e-8fc1-4565-9577-11ae9ec96d04n%40googlegroups.com.
----
--
jPOS is licensed under AGPL - free for community usagefor your open-source project. Licenses are alsoavailable for commercial usage. Please support jPOS,contact: sa...@jpos.org
---
You received this message because you are subscribedto the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receivingemails from it, send an email to jpos-users+...@googlegroups.com.
To view thisdiscussion on the web visit https://groups.google.com/d/msgid/jpos-users/dd709e9c-18c6-4df5-a1e3-7252ae88cf0bn%40googlegroups.com.
--
jPOS is licensed under AGPL - free for community usage foryour open-source project. Licenses are also available forcommercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to theGoogle Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails fromit, send an email to jpos-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/2d6eb75a-a908-4457-846f-ce424cc17f73n%40googlegroups.com.
--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/abef6a55-46fc-f888-c26c-96e2d420da87%40gmail.com.
--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/CAKk%2BmdG%2BHWbvs8LJqRBmR9JCg5E37BqT3pdrGDOKuC5BHoWZkA%40mail.gmail.com.
Andrés,
Thank you for time and response.What I am asking is: the contents of echo_s have to be within xml tags? I cannot send somoething in hex e.g. 49 53 4F 35 31 30 30 30  30 30 30 31 38 30 34 82 20 00 00 08 00 00 00  04 00 00 00 00 00 00 00 30 39 31 32 31 32 31 37  35 38 32 35 38 38 30 31 32 32 35 35 31 32 32 35 38 38 30 31 30 30 31 ???RegardsCliftonÂ
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/49bb74af-66f7-24c6-4475-6cdb1aa15b2c%40gmail.com.
The simulator needs the files to be in xml. You can however call functions to convert the string to hex.
e.g.
Test case references a function.
<field id="7" value="! get_dateMMddhhmmss()"/>
Your testrunner class deploy file would have the function defined in the init
section. You can add your function to convert the data and pass it in. Though the packager that you setup should already convert from string to the field packager format.
https://github.com/jpos/jPOS-EE/blob/master/doc/src/asciidoc/module_client_simulator.adoc
<init>
import java.util.Date;
import org.jpos.iso.ISODate;
import org.jpos.iso.ISOUtil;
import org.jpos.space.*;
Space psp = SpaceFactory.getSpace("jdbm:simulator:./banknet_simulator_stan");
String get_stan() {
long stan = SpaceUtil.nextLong(psp, "STAN") % 1000000L;
return ISOUtil.zeropad(Long.toString(stan), 6);
}
String get_AuthID() {
long authid = SpaceUtil.nextLong(psp, "AUTHID") % 1000000L;
return ISOUtil.zeropad(Long.toString(authid), 6);
}
String get_Field63() {
String s = "MC0"+get_DE63_NetworkID() + get_DE63_BankNetRef();
return ISOUtil.padright(s, 49, ' ');
}
String get_dateMMddhhmmss() {
return ISODate.formatDate(new Date(), "MMddhhmmss");
}
</init>
-chhil