NAME
gnokii - modem/fax driver for the mobile phones
SYNOPSIS
gnokii [CONFIG OPTIONS] [OPTIONS]
DESCRIPTION
gnokii is a multiple systems tool suite and (eventually) modem/fax
driver for the mobile phones.
gnokii at the beginning was designed to support the proprietary
protocols of Nokia phones and at the moment it also supports phones and
GSM modems that understand AT commands, both from Nokia and from other
vendors, and SIM cards in PC/SC compatible Smart Card readers. Limited
support for the older and slow Nokia MBUS protocol is also available.
You can assume that your phone is supported, however there are rare
cases that you will get very limited functionality with gnokii. If you
have a fairly modern phone you should use the following model setting
in your config file:
- model = series40, if you have Nokia non-Symbian phone
- model = gnapplet, if you have Nokia Symbian Series60 prior to 3rd
Edition phone
- model = AT, for all other
- if you have some older Nokia phone you may try using its brand name,
eg. for Nokia 6210 use model = 6210.
See also our <http://wiki.gnokii.org/index.php/Config> for
configurations known to work.
Symbian series60 3rd edition (most Nokia n and e series) are not
supported by gnapplet driver due to changes in Symbian API. For now you
can get some functionality using AT driver.
Please note that currently there are Nokia models with almost the same
names as the old ones, like 6110c vs 6110 or 3110c vs 3110. They are
completly incompatible. DO NOT use model = 6110 or model = 3110 setting
for them.
CONFIG OPTIONS
--config filename
reads configuration from filename instead of trying default
locations. Normally gnokii looks for config file in
$XDG_CONFIG_HOME/gnokii/config (which is usually
$HOME/.config/gnokii/config), $XDG_CONFIG_DIRS/gnokii/config
(which is usually /etc/xdg/gnokii/config), $HOME/.gnokiirc
(legacy) and /etc/gnokiirc (legacy).
--phone name
usees parameters from the given phone section of your config
file. A phone section named ’foo’ starts with [phone_foo] and is
used as --phone foo
OPTIONS
The options that are recognized by gnokii can be divided into several
different groups.
GENERAL
--help displays usage information.
--version
displays version and copyright information.
--monitor [delay|once]
continually updates phone status to stderr. Optional delay
parameter sets the refresh interval to delay seconds. Default is
1. once means the output will be printed only once.
--shell
runs interactive session that will allow to run sequent gnokii
commands without a need to reconnect for the sequent commands.
DIALING
--getspeeddial location
reads speed dial from the specified location.
--setspeeddial number memory_type location
specify speed dial. location number 1 is usually reserved for
voice mailbox number and it is unavailable as speed dial.
--dialvoice number
initiate voice call. On success print the callid identifier to
be used with the --hangup command. The --monitor command can be
used to show the callid.
--senddtmf string
send DTMF sequence.
--answercall callid
answer an incoming call. callid is a small integer number used
to identify one of the incoming calls. The --monitor command
can be used to show the callid.
--hangup callid
hangup an incoming call or an already established call. callid
is a small integer number used to identify one of the incoming
calls. If you initiated the call with --dialvoice this is the
number printed by that command. The --monitor command can be
used to show the callid.
--divert {--op|-o} {register|enable|query|disable|erasure} {--type|-t}
{all|busy|noans|outofreach|notavail} {--call|-c} {all|voice|fax|data}
[{--timeout|-m} time_in_seconds] [{--number|-n} number]
Manage call diverting/forwarding.
--op specifies one of the operations: register enable query
disable erasure
--type specifies one of the event types: busy noans outofreach
notavail unconditional all
--call specifies one of the call types: voice fax data all
--timeout is the number of seconds an incoming call will ring
before being forwarded to the registered number (use with --type
noans)
--number is the phone number to which calls are to be forwarded
PHONE SETTINGS
--getdisplaystatus
shows what icons are displayed.
--displayoutput
show texts displayed in phone’s screen.
--getprofile [number]
show settings for selected(all) profile(s).
--setprofile
sets settings for selected(all) profile(s).
--getactiveprofile
reads the active profile.
--setactiveprofile profile_no
sets active profile to the profile number profile_no.
--netmonitor {reset|off|field|devel|next|nr}
setting/querying netmonitor mode.
--reset [soft|hard]
resets the phone.
TODO
--gettodo start_number [end_number|end] [-v|--vCal]
get the notes with numbers from start_number to end_number from
ToDo list. end is a keyword that denotes ’everything till the
end’.
-v - output in vCalendar 1.0 format
--writetodo vCalendarfile start_number [end_number|end]
write the notes with numbers from start_number to end_number
from vCal file vcalfile to ToDo list. More than one note a time
can be saved. end is a keyword that denotes ’everything till
the end’.
number - location of the note in the vCalendar file
--deletealltodos
delete all notes from the ToDo list.
CALENDAR
--getcalendarnote start_number [end_number|end] [-v|--vCal]
get the notes with numbers from start_number to end_number from
calendar. end is a keyword that denotes ’everything till the
end’.
-v - output in vCalendar 1.0 format
--writecalendarnote vcalfile start_number [end_number|end]
write the notes with numbers from start_number to end_number
from vCal file vcalfile to a phone calendar. More than one note
a time can be saved. end is a keyword that denotes ’everything
till the end’.
number - location of the note in the vCalendar file
--deletecalendarnote start_number [end_number|end]
delete the notes with numbers from start_number to end_number
from calendar. end is a keyword that denotes ’everything till
the end’.
SMS
--getsms memory_type start [end] [-f|--file file] [-F|--force-file
file] [-a|--append-file file] [-d|--delete]
gets SMS messages from specified memory type starting at entry
start and ending at end. For the memory types you usually use
SM for the SIM card and ME for the phone memory (or MT for mixed
phone and SIM memory, which preferred type for modern
Motorolas). The exception are the phones supported by nk7110
(Nokia 7110/6210/6250) and nk6510 (Nokia 6310/6510/8310)
drivers. For these you should use IN for the Inbox, OU for the
Outbox, AR for the Archive, TE for the Templates and F1, F2, ...
for your own folders. Use the --showsmsfolderstatus command to
get a list of memory types available in your phone. end can be
a number or the string ’end’. If end is not specified only one
location - start is read. Messages are printed to stdout.
Additionally, if --file file is used, messages are saved in file
in mbox format. If file already exists, user is prompted whether
to overwrite it. If --force-file file is used gnokii overwrites
the file without asking. If --append-file file is used messages
are appended to the file. If --delete switch is used, the
message is deleted after reading.
--deletesms memory_type start [end]
deletes SMS messages from specified memory type starting at
entry start and ending at end. If end is not specified only one
location - start is deleted.
--sendsms destination [--smsc message_center_number | --smscno
message_center_index] [-r|--report] [-8|--8bit] [-C|--class n]
[-v|--validity n] [-i|--imelody] [-a|--animation file;file;file;file]
[-o|--concat this;total;serial] [-w|--wappush url]
sends an SMS message to destination via message_center_number or
SMSC number taken from phone memory from address
message_center_index. If this argument is omitted SMSC number
is taken from phone memory from location 1. Message text is
taken from STDIN. Meaning of other optional parameters:
-r | --report - request for delivery report
-8 | --8bit - set 8bit coding
-C | --class n - Class Message n, where n can be 0..3
-v | --validity n - validity in minutes
-i | --imelody - send iMelody within SMS
-a | --animation file;file;file;file - send animation message
-o | --concat this;total;serial - send this part of all total parts
identified by serial
-w | --wappush url - send wappush to the given url
Sample usage:
echo "This is a test message" | gnokii --sendsms +48501123456 -r
--savesms [--sender from] [--smsc message_center_number | --smscno
message_center_index] [--folder folder_id] [--location number] [--sent
| --read] [--deliver] [--datetime YYMMDDHHMMSS]
saves SMS messages to phone. Messages are read from STDIN. You
can specify the following optional arguments:
--sender - set the sender number (only --deliver)
--smsc message_center_number - set the SMSC number (only --deliver)
--smscno message_center_index - SMSC number taken from phone memory
from address message_center_index (only --deliver)
--folder folder_id - folder ID where to save the SMS to (only valid for
newer phones, i.e. 6210/6510 series). For legal values see --getsms.
--location number - save the message to location number
--sent | --read - mark the message saved/read depending on --deliver
--deliver - set the message type to SMS_Deliver
--datetime YYMMDDHHMMSS - sets datetime of delivery, i.e. 031123185713
would set message delivery time to 23rd November 2003, 6:57:13 PM
--getsmsc [start_number [end_number]] [-r|--raw]
show the SMSC parameters from specified location(s) or for all
locations.
--setsmsc
set SMSC parameters read from STDIN. See --raw output of
--getsmsc for syntax.
--createsmsfolder name
create SMS folder with name name.
--deletesmsfolder number
delete folder # number of ’My Folders’.
--showsmsfolderstatus
list SMS folder names with memory types and total number of
messages available.
--smsreader
keeps reading incoming SMS and saves them into the mailbox.
MMS
--getmms memory_type start [end] [{--pdu|--raw} file] [-o|--overwrite]
gets MMS messages from specified memory type starting at entry
start and ending at end. Default output format is human
readable, alternative output formats are --pdu which is the
binary format of MMS as received by the phone from the network
and --raw which saves the data as read from the phone.
When the -o or --overwrite option is used, existing files are
overwritten without asking.
LOGOS
--sendlogo {caller|op|picture} destination logofile [network_code]
send the logofile to destination as operator or CLI logo.
--setlogo op [logofile [network_code]]
--setlogo startup [logofile]
--setlogo caller [logofile [caller_group_number [group_name]]]
set or clear operator, startup or caller logo.
--setlogo {dealer|text} [text]
set or clear welcome note.
--getlogo op [logofile [network_code]]
--getlogo startup [logofile [network_code]]
--getlogo caller [caller_group_number [logofile [network_code]]]
get operator, startup or caller logo.
--getlogo {dealer|text}
get welcome note.
--viewlogo logofile
print the logofile as ASCII art. Formats that are automatically
detected are: NOL, NGG, NSM, NLM, BMP, I61, GGP, XPM. The OTA
format can be used only if the filename ends with the .otb
extension.
Format of network_code parameter is 3 digits MCC, a space, 2 digits MNC
surrounded by single or double quotes, eg. "123 45".
RINGTONES
--sendringtone destination rtttlfile
send the rtttlfile to destination as ringtone.
--setringtone rtttlfile
set the rtttlfile as ringtone (on 6110).
PHONEBOOK
--getphonebook memory_type start_number [end_number|end]
[[-r|--raw]|[-v|--vcard]|[-l|--ldif]]
reads specified memory location from phone. If end_number is
not specified only one location - start is read. If instead of
end_number the text end is specified then gnokii will read from
start_number until it encounters a non-existant location. Valid
memory types are: ME, SM, FD, ON, EN, DC, RC, MC, LD:
ME Internal memory of the mobile equipment
SM SIM card memory
FD Fixed dial numbers
ON Own numbers
EN Emergency numbers
DC Dialled numbers
RC Received calls
MC Missed calls
LD Last dialed numbers
Normally you get verbose output. You can use -v or --vcard switch to
get output in vCard format or -l or --ldif switch to get output in ldif
format or -r or --raw switch to get the raw output which is explained
below. You can use it then with --writephonebook.
--writephonebook [-o|--overwrite] [-f|--find-free] [-m|--memory-
type|--memory memory_type] [-n|--memory-location|--location number]
[[-v|--vcard]|[-l|--ldif]]
reads data from stdin and writes to phonebook. Uses the same
format as provided by the output of the getphonebook command.
Default is raw format (see below for details) and alternate
formats are vCard and ldif.
With --memory-type memory_type and --memory-location number you can set
a memory type and a location if the input data doesn’t specify them.
When the -o or --overwrite option is used, existing entries at a given
location are overwritten.
When the -f or --find-free option is given, gnokii tries to find a free
location. In this case, you can omit the location field in the input
data.
The raw phonebook format is very simple. Each line represents one
entry. Fields are separated by semicolons. Semicolons aren’t allowed
inside a field. The fields have to be in this order (the subentries
are optional, ie. you can repeat all subentry field multiple times, but
they have to be alltogether in the given order):
name
number
memory_type
entry_location
caller_group_number
subentry_type
subentry_number_type
subentry_id
subentry_text
Possible values of caller_group_number and the corresponding caller
groups are (these are defaults, you are able to change these manually
in your phone):
0 Family
1 VIP
2 Friends
3 Colleagues
4 Other
5 No group
Possible subentry types are described in the gnokii/common.h file:
7 subentry is the name
8 subentry is the email address
9 subentry is the postal address (snail mail)
10 subentry is the note (text field)
11 subentry is the number
12 subentry is the ringtone
19 subentry is the date
26 subentry is the pointer
27 subentry is the logo
28 subentry is the logo switch
30 subentry is the group
44 subentry is the URL
Possible subentry number types are described in the gnokii/common.h
file:
2 number is the home phone number
3 number is the mobile phone number
4 number is the fax number
6 number is the work phone number
10 number is the general number
For the subentry types that don’t care about number type (as text
files) this should be set to 0.
--deletephonebook memory_type start_number [end_number|end]
delete entries with start_number to end_number from the phone
book in memory_type. end is a keyword that denotes ’everything
till the end’.
WAP
--getwapbookmark number
reads the specified WAP bookmark from phone
--writewapbookmark name URL
write WAP bookmark to phone
--deletewapbookmark number
delete WAP bookmark from phone
--getwapsetting number [-r|--raw]
read WAP setting from phone
--writewapsetting
reads data from stdin and writes it to phone. Hint: see syntax
from --getwapsetting -r option
--activatewapsetting number
activate WAP setting number
DATE, TIME AND ALARM
--setdatetime [YYYY [MM [DD [HH [MM]]]]]
set the date and the time of the phone.
--getdatetime
shows current date and time in the phone.
--setalarm HH MM
set the alarm of the phone.
--getalarm
shows current alarm.
SECURITY
--identify
get IMEI, manufacturer, model, product name and revision.
--entersecuritycode {PIN|PIN2|PUK|PUK2|SEC}
asks for the code and sends it to the phone. Code is read from
terminal or from stdin.
--getsecuritycode
shows the currently set security code.
--getsecuritycodestatus
show if a security code is needed.
--getlocksinfo
show information about the (sim)locks of the phone: the lock
data, whether a lock is open or closed, whether it is a user or
factory lock and the number of unlock attempts.
FILE
Note that some phones (like Nokia 6610i) support only id based
operations (gnokii options with "byid" suffix). Use gnokiifs for the
transparent support.
--getfilelist remote_path
lists files from the given directory. Use A:\* or B:\* to get
the root directory from either phone memory or card memory.
--getfiledetailsbyid [id]
lists file details or directory contents from the entry
identified by id. If no identifier is given, list the root
directory contents.
--getfileid remote_filename
gets id of the file.
--getfile remote_filename [local_filename]
gets file identified by name and path from the phone and stores
it at the local computer.
--getfilebyid id [local_filename]
gets file identified by id from the phone and stores it at the
local computer.
--getallfiles remote_path
gets all files from the remote path.
--putfile local_filename remote_filename
stores the file in the phone memory or on the memory card.
--deletefile remote_filename
removes the file from the phone.
--deletefilebyid id
removes the file from the phone.
MISC
--keysequence
emulates pressing keys on phone keyboard. Input is read from
stdin.
Supported keys (any other char is ignored):
M menu
N names
P power
G green phone
R red phone
U up
D down
+ increase volume
- decrease volume
0123456789#* as is
Example: to increase volume
echo "+" | gnokii --keysequence
Note: this command isn’t supported by all phones/drivers.
--enterchar
emulates typing a character on phone keyboard. By emulating
multiple pressions of keys, it can input all characters
supported by the phone in use, but to input an SMS predictive
text should be disabled. Input is read from stdin, with newline
interpreted as the "Menu" key and escape interpreted as the
"Names" key.
Note: this command isn’t supported by all phones/drivers.
--listnetworks
prints a list of cellular network operators with their 3-digits
MCC (Mobile country code) and 2-digits MNC (Mobile Network
Code).
Note: this command doesn’t need a valid config or a phone to
work.
--getnetworkinfo
prints information about the network currently in use.
DIAGNOSTICS
Various error messages are printed to standard error. The exit code is
0 for correct functioning. Errors which appear to be caused by invalid
or abused command line parameters cause an exit code of 2, and other
errors cause an exit code of 1.
BUGS
We write quality software here ;) but see KNOWN_BUGS just in case. If
you’d like to send us the bugreport please read the README and Bugs
files.
AUTHOR
Hugh Blemings <hugh at blemings dot org>, Pavel Janik ml. <Pavel.Janik
at suse dot cz> and Pawel Kot <gnokii at gmail dot com>.
Manual page written by Dag Wieers <dag at mind dot be>, Pawel Kot
<gnokii at gmail dot com> and Daniele Forsi <daniele at forsi dot it>.
See also Docs/CREDITS from gnokii sources.
COPYING
This program is distributed under the GNU Public License Version 2, or
(at your option) any later version.
SEE ALSO
gnokiid, xgnokii, mgnokiidev, ppm2nokia, sendsms, todologo