@golemio/flow 1.0.8-dev.573594395 → 1.0.8-dev.577679507

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/db/example/.config.json +3 -0
  2. package/db/example/00_truncate_tables.sql +10 -0
  3. package/db/example/01_wifiHistoricData.sql +49 -0
  4. package/db/example/02_countersData.sql +99 -0
  5. package/db/example/03_flowData.sql +343 -0
  6. package/db/example/99_runUpdateProcedure.sql +1 -0
  7. package/db/migrations/postgresql/.config.json +3 -0
  8. package/db/migrations/postgresql/20220616144407-flow.js +53 -0
  9. package/db/migrations/postgresql/package.json +3 -0
  10. package/db/migrations/postgresql/sqls/20220616144407-flow-down.sql +15 -0
  11. package/db/migrations/postgresql/sqls/20220616144407-flow-up.sql +467 -0
  12. package/db/migrations/postgresql/sqls/package.json +3 -0
  13. package/dist/integration-engine/CountersWorker.d.ts +14 -0
  14. package/dist/integration-engine/CountersWorker.js +120 -0
  15. package/dist/integration-engine/CountersWorker.js.map +1 -0
  16. package/dist/integration-engine/FlowWorker.js +6 -2
  17. package/dist/integration-engine/FlowWorker.js.map +1 -1
  18. package/dist/integration-engine/queueDefinitions.js +27 -0
  19. package/dist/integration-engine/queueDefinitions.js.map +1 -1
  20. package/dist/integration-engine/transformations/EcoCounterMeasurementsTransformation.d.ts +6 -0
  21. package/dist/integration-engine/transformations/EcoCounterMeasurementsTransformation.js +42 -0
  22. package/dist/integration-engine/transformations/EcoCounterMeasurementsTransformation.js.map +1 -0
  23. package/dist/integration-engine/transformations/EcoCounterTransformation.d.ts +17 -0
  24. package/dist/integration-engine/transformations/EcoCounterTransformation.js +99 -0
  25. package/dist/integration-engine/transformations/EcoCounterTransformation.js.map +1 -0
  26. package/dist/output-gateway/models/PedestriansLocationsModel.js +4 -2
  27. package/dist/output-gateway/models/PedestriansLocationsModel.js.map +1 -1
  28. package/dist/output-gateway/models/PedestriansMeasurementsModel.js +4 -2
  29. package/dist/output-gateway/models/PedestriansMeasurementsModel.js.map +1 -1
  30. package/dist/schema-definitions/index.d.ts +185 -0
  31. package/dist/schema-definitions/index.js +197 -2
  32. package/dist/schema-definitions/index.js.map +1 -1
  33. package/docs/implementation_documentation_CZ.md +6 -6
  34. package/docs/implementation_documentation_Counters.md +166 -0
  35. package/package.json +8 -4
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Flow = void 0;
6
+ exports.Flow = exports.Counters = void 0;
7
7
  const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
8
8
  // Detections
9
9
  const outputMeasurementsSDMA = {
@@ -154,6 +154,7 @@ const outputPedestriansLocationsSDMA = {
154
154
  measurement_end: sequelize_1.default.DATE,
155
155
  };
156
156
  const forExport = {
157
+ pgSchema: "flow",
157
158
  cubes: {
158
159
  name: "FlowCubes",
159
160
  outputSequelizeAttributes: outputCubesSDMA,
@@ -176,7 +177,7 @@ const forExport = {
176
177
  },
177
178
  pedestriansMeasurementsApi: {
178
179
  name: "PedestriansMeasurementsApi",
179
- pgTableName: "mv_pedestrians_detections_api",
180
+ pgTableName: "pedestrians_detections_api",
180
181
  outputSequelizeAttributes: outputPedestriansMeasurementsSDMA,
181
182
  },
182
183
  pedestriansLocationsApi: {
@@ -186,4 +187,198 @@ const forExport = {
186
187
  },
187
188
  };
188
189
  exports.Flow = forExport;
190
+ const datasourceEcoCounterJsonSchema = {
191
+ type: "array",
192
+ items: {
193
+ type: "object",
194
+ properties: {
195
+ channels: {
196
+ type: "array",
197
+ items: {
198
+ type: "object",
199
+ properties: {
200
+ channels: { type: ["array", "null"] },
201
+ counter: { type: "string" },
202
+ domain: { type: "string" },
203
+ id: { type: "number" },
204
+ installationDate: { type: "string" },
205
+ interval: { type: "number" },
206
+ latitude: { type: "number" },
207
+ longitude: { type: "number" },
208
+ name: { type: "string" },
209
+ photos: { type: ["array", "null"] },
210
+ sens: { type: "number" },
211
+ timezone: { type: "string" },
212
+ userType: { type: "number" },
213
+ },
214
+ required: [
215
+ "counter",
216
+ "domain",
217
+ "id",
218
+ "installationDate",
219
+ "interval",
220
+ "latitude",
221
+ "longitude",
222
+ "name",
223
+ "sens",
224
+ "timezone",
225
+ "userType",
226
+ ],
227
+ },
228
+ },
229
+ id: { type: "number" },
230
+ interval: { type: "number" },
231
+ latitude: { type: "number" },
232
+ longitude: { type: "number" },
233
+ name: { type: "string" },
234
+ },
235
+ required: ["id", "interval", "latitude", "longitude", "name"],
236
+ },
237
+ };
238
+ const datasourceEcoCounterMeasurementsJsonSchema = {
239
+ type: "array",
240
+ items: {
241
+ type: "object",
242
+ properties: {
243
+ counts: { type: ["number", "null"] },
244
+ date: { type: "string" },
245
+ status: { type: ["number", "null"] },
246
+ },
247
+ required: ["date"],
248
+ },
249
+ };
250
+ // Locations
251
+ const outputLocationsSDMA = {
252
+ id: {
253
+ primaryKey: true,
254
+ type: sequelize_1.default.STRING,
255
+ },
256
+ lat: sequelize_1.default.DECIMAL,
257
+ lng: sequelize_1.default.DECIMAL,
258
+ name: sequelize_1.default.STRING,
259
+ route: sequelize_1.default.STRING,
260
+ vendor: sequelize_1.default.STRING,
261
+ vendor_id: sequelize_1.default.STRING,
262
+ // Audit database fields
263
+ create_batch_id: { type: sequelize_1.default.BIGINT },
264
+ created_at: { type: sequelize_1.default.DATE },
265
+ created_by: { type: sequelize_1.default.STRING(150) },
266
+ update_batch_id: { type: sequelize_1.default.BIGINT },
267
+ updated_at: { type: sequelize_1.default.DATE },
268
+ updated_by: { type: sequelize_1.default.STRING(150) }, // Author or name of Worker of update
269
+ };
270
+ // only for Validator
271
+ const outputLocationsJsonSchema = {
272
+ type: "array",
273
+ items: {
274
+ type: "object",
275
+ properties: {
276
+ id: { type: "string" },
277
+ lat: { type: "number" },
278
+ lng: { type: "number" },
279
+ name: { type: "string" },
280
+ route: { type: ["string", "null"] },
281
+ vendor_id: { type: ["string", "number"] },
282
+ },
283
+ required: ["id", "lat", "lng", "vendor_id"],
284
+ },
285
+ };
286
+ // Directions
287
+ const outputDirectionsSDMA = {
288
+ id: {
289
+ primaryKey: true,
290
+ type: sequelize_1.default.STRING,
291
+ },
292
+ locations_id: sequelize_1.default.STRING,
293
+ name: sequelize_1.default.STRING,
294
+ vendor_id: sequelize_1.default.STRING,
295
+ // Audit database fields
296
+ create_batch_id: { type: sequelize_1.default.BIGINT },
297
+ created_at: { type: sequelize_1.default.DATE },
298
+ created_by: { type: sequelize_1.default.STRING(150) },
299
+ update_batch_id: { type: sequelize_1.default.BIGINT },
300
+ updated_at: { type: sequelize_1.default.DATE },
301
+ updated_by: { type: sequelize_1.default.STRING(150) }, // Author or name of Worker of update
302
+ };
303
+ // only for Validator
304
+ const outputDirectionsJsonSchema = {
305
+ type: "array",
306
+ items: {
307
+ type: "object",
308
+ properties: {
309
+ id: { type: "string" },
310
+ locations_id: { type: "string" },
311
+ name: { type: "string" },
312
+ vendor_id: { type: ["string", "number"] },
313
+ },
314
+ required: ["id", "locations_id", "vendor_id"],
315
+ },
316
+ };
317
+ // Detections
318
+ const outputDetectionsSDMA = {
319
+ category: { type: sequelize_1.default.STRING(100) },
320
+ directions_id: {
321
+ primaryKey: true,
322
+ type: sequelize_1.default.STRING,
323
+ },
324
+ locations_id: {
325
+ primaryKey: true,
326
+ type: sequelize_1.default.STRING,
327
+ },
328
+ measured_from: {
329
+ primaryKey: true,
330
+ type: sequelize_1.default.BIGINT,
331
+ },
332
+ measured_to: sequelize_1.default.BIGINT,
333
+ value: sequelize_1.default.INTEGER,
334
+ // Audit database fields
335
+ create_batch_id: { type: sequelize_1.default.BIGINT },
336
+ created_at: { type: sequelize_1.default.DATE },
337
+ created_by: { type: sequelize_1.default.STRING(150) },
338
+ update_batch_id: { type: sequelize_1.default.BIGINT },
339
+ updated_at: { type: sequelize_1.default.DATE },
340
+ updated_by: { type: sequelize_1.default.STRING(150) }, // Author or name of Worker of update
341
+ };
342
+ // only for Validator
343
+ const outputDetectionsJsonSchema = {
344
+ type: "array",
345
+ items: {
346
+ type: "object",
347
+ properties: {
348
+ directions_id: { type: "string" },
349
+ locations_id: { type: "string" },
350
+ measured_from: { type: "number" },
351
+ measured_to: { type: "number" },
352
+ value: { type: ["number", "null"] },
353
+ },
354
+ required: ["directions_id", "locations_id", "measured_from", "measured_to"],
355
+ },
356
+ };
357
+ const forExportCounters = {
358
+ pgSchema: "flow",
359
+ detections: {
360
+ name: "CountersDetections",
361
+ outputJsonSchemaObject: outputDetectionsJsonSchema,
362
+ outputSequelizeAttributes: outputDetectionsSDMA,
363
+ pgTableName: "counters_detections",
364
+ },
365
+ directions: {
366
+ name: "CountersDirections",
367
+ outputJsonSchemaObject: outputDirectionsJsonSchema,
368
+ outputSequelizeAttributes: outputDirectionsSDMA,
369
+ pgTableName: "counters_directions",
370
+ },
371
+ locations: {
372
+ name: "CountersLocations",
373
+ outputJsonSchemaObject: outputLocationsJsonSchema,
374
+ outputSequelizeAttributes: outputLocationsSDMA,
375
+ pgTableName: "counters_locations",
376
+ },
377
+ ecoCounter: {
378
+ datasourceJsonSchema: datasourceEcoCounterJsonSchema,
379
+ measurementsDatasourceJsonSchema: datasourceEcoCounterMeasurementsJsonSchema,
380
+ name: "EcoCounterCounters",
381
+ },
382
+ };
383
+ exports.Counters = forExportCounters;
189
384
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema-definitions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema-definitions/index.ts"],"names":[],"mappings":"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"}
@@ -141,17 +141,17 @@ Popis output-api.
141
141
  #### */locations*
142
142
 
143
143
  - zdrojové view v_pedestrians_locations_api
144
- - používá tabulku analytic.pedestrians_locations_api
144
+ - používá tabulku pedestrians_locations_api
145
145
  - obohaceno o data z view v_pedestrians_directions_api
146
- - používá tabulku analytic.pedestrians_directions_api
146
+ - používá tabulku pedestrians_directions_api
147
147
 
148
148
  #### */measurements*
149
149
 
150
- - zdrojové view mv_pedestrians_detections_api
151
- - používá tabulky
152
- - analytic.pedestrians_wifi
150
+ - zdrojové tabulka pedestrians_detections_api
151
+ - plněna procedurou update_detections_data a získává data z:
152
+ - pedestrians_wifi
153
153
  - counters_detections
154
- - analytic.pedestrians_directions_api
154
+ - pedestrians_directions_api
155
155
  - flow_measurements ~ pouze categorie pedestrian
156
156
 
157
157
 
@@ -0,0 +1,166 @@
1
+ # Implementační dokumentace modulu *Counters*
2
+
3
+ ## Záměr
4
+
5
+ Modul slouží ke sčítání chodců.
6
+
7
+ ## Vstupní data
8
+
9
+
10
+ ### Data aktivně stahujeme
11
+
12
+ Popis dat, jak je pomocí cronu a integration-engine stahujeme. Pokud jsou data stahována z více zdrojů, každý zdroj je popsán zvlášť.
13
+
14
+ #### *dataSourceEcoCounter*
15
+
16
+ - zdroj dat
17
+ - url https://apieco.eco-counter-tools.com/api/1.0/site
18
+ - formát dat
19
+ - protokol HTTP GET, Bearer token
20
+ - datový typ json
21
+ - odkaz na validační schéma již deprecated mongoose validačních schéma v 1.0.3 verzi bicycle counters
22
+ - příklad vstupních dat
23
+ - (volitelně) vstupní parametry, hlavičky, atd.
24
+ ```json
25
+ [
26
+ {
27
+ "id": 100047647,
28
+ "name": "Praha - Podolí",
29
+ "domain": "PRAHA ",
30
+ "latitude": 50.05949686563836,
31
+ "longitude": 14.419192187464143,
32
+ "userType": 7,
33
+ "timezone": "(UTC+01:00) Europe/Prague;DST",
34
+ "interval": 15,
35
+ "sens": 0,
36
+ "installationDate": "2018-09-14T00:00:00+0200",
37
+ "photos": ["15380385573882.jpg", "15380385575921.jpg", "15380385604483.jpg", "15380385611850.jpg"],
38
+ "counter": "COM18090165",
39
+ "channels": [
40
+ {
41
+ "id": 101047647,
42
+ "name": "Praha Pěší do centra",
43
+ "domain": "PRAHA ",
44
+ "latitude": 50.05949686563836,
45
+ "longitude": 14.419192187464143,
46
+ "userType": 1,
47
+ "timezone": "(UTC+01:00) Europe/Prague;DST",
48
+ "interval": 15,
49
+ "sens": 1,
50
+ "installationDate": "2018-09-14T00:00:00+0200",
51
+ "photos": null,
52
+ "counter": "COM18090165",
53
+ "channels": null
54
+ },
55
+ {
56
+ "id": 102047647,
57
+ "name": "Praha Pěší z centra",
58
+ "domain": "PRAHA ",
59
+ "latitude": 50.05949686563836,
60
+ "longitude": 14.419192187464143,
61
+ "userType": 1,
62
+ "timezone": "(UTC+01:00) Europe/Prague;DST",
63
+ "interval": 15,
64
+ "sens": 2,
65
+ "installationDate": "2018-09-14T00:00:00+0200",
66
+ "photos": null,
67
+ "counter": "COM18090165",
68
+ "channels": null
69
+ }
70
+ ]
71
+ }
72
+ ]
73
+ ```
74
+
75
+ - frekvence stahování
76
+ - cron definice 0 15 6 * * *
77
+ - název rabbitmq fronty dataplatform.counters.refreshEcoCounterDataInDB
78
+ - obsahuje prázdnou zprávu, aktualizuje číselníky a pošle zprávu do queue pro update měření
79
+
80
+ #### *dataSourceEcoCounterMeasurements*
81
+
82
+ - zdroj dat
83
+ - url https://apieco.eco-counter-tools.com/api/1.0/data/site/:id?begin=:from&end=:to&step=:step&complete=:complete
84
+ - formát dat
85
+ - protokol HTTP GET, Bearer token
86
+ - datový typ json
87
+ - odkaz na validační schéma již deprecated mongoose validačních schéma v 1.0.3 verzi bicycle counters
88
+ - příklad vstupních dat
89
+ - (volitelně) vstupní parametry, hlavičky, atd.
90
+ ```json
91
+ [
92
+ {
93
+ "date": "2020-01-16T02:30:00+0000",
94
+ "counts": 0,
95
+ "status": 0
96
+ },
97
+ {
98
+ "date": "2020-01-16T02:45:00+0000",
99
+ "counts": 0,
100
+ "status": 0
101
+ }
102
+ ]
103
+ ```
104
+
105
+ - název rabbitmq fronty dataplatform.counters.updateEcoCounter
106
+ - obsahuje json zprávu s parametry, popsáno níže
107
+
108
+ ## Zpracování dat / transformace
109
+
110
+ Popis transformace a případného obohacení dat. Zaměřeno hlavně na workery a jejich metody.
111
+
112
+ ### *Counters Worker*
113
+
114
+ Stručný popis workeru.
115
+
116
+ #### *refreshEcoCounterDataInDB*
117
+
118
+ - vstupní rabbitmq fronta
119
+ - název dataplatform.counters.refreshEcoCounterDataInDB
120
+ - (volitelně) závislé fronty (do kterých jsou odesílány zprávy z metody workeru)
121
+ - název dataplatform.counters.updateEcoCounter
122
+ - datové zdroje
123
+ - výčet datových zdrojů dataSourceEcoCounter
124
+ - transformace
125
+ - odkaz na [transformaci dat](./../src/integration-engine/EcoCounterTransformation.ts)
126
+ - data modely
127
+ - výčet datových modelů, kam se data ukládájí
128
+ - countersLocationsModel - číselník lokací v db tabulce counters_locations
129
+ - countersDirectionsModel - číselník seznorů v db tabulce counters_directions
130
+
131
+ #### *refreshEcoCounterDataInDB*
132
+
133
+ - vstupní rabbitmq fronta
134
+ - název dataplatform.counters.updateEcoCounter
135
+ - json zpráva s propertky
136
+ - category - vždy pedestrian
137
+ - directions - channel id s prefixem "ecoCounter-"
138
+ - id - channel id
139
+ - locations_id - id lokace s prefixem "ecoCounter-"
140
+ - datové zdroje
141
+ - výčet datových zdrojů dataSourceEcoCounter
142
+ - transformace
143
+ - odkaz na [transformaci dat](./../src/integration-engine/EcoCounterTransformation.ts)
144
+ - data modely
145
+ - výčet datových modelů, kam se data ukládájí
146
+ - countersDetectionsModel - záznamy o pohybech osob v 15 minutových intervalech, ukládá se do db tabulky counters_detections
147
+
148
+ ## Uložení dat
149
+
150
+ Popis ukládání dat.
151
+
152
+ ### Obecné
153
+
154
+ - typ databáze
155
+ - PSQL,
156
+ - databázové schéma
157
+ - public
158
+ - retence dat
159
+ - data jsou zachována
160
+ - ERD
161
+ - ![counters er diagram](assets/counters_erd.png)
162
+
163
+
164
+ ## Output API
165
+
166
+ Modul nemá output API.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/flow",
3
- "version": "1.0.8-dev.573594395",
3
+ "version": "1.0.8-dev.577679507",
4
4
  "description": "Golemio Flow Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -8,8 +8,8 @@
8
8
  "build": "rimraf ./dist && ttsc -p ./tsconfig.build.json",
9
9
  "build-minimal": "run-s 'build --sourceMap false --declaration false'",
10
10
  "build-watch": "run-s 'build --watch --preserveWatchOutput'",
11
- "pretest": "golemio-import-test-data",
12
- "test": "cross-env NODE_ENV=test TS_NODE_COMPILER='ttypescript' mocha --exit --check-leaks --timeout 120000 -r ts-node/register 'test/**/*.test.ts'",
11
+ "pretest": "golemio import-db-data --postgres",
12
+ "test": "cross-env NODE_ENV=test TS_NODE_COMPILER='ttypescript' mocha --exit --check-leaks --timeout 120000 -r ts-node/register -r dotenv/config 'test/**/*.test.ts'",
13
13
  "test-debug": "run-s 'test --inspect-brk=9230'",
14
14
  "code-coverage": "nyc run-s 'test -r source-map-support/register'",
15
15
  "generate-docs": "typedoc --out docs/typedoc src",
@@ -27,9 +27,10 @@
27
27
  "devDependencies": {
28
28
  "@commitlint/cli": "^11.0.0",
29
29
  "@commitlint/config-conventional": "^11.0.0",
30
+ "@golemio/cli": "1.2.1",
30
31
  "@golemio/core": "1.2.13",
32
+ "@golemio/db-common": "1.0.1",
31
33
  "@golemio/eslint-config": "^1.0.2",
32
- "@golemio/schema-definitions": "2.0.25",
33
34
  "@ovos-media/ts-transform-paths": "^1.7.18-1",
34
35
  "@types/chai": "4.2.3",
35
36
  "@types/chai-as-promised": "7.1.2",
@@ -56,5 +57,8 @@
56
57
  },
57
58
  "dependencies": {
58
59
  "JSONStream": "^1.0.4"
60
+ },
61
+ "peerDependencies": {
62
+ "@golemio/core": "^1.0.0"
59
63
  }
60
64
  }