[jdev] Jabber - Core banking (ISO-8583)
Jonathan Dickinson
jonathan.dickinson at k2.com
Tue Sep 9 06:23:18 CDT 2008
Hi Reno,
I am browsing through the Wikipedia page right now.
Firstly, you would need to create a gateway. There are docs on how to do this else-where.
This gateway would have a number of JIDs that represent each bank (obviously always present).
You would then send iq stanzas to this component. For example:
<iq type="get" id="101" to="thebestbank at ISO8583.mycompany.org">
<query xmlns="myqueryns">
<iso8583 version="0"> <!-- version is first digit in MTI -->
<messageClass>authorization</messageClass> <!-- third digit -->
<messageFunction>request</messageFunction> <!-- fourth digit -->
<origin>acquirer+repeat</origin> <!-- fifth digit -->
<!-- here-with the fields -->
<pan>2834729</pan>
<credits type="forward">100</credits> <!-- some fields have two states, this one is either credits or credits, reversal. -->
<captureCode>01234</captureCode>
</iso8583>
</query>
</iq>
One approach you could take (if using .Net) is to implement your binary ISO8583 reader as an XML reader that spits out the elements. This would then allow you to do something like:
Iso8583Packet packet = ...;
IqStanza = ...;
IqQuery query = IqStanza.CreateQuery("myqueryns");
XmlReader reader = packet.GetReader();
XmlDocument doc = new XmlDocument();
doc.Load(reader);
query.SetContent(doc.RootElement);
And as for writing to your Iso8583 device:
IqQuery query = IqStanza.Query;
XmlWriter wrtr = new Iso8583PacketWriter(myNetworkTransport);
XmlDocument doc = new XmlDocument();
doc.AppendChild(query.XmlNode);
doc.Save(wrtr);
I am sure you get the idea. You could appropriate niso<http://niso8583.sourceforge.net/> for your uses. AgsXMPP is also a brilliant component development environment for XMPP components.
Oh, by the way, I am not sure if AgsXMPP supports serialization, but you can also just mark all the classes in niso as serializable and leave it up the .net framework to decide on how they look (not the best in terms of interopability, but it will get on the ground running).
If you are not going to use .Net then I am sure these concepts will translate in some way into the frameworks that you decide to use.
HTH.
From: jdev-bounces at jabber.org [mailto:jdev-bounces at jabber.org] On Behalf Of Reno Wijoyo
Sent: Tuesday, September 09, 2008 12:50 PM
To: jdev at jabber.org
Subject: [jdev] Jabber - Core banking (ISO-8583)
I'm trying to use Jabber as a mobile extension to core banking. Any suggestion on the best way to go about doing that? I'm thinking of using smack chatbot to communicate with database and other repositories. however the bank core is all in ISO 8583 format (no experience with the format yet).
Any suggestions or car eto share some experience. Thanks in advance.
Rgds,
Reno
More information about the JDev
mailing list