blob: 70a302737650954a0113e94695296740b5d33977 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#!/usr/bin/python
import sys
import gobject
import dbus
import dbus.service
import dbus.mainloop.glib
class Counter(dbus.service.Object):
@dbus.service.method("org.moblin.connman.Counter",
in_signature='', out_signature='')
def Release(self):
print("Release")
mainloop.quit()
@dbus.service.method("org.moblin.connman.Counter",
in_signature='a{sv}', out_signature='')
def Usage(self, stats):
for key in stats.keys():
if key in ["Interface"]:
val = str(stats[key])
else:
val = int(stats[key])
print "%s = %s" % (key, val)
if __name__ == '__main__':
dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
bus = dbus.SystemBus()
manager = dbus.Interface(bus.get_object('org.moblin.connman', "/"),
'org.moblin.connman.Manager')
interval = 2
if len(sys.argv) > 1:
interval = sys.argv[1]
path = "/test/counter%s" % interval
object = Counter(bus, path)
manager.RegisterCounter(path, dbus.UInt32(interval))
mainloop = gobject.MainLoop()
mainloop.run()
#manager.UnregisterCounter(path)
|