FreeCalypso > hg > freecalypso-docs
comparison SIM-data-formats @ 39:ce044aa49baf
SIM-data-formats: minor updates, including \E addition
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 25 Mar 2021 00:57:08 +0000 |
parents | ec184dad4877 |
children | 7609ff4be49f |
comparison
equal
deleted
inserted
replaced
38:ec184dad4877 | 39:ce044aa49baf |
---|---|
1 FreeCalypso is developing a family of several different tools that operate on | 1 FreeCalypso is developing a family of several different tools that operate on |
2 SIM cards and user data (primarily phonebooks) stored in them, accessing the | 2 SIM cards and user data (primarily phonebooks) stored in them, accessing the |
3 same underlying data through various mechanisms: | 3 same underlying data through various mechanisms: |
4 | 4 |
5 * Our current fc-simtool utility operates on SIM cards inserted into a smart | 5 * fc-simtool in our FC SIM tools suite operates on SIM cards inserted into a |
6 card "reader" device, without going through any kind of phone or other GSM | 6 smart card "reader" device, without going through any kind of phone or other |
7 device - most direct manipulation of SIM user data content. | 7 GSM device - most direct manipulation of SIM user data content. |
8 | 8 |
9 * We have plans to develop a companion utility (tentatively named fc-simint) | 9 * Our FC host tools suite features a new utility called fc-simint - it is a |
10 that will operate on SIM cards inserted into Calypso phones or FC modem | 10 front end to fc-simtool that operates on SIM cards inserted into Calypso |
11 boards, working on the same principle as fc-loadtool (suspending and bypassing | 11 phones or FC modem boards, working on the same principle as fc-loadtool |
12 the Calypso device's regular operational firmware), but operating on the | 12 (suspending and bypassing the Calypso device's regular operational firmware), |
13 device's SIM interface rather than its flash. This companion utility is | 13 but operating on the device's SIM interface rather than its flash. |
14 planned to replicate the end-user-oriented functionality of fc-simtool. | |
15 | 14 |
16 * We have a FreeCalypso User Phone Tools suite that communicates with FC modem | 15 * We have a FreeCalypso User Phone Tools suite that communicates with FC modem |
17 boards and the future FC phone handset via AT commands. We have plans to add | 16 boards and the future FC phone handset via AT commands. We have plans to add |
18 phonebook manipulation commands to this suite (based on AT+CPBR and AT+CPBW), | 17 phonebook manipulation commands to this suite (based on AT+CPBR and AT+CPBW), |
19 reading and writing phonebook data files in the same format as fc-simtool. | 18 reading and writing phonebook data files in the same format as fc-simtool. |
58 becoming \" | 57 becoming \" |
59 | 58 |
60 * GSM7 escape sequences for ASCII characters [\]^ and {|}~ are recognized and | 59 * GSM7 escape sequences for ASCII characters [\]^ and {|}~ are recognized and |
61 converted to these ASCII characters; \ is then escaped in the output as \\ | 60 converted to these ASCII characters; \ is then escaped in the output as \\ |
62 | 61 |
62 * GSM7 escape sequence for the Euro currency symbol is recognized and converted | |
63 to \E | |
64 | |
63 * GSM7 code points corresponding to CR and LF are represented as \r and \n | 65 * GSM7 code points corresponding to CR and LF are represented as \r and \n |
64 | 66 |
65 * GSM7 escape characters that are not part of a valid sequence for [\]^ or {|}~ | 67 * GSM7 escape characters that are not part of a valid sequence for [\]^ or {|}~ |
66 are represented as \e | 68 (or for \E) are represented as \e |
67 | 69 |
68 * All other GSM7 characters that cannot be represented in ASCII in any other | 70 * All other GSM7 characters that cannot be represented in ASCII in any other |
69 way are represented as \xX escapes, where xX is a two-digit hexadecimal number | 71 way are represented as \xX escapes, where xX is a two-digit hexadecimal number |
70 in the range between 00 and 7F, inclusive. | 72 in the range between 00 and 7F, inclusive. |
71 | 73 |
93 input parser always interprets any backslash (\) characters as escapes; it | 95 input parser always interprets any backslash (\) characters as escapes; it |
94 understands all of the same escapes sequences which we emit in output: | 96 understands all of the same escapes sequences which we emit in output: |
95 | 97 |
96 \" literal " | 98 \" literal " |
97 \\ literal \ (encoded in GSM 03.38 as another form of escape) | 99 \\ literal \ (encoded in GSM 03.38 as another form of escape) |
100 \E Euro currency symbol (ditto) | |
98 \e GSM 03.38 escape character 0x1B | 101 \e GSM 03.38 escape character 0x1B |
99 \n GSM 03.38 LF character 0x0A | 102 \n GSM 03.38 LF character 0x0A |
100 \r GSM 03.38 CR character 0x0D | 103 \r GSM 03.38 CR character 0x0D |
101 \xX GSM 03.38 code point xX, passed through literally | 104 \xX GSM 03.38 code point xX, passed through literally |
102 | 105 |
113 Phonebook file format | 116 Phonebook file format |
114 ===================== | 117 ===================== |
115 | 118 |
116 fc-simtool pb-dump command displays SIM phonebook content on the terminal or | 119 fc-simtool pb-dump command displays SIM phonebook content on the terminal or |
117 saves it in a file in the format defined here, and other tools such as | 120 saves it in a file in the format defined here, and other tools such as |
118 fc-simtool pb-update command need to be able to read back the same format | 121 fc-simtool pb-restore and pb-update commands need to be able to read back the |
119 losslessly. The phonebook file format is hereby shown by way of example: | 122 same format losslessly. The phonebook file format is hereby shown by way of |
123 example: | |
120 | 124 |
121 #1: #646#,0x81 "Check Minutes" | 125 #1: #646#,0x81 "Check Minutes" |
122 #2: #674#,0x81 "Check Text Usage" | 126 #2: #674#,0x81 "Check Text Usage" |
123 #3: #225#,0x81 "Check Balance" | 127 #3: #225#,0x81 "Check Balance" |
124 #4: 8675309,0x81 "Jenny" | 128 #4: 8675309,0x81 "Jenny" |