annotate service/reasoning/oneShot @ 1055:e1693cc0b992

fix oneshot. more time reportin Ignore-this: c99ce7d8d31a8ed45bdcb8d0ad08a3aa darcs-hash:ae1b7c90ca9331b713af23a1f9a81cfb56380845
author drewp <drewp@bigasterisk.com>
date Tue, 09 Feb 2016 22:10:38 -0800
parents 3bb18b7d21df
children 79efb6fdcb95
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
852
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
1 #!/usr/bin/python
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
2 """
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
3 send a statement to the reasoning server for one update cycle. Args
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
4 are s/p/o in n3 notation, with many prefixes predefined here.
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
5 """
1055
e1693cc0b992 fix oneshot. more time reportin
drewp <drewp@bigasterisk.com>
parents: 934
diff changeset
6 import sys, restkit, time
852
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
7 s, p, o = sys.argv[1:]
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
8
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
9 prefixes = {
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
10 'room' : 'http://projects.bigasterisk.com/room/',
934
3bb18b7d21df reasoning actions: generalize them a bit but then add a bunch of special cases for mpd for now
drewp <drewp@bigasterisk.com>
parents: 852
diff changeset
11 'shuttle': 'http://bigasterisk.com/room/livingRoom/shuttlepro/',
852
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
12 }
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
13
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
14 def expand(term):
934
3bb18b7d21df reasoning actions: generalize them a bit but then add a bunch of special cases for mpd for now
drewp <drewp@bigasterisk.com>
parents: 852
diff changeset
15 if ':' not in term or term.startswith(('<', '"', "'")):
852
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
16 return term
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
17 left, right = term.split(':', 1)
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
18 if left in prefixes:
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
19 return '<%s%s>' % (prefixes[left], right)
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
20 return term
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
21
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
22 stmt = '%s %s %s .' % (expand(s), expand(p), expand(o))
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
23 print "Sending: %s" % stmt
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
24
1055
e1693cc0b992 fix oneshot. more time reportin
drewp <drewp@bigasterisk.com>
parents: 934
diff changeset
25 t1 = time.time()
852
6ccd930834d1 scan more input files. oneshot and immediate update features.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
26 reasoning = restkit.Resource("http://bang:9071/")
1055
e1693cc0b992 fix oneshot. more time reportin
drewp <drewp@bigasterisk.com>
parents: 934
diff changeset
27 ret = reasoning.post("oneShot",
e1693cc0b992 fix oneshot. more time reportin
drewp <drewp@bigasterisk.com>
parents: 934
diff changeset
28 headers={"content-type": "text/n3"},
e1693cc0b992 fix oneshot. more time reportin
drewp <drewp@bigasterisk.com>
parents: 934
diff changeset
29 payload=stmt)
e1693cc0b992 fix oneshot. more time reportin
drewp <drewp@bigasterisk.com>
parents: 934
diff changeset
30 g = float(ret.headers['x-graph-ms'])
e1693cc0b992 fix oneshot. more time reportin
drewp <drewp@bigasterisk.com>
parents: 934
diff changeset
31 print "%.1f ms for graph update; %.1f ms other overhead" % (g, 1000 * (time.time() - t1) - g)