7 print "Usage: %s <tag-path> <record-type> <...>" % (sys.argv[0])
8 print " If type is Text, parameters are <encoding> <language> <representation>"
9 print " If type is URI, parameters are <uri>"
10 print " If type is SmartPoster, parameters are <uri>"
11 print "e.g. < %s /org/neard/nfc0/tag0 Text UTF-8 en-US hello,Type2! >" % (sys.argv[0])
12 print "e.g. < %s /org/neard/nfc0/tag0 URI http://www.nfc-forum.com >" % (sys.argv[0])
13 print "e.g. < %s /org/neard/nfc0/tag0 SmartPoster http://www.nfc-forum.com >" % (sys.argv[0])
14 print "e.g. < %s /org/neard/nfc0/tag0 Raw <NDEF_file> >" % (sys.argv[0])
20 bus = dbus.SystemBus()
22 tag = dbus.Interface(bus.get_object("org.neard", sys.argv[1]),
25 if len(sys.argv) == 6:
26 if sys.argv[2] in ["Text"]:
27 tag.Write(({ "Type" : "Text",
28 "Encoding" : sys.argv[3],
29 "Language" : sys.argv[4],
30 "Representation" : sys.argv[5] }))
34 elif len(sys.argv) == 4:
35 if sys.argv[2] in ["URI"]:
36 tag.Write(({ "Type" : "URI",
37 "URI" : sys.argv[3] }))
38 elif sys.argv[2] in ["SmartPoster"]:
39 tag.Write(({ "Type" : "SmartPoster",
40 "URI" : sys.argv[3] }))
41 elif sys.argv[2] in ["Raw"]:
42 ndef = file(sys.argv[3]).read().rsplit(' ')
43 ndef_stream = bytearray()
46 ndef_stream.append(int(b, 16))
48 tag.Write(({ "Type" : "Raw",
49 "NDEF" : dbus.ByteArray(ndef_stream) }))