ISO 8583 Rev 93 メッセージを送信するタスクに直面しており、openiso8583.net を使用しています。私のメッセージを使用している会社はメッセージ サンプルを提供しましたが、次のフィールド属性について不明です。
特殊文字 英字と数字 英字と特殊文字 数字と特殊文字 英字、数字、特殊文字
次に例を示します。
Signon Reply
0810822000000200000004000000000000000501130427000005F0F00001
NUM |FLDNAME |FIELD DESCRIPTION |LEN |T|FIELD VALUE
-----|--------|-------------------------------|----|-|--------------------------
N/A |MSGTYPE |MESSAGE TYPE |F2 |H|0810`
N/A |BITMAP1 |FIRST BITMAP |B8 |H|8220000002000000`
1 |BITMAP2 |SECOND BITMAP |B8 |H|0400000000000000`
7 |MISDTMDT|TRANSMISSION DATE AND TIME |F5 |H|0501130427`
11 |MISDSTAN|SYSTEM TRACE AUDIT NUMBER |F3 |H|000005`
39 |MISDRSPC|RESPONSE CODE |F2 |C|00` <------?
70 |MISDNMIC|NETWORK MANAGEMENT INFO CODE |F2 |H|0001`
まず、メッセージ バイトを見てみましょう: 081082200000020000000400000000000000501130427000005* F0F0 *0001
私の質問は、2 バイト { 0xF0, 0xF0 } がどのように「00」に変換されるかです。会社が ASCII を送信している場合、"00" は { 0x30, 0x30 } であると予想します。BCD は数値に使用されますが、文字値がどのようにエンコードされているかわかりません。
フィールド 39 の説明は次のとおりです。
039:
Network Response Code
Attributes:
an 2*
Description:
A field that indicates the result of a previous related request. It will indicate
approval or reason for rejection if not approved. It is also used to indicate to the
device processor whether or not machines that are capable of retaining the customer's
card should do so.
Format:
In transaction replies, the response code must contain one of the following values
with their corresponding meanings. For debit/host-data-capture 0220 / 0420 messages, a
response code of '00' must be returned to indicate the transaction was approved. For
EBT transactions, please refer to section 4.8 EBT Transaction Receipt Requirements.
an2 は英字と数字を意味します
ビットマップ 1 は 64 ビット
ビットマップ 2 は 64 ビット
メッセージ タイプは 4 バイトです
フィールド 7 は、数値 4 ビット BCD (パックされた符号なし) 10、5 バイトです。
フィールド 11 は、数値の 4 ビット BCD (パックされた符号なし) 6、3 バイトです。
フィールド 39 は 2 です。2 バイトと仮定します
フィールド 70 は、数値の 4 ビット BCD (パックされた符号なし) 3、2 バイトです。
手がかりや指針をいただければ幸いです。ISO 8583 Rev 93で文字がどのようにエンコードされているかについて、私が明らかに知らない、または一般的な説明をすることができるエンコーディングを誰かが知っているかもしれません。