annotate service/frontDoorLock/index.html @ 1455:1a7cd0cff3eb

rename store's graph uri Ignore-this: dc2e863eb429456f9d642b53bbae1cc4 darcs-hash:a7cf4772cf49ddbea9dc04d903a597893ff25653
author drewp <drewp@bigasterisk.com>
date Wed, 25 Sep 2019 17:33:32 -0700
parents baf1acaa9ac9
children 013e2a89b345
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
1 <!doctype html>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
2 <html>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
3 <head>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
4 <title>front door lock</title>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
5 <meta charset="utf-8" />
1228
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
6 <meta name="mobile-web-app-capable" content="yes">
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
7 <meta name="viewport" content="width=device-width, initial-scale=1">
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
8 <script src="/lib/polymer/1.0.9/webcomponentsjs/webcomponents.min.js"></script>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
9 <script src="/lib/require/require-2.3.3.js"></script>
1271
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
10 <script src="/rdf/common_paths_and_ns.js"></script>
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
11 <link rel="import" href="/rdf/streamed-graph.html">
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
12 <link rel="import" href="/lib/polymer/1.0.9/polymer/polymer.html">
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
13 <link rel="import" href="/rdf/rdf-oneshot.html">
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
14 <link rel="import" href="/rdf/rdf-uri.html">
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
15 </head>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
16 <body>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
17 <dom-module id="door-control">
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
18 <style>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
19 button {
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
20 min-width: 60px;
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
21 min-height: 40px;
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
22 }
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
23 div#form {
1228
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
24 margin: 2px;
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
25 background: #dff5e5;
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
26 padding: 10px;
1228
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
27 line-height: 30px;
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
28 text-align: center;
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
29 border: 2px groove white;
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
30 }
1228
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
31 .invis-true {
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
32 visibility: hidden;
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
33 }
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
34
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
35 </style>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
36 <template>
1455
1a7cd0cff3eb rename store's graph uri
drewp <drewp@bigasterisk.com>
parents: 1379
diff changeset
37 <h1>Front door lock</h1>
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
38 <div id="form">
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
39
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
40 <div>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
41 Door is {{lockState}}
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
42 </div>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
43
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
44 <rdf-oneshot
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
45 id="unlockOneshot"
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
46 post="output"
1228
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
47 subject="room:frontDoorLock"
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
48 predicate="room:state"
a72e9245cc72 comments and console layout
drewp <drewp@bigasterisk.com>
parents: 1184
diff changeset
49 object="room:unlocked"
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
50 ></rdf-oneshot>
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
51 <button on-click="unlock"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
52 disabled$="[[!isLocked]]">Unlock 10 seconds</button>
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
53
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
54 <div class$="invis-[[!autoLockIsComing]]">
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
55 Locking in {{autoLockInSec}}
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
56 </div>
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
57
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
58 <div>
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
59 <rdf-oneshot
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
60 id="hold"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
61 post="/store/values"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
62 subject="room:frontDoorLockRequest"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
63 predicate="room:state"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
64 object="room:unlocked"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
65 ></rdf-oneshot>
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
66 <template is="dom-if" if="{{!isHeld}}">
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
67 <button on-click="hold">Hold unlocked</button>
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
68 </template>
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
69 <rdf-oneshot
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
70 id="releaseHold"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
71 post="/store/values"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
72 subject="room:frontDoorLockRequest"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
73 predicate="room:state"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
74 object="room:unset"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
75 ></rdf-oneshot>
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
76 <rdf-oneshot
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
77 id="lockNow"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
78 post="output"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
79 subject="room:frontDoorLock"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
80 predicate="room:state"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
81 object="room:locked"
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
82 ></rdf-oneshot>
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
83 <template is="dom-if" if="{{isHeld}}">
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
84 <button on-click="releaseHold">Release hold; lock door</button>
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
85 </template>
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
86 </div>
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
87 </div>
1455
1a7cd0cff3eb rename store's graph uri
drewp <drewp@bigasterisk.com>
parents: 1379
diff changeset
88 <div>
1a7cd0cff3eb rename store's graph uri
drewp <drewp@bigasterisk.com>
parents: 1379
diff changeset
89 <streamed-graph url="graph/events" graph="{{graph}}"></streamed-graph>
1a7cd0cff3eb rename store's graph uri
drewp <drewp@bigasterisk.com>
parents: 1379
diff changeset
90 <streamed-graph url="/store/store/events" graph="{{storeGraph}}"></streamed-graph>
1a7cd0cff3eb rename store's graph uri
drewp <drewp@bigasterisk.com>
parents: 1379
diff changeset
91 </div>
1a7cd0cff3eb rename store's graph uri
drewp <drewp@bigasterisk.com>
parents: 1379
diff changeset
92
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
93 </template>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
94 <script>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
95 HTMLImports.whenReady(function () {
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
96 Polymer({
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
97 is: 'door-control',
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
98 properties: {
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
99 graph: { type: Object, notify: true, observer: "_onGraph" },
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
100 storeGraph: { type: Object, notify: true, observer: "_onStoreGraph" },
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
101 lockState: { type: String },
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
102 autoLockIsComing: { type: Boolean },
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
103 autoLockInSec: { type: String},
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
104 isHeld: { type: Boolean },
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
105 },
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
106 behaviors: [BigastUri],
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
107 _onGraph: function(graph) {
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
108 if (!graph.graph) return;
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
109 const env = graph.graph.store.rdf;
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
110 const unlocked = env.createNamedNode('room:unlocked');
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
111 const locked = env.createNamedNode('room:locked');
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
112 this.isLocked = null;
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
113 graph.graph.quadStore.quads(
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
114 {subject: env.createNamedNode('room:frontDoorLock'),
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
115 predicate: env.createNamedNode('room:state'),
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
116 },
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
117 (q) => {
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
118 this.lockState = q.object.toString().replace(/.*\//, '');
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
119 this.isLocked = q.object.equals(locked) ? true : (q.object.equals(unlocked) ? false : null);
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
120 });
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
121
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
122 this.autoLockIsComing = false;
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
123 graph.graph.quadStore.quads(
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
124 {subject: env.createNamedNode('room:frontDoorLock'),
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
125 predicate: env.createNamedNode('room:autoLockInSec'),
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
126 },
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
127 (q) => {
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
128 this.autoLockIsComing = true;
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
129 this.autoLockInSec = parseFloat(q.object.valueOf());
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
130 });
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
131 },
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
132 _onStoreGraph: function(graph) {
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
133 if (!graph.graph) return;
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
134 const env = graph.graph.store.rdf;
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
135 const unlocked = env.createNamedNode('room:unlocked');
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
136 const locked = env.createNamedNode('room:locked');
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
137 this.isHeld = false;
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
138 graph.graph.quadStore.quads(
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
139 {subject: env.createNamedNode('room:frontDoorLockRequest'),
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
140 predicate: env.createNamedNode('room:state'),
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
141 },
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
142 (q) => {
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
143 this.isHeld = q.object.equals(unlocked);
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
144 });
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
145 },
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
146 unlock: function() {
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
147 this.$.unlockOneshot.go();
1229
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
148 },
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
149 hold: function () {
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
150 this.$.hold.go();
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
151 },
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
152 releaseHold: function() {
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
153 this.$.releaseHold.go();
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
154 this.$.lockNow.go(); // may race with releaseHold?
02e4b84821d5 talk to store graph, second button for holding unlocked, etc
drewp <drewp@bigasterisk.com>
parents: 1228
diff changeset
155 },
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
156 });
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
157 });
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
158 </script>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
159 </dom-module>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
160 <door-control></door-control>
1271
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
161
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
162 <template id="t" is="dom-bind">
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
163 <streamed-graph url="graph/events" graph="{{graph}}"></streamed-graph>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
164 <div id="out"></div>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
165 <script type="module" src="/rdf/streamed_graph_view.js"></script>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
166 </template>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
167
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
168 <style>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
169 .served-resources {
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
170 margin-top: 4em;
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
171 border-top: 1px solid gray;
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
172 padding-top: 1em;
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
173 }
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
174 .served-resources a {
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
175 padding-right: 2em;
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
176 }
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
177 </style>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
178
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
179 <div class="served-resources">
1379
baf1acaa9ac9 new simple mode that can set the door without rdf
drewp <drewp@bigasterisk.com>
parents: 1271
diff changeset
180 <a href=".">root</a>
baf1acaa9ac9 new simple mode that can set the door without rdf
drewp <drewp@bigasterisk.com>
parents: 1271
diff changeset
181 <a href="simple/">/simple/</a>
1271
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
182 <a href="stats/">/stats/</a>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
183 <a href="graph">/graph</a>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
184 <a href="graph/events">/graph/events</a>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
185 <a href="output">(post) output</a>
398bd2b2490c new graph view. some autolock and BT code
drewp <drewp@bigasterisk.com>
parents: 1229
diff changeset
186 </div>
1184
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
187 </body>
c87e5c8eb8ab frontdoor autolock. logging improvements. use simpler mqtt interface.
drewp <drewp@bigasterisk.com>
parents:
diff changeset
188 </html>