FreeCalypso > hg > fc-pcsc-tools
annotate doc/User-oriented-commands @ 90:8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Wed, 17 Feb 2021 18:40:34 +0000 | 
| parents | 629be330f92b | 
| children | d924e4b1387f | 
| rev | line source | 
|---|---|
| 64 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 This document describes those commands and functions of fc-simtool which can be | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 exercised by end users on any regular operator-issued SIM, without requiring a | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 special programmable SIM with admin privileges. The Mother's plans for future | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 development include a companion fc-simint utility that will operate on SIM cards | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 inside Calypso phones; the intent is that all of the end-user-oriented commands | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 of fc-simtool described in this document will also be replicated in fc-simint. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 Understanding SIM PIN1 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 ====================== | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 Every standard SIM card has a secret code called PIN1; this secret code can be | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 anywhere between 4 and 8 digits in length, with 4-digit PINs being most common. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 In terms of persistent non-volatile state, SIM PIN1 can be enabled or disabled. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 When SIM PIN1 is disabled, all regular functions of the card are enabled, as in | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 being able to power up the phone with the SIM in it and connect to the GSM | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 network with your subscriber identity, and being able to read and write SIM user | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 data content like phonebooks and stored messages - all of these functions are | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 enabled from the moment you turn on the phone with the SIM in it (or power the | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 SIM up by itself in a smart card "reader" driven by fc-simtool), without the | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 user ever being asked for a PIN, such that you can forget that the PIN even | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 exists - this situation in very common nowadays. But when SIM PIN1 is enabled, | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 the smart chip in the SIM will not allow you access to any of the data stored | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 on the card and will not allow any GSM authentication operations until and | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 unless you send the correct PIN to the SIM in the VERIFY CHV command. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 If you forgot your PIN1, the only way to reset it is to enter another secret | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 code (always 8 digits in length) called PUK1. If the SIM is made according to | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 standards, then its PUK1 is set to a random number during either physical | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 manufacturing or administrative programming of the card and then remains | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 unchangeable afterward. Therefore, in an ideal world if someone forgot their | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 PIN1 and don't have their PUK1 either, they should be able to obtain PUK1 from | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 the cellular operator who issued the SIM - but whether or not today's operators | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 will actually help such hapless users (without forcing them to get a new SIM) | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 is another question altogether. PUK1 is often printed on the big (credit-card- | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 sized) plastic piece on which SIM cards are initially delivered - but it doesn't | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 help if you originally got your SIM many ages ago and no longer have that | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 souvenir plastic piece. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 The standard protocol for communicating with SIM cards provides 5 special | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 commands that are dedicated to working with PIN1, and so does fc-simtool: | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 verify-pin1 XXXX | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 This command tells the SIM that you are attempting to prove knowledge | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 of PIN1, presenting a string of digits. If the PIN digits you specify match | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 the PIN1 secret code stored inside the SIM, the card unlocks access to its | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 primary functions. If the digits you send are wrong, the SIM decrements its | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 non-volatile attempt counter, giving you a total of 3 attempts (irrespective of | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 card power-downs between attempts) to enter the correct PIN. If PIN1 is entered | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 incorrectly 3 times in a row, this PIN is blocked, and the only way to unblock | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 it is via PUK1. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 enable-pin1 XXXX | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 This command changes the non-volatile state of the PIN1 enable/disable flag, | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 such that from now on the SIM will require PIN1 to be provided on every card | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 power-up before it will allow GSM authentication and access to user data. The | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 enable-pin1 operation itself requires correct PIN1 digits to be provided. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 disable-pin1 XXXX | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 This command changes the non-volatile state of the PIN1 enable/disable flag, | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 such that from now on the SIM will NOT require PIN1 to be provided on every | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 card power-up, and will instead be live immediately without needing proof of | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 card owner's identity. The disable-pin1 operation itself requires correct PIN1 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 digits to be provided. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 change-pin1 old-PIN new-PIN | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 This command tells the SIM that you wish to change PIN1 secret code to some new | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 digits. Knowledge of the old PIN1 is required for this operation to succeed. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 unblock-pin1 PUK1-secret-code new-PIN1 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 This command tells the SIM that you are attempting to prove knowledge | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 of PUK1 and to set new PIN1. If PUK1 is given correctly, the new PIN1 will be | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 set. If you enter wrong PUK1, the SIM decrements its non-volatile attempt | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 counter, giving you a total of 10 attempts (irrespective of card power-downs | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 between attempts) to enter the correct code. If PUK1 is entered incorrectly 10 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 times in a row, it is blocked and the card should be considered bricked beyond | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 recovery. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 Understanding SIM PIN2 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 ====================== | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 GSM standards provide support for a very rarely used feature that works in the | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 spirit of "parental controls": if you authenticate to the SIM with PIN2 secret | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 code (which has to be different from PIN1 for meaningful security), you can | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 edit a SIM-resident list of so-called Fixed Dialing Numbers (FDN), and then all | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 standard phones that implement this feature per the spec will refuse to allow | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 ordinary users (authenticated with PIN1 or with no PIN at all) to call any | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 numbers other than those programmed in FDN. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 This whole "parental control" feature is totally silly and is not expected to be | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 of any practical use, but the whole purpose of fc-simtool is to allow every | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 feature of SIM cards to be exercised, hence we provide the necessary support. | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 The following commands work just like their PIN1 counterparts: | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 verify-pin2 XXXX | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 change-pin2 old-PIN new-PIN | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 unblock-pin2 PUK2-secret-code new-PIN2 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 | 
| 
8cd4771bdd79
doc/User-oriented-commands: document started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 Unlike PIN1, PIN2 cannot be disabled per traditional SIM card standards. | 
| 65 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 104 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 105 Getting basic info from the SIM | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 106 =============================== | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 107 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 108 The following commands are available for retrieving basic info from the SIM: | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 109 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 110 iccid | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 111 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 112 This command retrieves the ICCID (Integrated Circuit Card ID) record from the | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 113 SIM - it is a number of up to 20 digits (although 19-digit ICCIDs are most | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 114 common) that identifies the SIM card as a physical artifact. If your SIM is of | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 115 the traditional operator-issued kind, as opposed to a developer-oriented | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 116 programmable SIM from vendors like Sysmocom who have different ideas, this ICCID | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 117 will usually be the SIM card ID number printed on the physical plastic, along | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 118 with a barcode representation of the same number. | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 119 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 120 imsi | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 121 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 122 This command retrieves the IMSI (International Mobile Subscriber Identity) from | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 123 the SIM - it is the most fundamental ID token by which GSM phones present | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 124 themselves to networks, and they even use the first 5 or 6 digits of the IMSI | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 125 to decide which network they should try connecting to first. | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 126 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 127 sst | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 128 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 129 Every SIM card is required to have an essential data record (an EF in technical | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 130 terms) called the SIM Service Table, or SST. This SST indicates which services | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 131 are allocated and activated on the given SIM. Our sst command lists all | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 132 allocated service numbers, listing just a plain number if the service is both | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 133 allocated and activated (the usual case), or a number with a '^' suffix if the | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 134 service is allocated but not activated. You will need to look in the 3GPP TS | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 135 51.011 spec to make sense of these service numbers. | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 136 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 137 user-sum | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 138 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 139 This command displays a user-friendly summary of user-oriented services present | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 140 on the SIM. It reads SST to get the list of available and activated services, | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 141 but it considers only user-oriented ones (as opposed to SIM services dealing | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 142 with GSM network functions or serving operators' interests rather than users'), | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 143 and it displays them in a user-friendly manner. For each present SIM phonebook | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 144 (ADN, FDN, SDN) and for the SMS store, user-sum displays the storage capacity | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 145 provided by the SIM (number of phonebook entries or messages), and for each of | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 146 the various phonebooks, the allocated number of alpha tag bytes is also | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 147 displayed. | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 148 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 149 The number of bytes allocated for the alpha tag in SIM phonebooks determines | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 150 the maximum length of the name field in each phonebook entry. These name fields | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 151 can be written either in GSM7 encoding (GSM 03.38 aka 3GPP 23.038) or in UCS-2; | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 152 when GSM7 encoding is used, no SMS-style septet packing is applied - instead the | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 153 high bit of each byte is simply cleared. Therefore, the maximum number of | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 154 characters in a phonebook entry name field usually equals the number of bytes | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 155 allocated for the alpha tag on the SIM, except for names containing ASCII | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 156 characters [\]^ and {|}~ which get expanded to 2-character escape sequences in | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 157 GSM7 encoding. | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 158 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 159 uicc-dir | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 160 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 161 If your SIM card functions not only as a classic GSM 11.11 SIM, but also as a | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 162 UICC with USIM/ISIM or other UICC-based applications, it will have a file named | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 163 EF_DIR in its file system, listing those applications. fc-simtool uicc-dir | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 164 command dumps the content of this file in a human-readable form - but please | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 165 note that fc-simtool only speaks the classic GSM 11.11 protocol to the SIM, and | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 166 not the UICC protocol. EF_DIR does not officially exist in the classic GSM SIM | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 167 spec, hence the dir command in fc-uicc-tool (speaking the UICC protocol) is the | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 168 official way to read and dump the content of EF_DIR. | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 169 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 170 Manipulating SIM phonebooks | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 171 =========================== | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 172 | 
| 69 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 173 GSM SIM specs allow for several different phonebooks to be present on the card: | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 174 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 175 * ADN (Abbreviated Dialing Numbers) is the main SIM phonebook. Each SIM card | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 176 issuer decides how much storage space they allocate to ADN (how many records); | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 177 the SIM spec maximum is 254 records, and many issuers' SIMs do provide this | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 178 many records or close to this limit. | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 179 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 180 * FDN (Fixed Dialing Numbers) is the "parental control" phonebook. The FDN | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 181 phonebook can only be written to after authenticating with PIN2, and when it | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 182 is enabled (enabling FDN is done by "invalidating" ADN, an operation which | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 183 also requires PIN2), spec-compliant phones allow only numbers in FDN to be | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 184 called. | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 185 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 186 * SDN (Service Dialing Numbers) is a service-provider-controlled phonebook: it | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 187 can only be written if you have special admin privileges (ADM authentication | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 188 method is card-vendor-dependent), and it is read-only to ordinary users. | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 189 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 190 * MBDN (Mailbox Dialing Numbers) is a late addition to GSM SIM specs - it is a | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 191 special phonebook that stores the number for Voice Mail and other related | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 192 esoteric services. | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 193 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 194 * MSISDN is a phonebook-like file that stores the subscriber's own phone | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 195 number(s). Most classic GSM phones have a menu command for showing your own | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 196 number, usually called "My number" or something like that; this menu command | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 197 displays the first record stored in the MSISDN phonebook. Most network | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 198 operators update this MSISDN record over the air (using special SMS-encoded | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 199 commands) when you activate service or get a new phone number without changing | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 200 your SIM, but this MSISDN store in the SIM also has some interesting | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 201 properties: | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 202 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 203 + Per the spec the MSISDN phonebook is writable by ordinary users, not just | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 204 admins, and the Mother's experience with real T-Mobile SIMs is that they do | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 205 indeed allow the user to write anything into MSISDN. | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 206 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 207 + Most SIM card issuers allocate multiple records for MSISDN, not just one. | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 208 It is not clear if ordinary end user phones would do anything useful with | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 209 the extra records if one were to write something there. | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 210 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 211 fc-simtool provides a unified set of commands and data formats for working with | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 212 all SIM phonebooks: all pb-* commands take the name of the phonebook to be | 
| 70 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 213 operated on as their first argument. The following commands are available: | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 214 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 215 pb-dump PBNAME | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 216 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 217 This command dumps the full content of the selected phonebook on the terminal. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 218 The data format for representing SIM phonebook content in UNIX-based text files | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 219 and dumps is described in the SIM-data-formats document in the freecalypso-docs | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 220 repository. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 221 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 222 pb-dump PBNAME outfile | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 223 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 224 This form of the pb-dump command dumps the full content of the selected | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 225 phonebook, but saves it in the named file instead of sending it to the terminal. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 226 This form is ideal for making backups of large SIM phonebooks. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 227 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 228 pb-dump-rec PBNAME rec | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 229 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 230 This command dumps a single record from a potentially large phonebook. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 231 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 232 pb-dump-rec PBNAME start-rec end-rec | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 233 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 234 This command dumps the specified range of records from a potentially large | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 235 phonebook. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 236 | 
| 89 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 237 pb-restore PBNAME filename | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 238 | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 239 This command reads a phonebook data file in the format described in the | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 240 SIM-data-formats document and uploads it into the named SIM phonebook. Every | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 241 record in the SIM phonebook is overwritten with an UPDATE RECORD command; those | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 242 record indices which do not appear in the data file being restored get blank | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 243 records (0xFF in every byte) written into them. | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 244 | 
| 70 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 245 pb-update PBNAME filename | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 246 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 247 This command reads a phonebook data file in the format described in the | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 248 SIM-data-formats document and uploads it into the named SIM phonebook, writing | 
| 89 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 249 only those record indices which appear in the data file - each record from the | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 250 data file gets written into the SIM with an UPDATE RECORD command, while all | 
| 
629be330f92b
doc/User-oriented-commands: pb-restore documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
77diff
changeset | 251 other record locations remain untouched. | 
| 70 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 252 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 253 pb-update-imm PBNAME rec phone-number [alpha-tag] | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 254 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 255 This command writes a single phonebook entry directly from the command line, | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 256 without going through a data file. The specific record index to write into must | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 257 always be specified (there is no built-in "find first empty record" function), | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 258 and the entry format for both the phone number and the alpha tag is more relaxed | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 259 compared to the very strict format required in data files: | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 260 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 261 * The phone number can begin with a '+' character for international format; | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 262 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 263 * The comma-separated TON/NPI byte is optional and will usually be omitted in | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 264 ordinary usage - this byte will default to 0x91 if the number begins with '+' | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 265 or to 0x81 otherwise; | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 266 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 267 * Double-quotes around the alpha tag argument are required only if it contains | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 268 spaces or other problematic characters, and can be omitted otherwise; | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 269 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 270 * If the alpha tag is empty, the last argument can be omitted altogether. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 271 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 272 pb-update-imm-hex PBNAME rec phone-number alpha-tag-hex | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 273 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 274 This command is like pb-update-imm, but the alpha tag argument (required for | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 275 this command) is given in hex - intended for creating phonebook entries with | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 276 UCS-2 alpha tags. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 277 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 278 pb-erase PBNAME | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 279 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 280 This command fully erases the named phonebook. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 281 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 282 pb-erase-one PBNAME rec | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 283 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 284 This command erases the specified individual record in the named phonebook. | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 285 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 286 pb-erase-range PBNAME start-rec end-rec | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 287 | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 288 This command erases the specified range of records in the named phonebook. The | 
| 
8dee7aa9ec58
doc/User-oriented-commands: phonebook commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
69diff
changeset | 289 starting record must be identified by number (SIM record numbers are 1-based); | 
| 73 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 290 the ending record argument may be either a number or the "end" keyword. | 
| 69 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 291 | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 292 Last Number Dialed (LND) | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 293 ======================== | 
| 
d4058ae94749
doc/User-oriented-commands: started phonebook description
 Mychaela Falconia <falcon@freecalypso.org> parents: 
65diff
changeset | 294 | 
| 71 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 295 Traditional SIMs include a cyclic file that is intended to be updated whenever | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 296 an outgoing call is dialed - but it is up to individual phone designs whether | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 297 they actually update this LND cyclic store or not. This SIM LND store has the | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 298 same record format as phonebooks, carrying only phone numbers and optional alpha | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 299 tags - there are no fields for date & time, call duration or status as in call | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 300 answered or not. Because of the limitations of this SIM LND store, most phone | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 301 designs do not use it, and instead go with their own implementation of call | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 302 history lists. | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 303 | 
| 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 304 Because this LND store is a cyclic file, not linear fixed like phonebooks, it | 
| 90 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 305 does not allow random access writes: it allows random access reads like all | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 306 regular record-based files, but the only write operation allowed by the SIM | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 307 interface protocol and the SIM file system architecture is writing a new record | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 308 that becomes the new #1, shifting all previous records down and losing the | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 309 oldest one. Because of this write access limitation, we do not provide the same | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 310 set of operations on LND as for regular phonebooks - but we still provide good | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 311 tinkering ability. The following commands are available: | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 312 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 313 lnd-dump | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 314 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 315 This command dumps the content of the LND store on the terminal, in the same | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 316 format as pb-dump for regular phonebooks. | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 317 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 318 If you have had your SIM for a very long time, having used it in different | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 319 phones with different firmwares, it may be interesting to look at the output of | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 320 lnd-dump - you may have LND records that were generated ages ago by other | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 321 phones if your current one does not write into SIM LND. | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 322 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 323 lnd-dump outfile | 
| 71 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 324 | 
| 90 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 325 This form of the lnd-dump command produces the same dump format, but saves it | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 326 in the named file instead of sending it to the terminal. | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 327 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 328 lnd-restore filename | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 329 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 330 This command reads the named phonebook data file (presumably written previously | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 331 with lnd-dump) and writes it into EF_LND on the SIM. This command works by | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 332 first constructing a full binary image of the desired EF_LND content, then | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 333 writing every record in the reverse order from the last index to the first. | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 334 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 335 lnd-write phone-number [alpha-tag] | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 336 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 337 This command writes a new record into the LND cyclic store just like a standard | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 338 phone would do when making a record of a new outgoing call. The two arguments | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 339 (one required and one optional) are the same as for pb-update-imm. | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 340 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 341 lnd-erase | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 342 | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 343 This command erases the EF_LND cyclic store, making it appear as if no outgoing | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 344 calls have ever been recorded. It works by writing a blank record (0xFF in | 
| 
8a714fe98aa9
doc/User-oriented-commands: new lnd-* commands
 Mychaela Falconia <falcon@freecalypso.org> parents: 
89diff
changeset | 345 every byte) N times, where N is the size of the cyclic store in records. | 
| 71 
a008f7a4bddf
doc/User-oriented-commands: dump-lnd documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
70diff
changeset | 346 | 
| 65 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 347 Manipulating stored SMS | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 348 ======================= | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 349 | 
| 72 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 350 The fundamental operating model of all message stores for SMS (whether SIM or | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 351 phone-based) is that received messages accumulate (and possibly sent ones too, | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 352 if they are stored in this manner), the limited available memory fills up, and | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 353 then the user needs to clean out the accumulated messages, preferably also | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 354 archiving them by transferring to a larger computer for longer-term storage. | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 355 Given this fundamental operating model, we only need to provide commands for | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 356 dumping the content of the message store and for cleaning it out - there is no | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 357 real need to implement commands for writing messages into the store. | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 358 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 359 The extent of special support for the SIM SMS store in fc-simtool is rather | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 360 minimal because it just so happened that we already have external tools that do | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 361 a major part of the work. Some phone firmwares, particularly that of the | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 362 Pirelli DP-L10 phone currently used by the Mother, implement their on-the-phone | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 363 SMS storage by a way of a file in their local flash file system whose binary | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 364 format just happens to be exactly the same as the binary format of SIM-based | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 365 EF_SMS if all 176-byte records are simply abutted together in the host-based | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 366 binary representation. A few release cycles ago we added a new utility named | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 367 pcm-sms-decode to our FreeCalypso host tools suite; this utility reads a binary | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 368 file in this "EF_SMS records concat" format and performs the quite involved job | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 369 of fully decoding all messages into human-readable form. Given that we have | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 370 this external pcm-sms-decode utility, all we need to do in fc-simtool is save | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 371 all records of EF_SMS into a single concatenated binary file, and let | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 372 pcm-sms-decode do the rest. | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 373 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 374 Our dedicated commands for working with the SIM SMS store are as follows: | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 375 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 376 save-sms-bin host-filename | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 377 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 378 This command saves the full content of EF_SMS in the named file in the host file | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 379 system in binary format, suitable for further decoding with pcm-sms-decode. | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 380 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 381 sms-erase-all | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 382 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 383 This command erases every record entry in EF_SMS. | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 384 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 385 sms-erase-one rec | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 386 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 387 This command erases the specified individual record in EF_SMS. | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 388 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 389 sms-erase-range start-rec end-rec | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 390 | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 391 This command erases the specified range of records in EF_SMS. The starting | 
| 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 392 record must be identified by number (SIM record numbers are 1-based); the | 
| 73 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 393 ending record argument may be either a number or the "end" keyword. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 394 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 395 Manipulating SMS parameters | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 396 =========================== | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 397 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 398 SIM cards have an SMS parameter store in the form of record-based file EF_SMSP. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 399 Its most essential function is to specify the Service Centre Address for | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 400 outgoing SMS, but it can also be put to a few other uses: | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 401 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 402 * The primary SMSP record that gives the SC address also typically includes PID | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 403 and DCS parameters. The only sensible settings that can function as a | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 404 general-purpose default are PID=0x00 and DCS=0x00, but some SIMs have been | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 405 seen in the field that set bogus PID and DCS via their SMSP. It appears that | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 406 most end user phones ignore these settings, and they have no effect when | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 407 outgoing SMS are submitted to an AT command modem in PDU mode, but these | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 408 settings do affect our TI-based AT command modem in text mode - if they are | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 409 bogus on the SIM, they need to be fixed, either with fc-simtool or in the | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 410 actual AT modem session with AT+CSMP. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 411 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 412 * The same primary SMSP record can also specify a default validity period in | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 413 one-byte relative VP format. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 414 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 415 * Just like the situation with MSISDN, even though only the first record of | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 416 EF_SMSP is used in practice, most SIM issuers allocate room for a few records. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 417 These extra SMSP records are almost always blank, | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 418 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 419 fc-simtool provides the following commands for working with EF_SMSP: | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 420 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 421 smsp-dump | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 422 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 423 This command dumps the full content of EF_SMSP (all records) on the terminal, | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 424 using a lossless text-based format similar to the one we use for phonebooks. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 425 To illustrate our smsp format by way of examples, here is the output of | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 426 smsp-dump from old T-Mobile USA SIMs that have classic GSM 11.11 SIM | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 427 functionality: | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 428 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 429 #1: SC=12063130004,0x91 PID=0x00 DCS=0x00 "T-Mobile" | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 430 #2: "" | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 431 #3: "" | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 432 #4: "" | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 433 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 434 Here is the output from an Austrian S-Budget Mobile SIM from circa-2017: | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 435 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 436 #1: SC=4365009000000,0x91 PID=0xFF DCS=0xFF VP=173 "" | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 437 #2: "" | 
| 72 
54800d2f5752
doc/User-oriented-commands: SMS manipulation documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
71diff
changeset | 438 | 
| 73 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 439 As one can see from these examples, T-Mobile allocated 4 records for their | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 440 EF_SMSP, whereas S-Budget Mobile allocated only 2 records for theirs. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 441 (Sysmocom webshop SIMs sysmoUSIM-SJS1 and sysmoISIM-SJA2 also have 2 records in | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 442 their EF_SMSP.) Yet only the first record is actually used, and the remaining | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 443 ones are blank. Note that unlike pb-dump, smsp-dump does not skip blank | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 444 records: it displays every record (the design rationale is that the total number | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 445 of EF_SMSP records is expected to be small), and a blank record is simply one | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 446 that has no parameters present and has an empty alpha tag. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 447 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 448 The following parameters may be present in each SMSP record, appearing in the | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 449 smsp-dump output in the same order in which they appear in the SIM binary | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 450 record: | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 451 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 452 DA= TP-Destination_Address | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 453 SC= TS-Service_Centre_Address | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 454 PID= TP-Protocol_Identifier | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 455 DCS= TP-Data_Coding_Scheme | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 456 VP= TP-Validity_Period | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 457 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 458 The phone numbers in DA= and SC= parameters are emitted in the same format as | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 459 in pb-dump, PID= and DCS= are emitted in hexadecimal with a 0x prefix, and VP= | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 460 is emitted in decimal. The alpha tag is always emitted at the end of the ASCII | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 461 line, just like in pb-dump. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 462 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 463 smsp-dump outfile | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 464 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 465 This form of the smsp-dump command produces the same dump of EF_SMSP, but saves | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 466 it in the named file instead of sending it to the terminal. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 467 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 468 smsp-restore filename | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 469 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 470 This command reads a file written by smsp-dump and writes it back to the SIM. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 471 Both decimal and 0x-prefixed hexadecimal forms are accepted for all 3 of PID=, | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 472 DCS= and VP= parameters. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 473 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 474 smsp-set rec params | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 475 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 476 This command writes a single record into SMSP directly from the command line, | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 477 without going through a data file. The record index to write to must be given, | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 478 followed by one or more parameters as in DA=, SC=, PID=, DCS= or VP=. DA= and | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 479 SC= phone numbers can be entered in the same relaxed form as in the | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 480 pb-update-imm command, and the remaining 3 parameters can be either decimal or | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 481 0x-prefixed hexadecimal. This command leaves the alpha tag field blank. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 482 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 483 smsp-set-tag rec alpha-tag params | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 484 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 485 This command is just like smsp-set, but adds an alpha tag argument. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 486 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 487 smsp-erase-all | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 488 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 489 This command erases every record entry in EF_SMSP. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 490 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 491 smsp-erase-one rec | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 492 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 493 This command erases the specified individual record in EF_SMSP. | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 494 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 495 smsp-erase-range start-rec end-rec | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 496 | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 497 This command erases the specified range of records in EF_SMSP. The starting | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 498 record must be identified by number (SIM record numbers are 1-based); the | 
| 
a56bbd6b0277
doc/User-oriented-commands: smsp-* commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
72diff
changeset | 499 ending record argument may be either a number or the "end" keyword. | 
| 65 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 500 | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 501 Identifying MVNO SIMs | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 502 ===================== | 
| 
cc48ac3b151c
doc/User-oriented-commands: basic info commands documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
64diff
changeset | 503 | 
