2 # -*- coding: UTF-8 -*-
3 # vim: expandtab sw=4 ts=4 sts=4:
8 __author__
= 'Michal Čihař'
9 __email__
= 'michal@cihar.com'
11 Copyright © 2003 - 2010 Michal Čihař
13 This program is free software; you can redistribute it and/or modify it
14 under the terms of the GNU General Public License version 2 as published by
15 the Free Software Foundation.
17 This program is distributed in the hope that it will be useful, but WITHOUT
18 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
22 You should have received a copy of the GNU General Public License along with
23 this program; if not, write to the Free Software Foundation, Inc.,
24 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
33 # Try to import iconv_codec to allow working on chinese windows
39 # Disable warning about missing files
40 # This can be caused by attempt to import Python modules, which don't
41 # have all DLLs satisfied.
42 if sys
.platform
.startswith('win'):
45 win32api
.SetErrorMode(win32con
.SEM_NOOPENFILEERRORBOX
)
49 Displays version information.
51 print _('Wammu - Windowed Gammu version %s') % Wammu
.__version
__
58 print _('Usage: %s [OPTION...]' % os
.path
.basename(__file__
))
61 print '%-20s ... %s' % (
64 print '%-20s ... %s' % (
66 _('show program version'))
67 print '%-20s ... %s' % (
69 _('force using of locales from current directory rather than system ones'))
70 print '%-20s ... %s' % (
72 _('prints connection settings and tries to connect the phone'))
73 print '%-20s ... %s' % (
75 _('enables debug output to stderr'))
80 Displays configuration summary and tries to connect to phone.
82 import Wammu
.WammuSettings
85 settings
= Wammu
.WammuSettings
.WammuConfig()
86 section
= settings
.ReadInt('/Gammu/Section')
87 config
= settings
.gammu
.GetConfig(section
)
88 if config
['Connection'] == '' or config
['Device'] == '':
89 print _('Wammu is not configured!')
91 'StartInfo': settings
.Read('/Gammu/StartInfo'),
92 'UseGlobalDebugFile': 1,
93 'DebugFile': None, # Set on other place
94 'SyncTime': settings
.Read('/Gammu/SyncTime'),
95 'Connection': config
['Connection'],
96 'LockDevice': settings
.Read('/Gammu/LockDevice'),
97 'DebugLevel': 'textalldate', # Set on other place
98 'Device': config
['Device'],
99 'Localize': None, # Set automatically by python-gammu
100 'Model': config
['Model'],
102 if cfg
['Model'] == 'auto':
104 print _('Wammu configuration:')
105 print '%-15s: %s' % (_('Connection'), cfg
['Connection'])
106 print '%-15s: %s' % (_('Model'), cfg
['Model'])
107 print '%-15s: %s' % (_('Device'), cfg
['Device'])
108 print _('Connecting...')
110 gammu
.SetDebugFile(sys
.stderr
)
111 gammu
.SetDebugLevel('textalldate')
112 sm
= gammu
.StateMachine()
115 print _('Getting phone information...')
116 Manufacturer
= sm
.GetManufacturer()
117 Model
= sm
.GetModel()
119 Firmware
= sm
.GetFirmware()
120 print _('Phone infomation:')
121 print '%-15s: %s' % (_('Manufacturer'), Manufacturer
)
122 print '%-15s: %s (%s)' % (_('Model'), Model
[0], Model
[1])
123 print '%-15s: %s' % (_('IMEI'), IMEI
)
124 print '%-15s: %s' % (_('Firmware'), Firmware
[0])
128 Processes program options.
131 opts
, args
= getopt
.getopt(sys
.argv
[1:],
133 ['help', 'version', 'local-locales', 'info', 'debug'])
134 except getopt
.GetoptError
, val
:
136 print _('Command line parsing failed with error:')
142 print _('Extra unrecognized parameters passed to program')
147 for opt
, dummy
in opts
:
148 if opt
in ('-l', '--local-locales'):
149 Wammu
.Locales
.UseLocal()
150 print _('Using local built locales!')
151 if opt
in ('-h', '--help'):
154 if opt
in ('-v', '--version'):
157 if opt
in ('-i', '--info'):
159 if opt
in ('-d', '--debug'):
166 if __name__
== '__main__':
169 # need to be imported after locales are initialised