aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-connectivity/thingsboard-gateway/thingsboard-gateway/odbc.json
blob: c93992a2623bac5ceca276749a9d86d9d47b8e2a (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
47
48
49
50
51
52
53
54
{
    "connection": {
      "str": "Driver={PostgreSQL};Server=localhost;Port=5432;Database=thingsboard;Uid=postgres;Pwd=postgres;",
      "attributes": {
        "autocommit": true,
        "timeout": 0
      },
      "encoding": "utf-8",
      "decoding": {
        "char": "utf-8",
        "wchar": "utf-8",
        "metadata": "utf-16le"
      },
      "reconnect": true,
      "reconnectPeriod": 60
    },
    "pyodbc": {
      "pooling": false
    },
    "polling": {
      "query": "SELECT bool_v, str_v, dbl_v, long_v, entity_id, ts FROM ts_kv WHERE ts > ? ORDER BY ts ASC LIMIT 10",
      "period": 10,
      "iterator": {
        "column": "ts",
        "query": "SELECT MIN(ts) - 1 FROM ts_kv",
        "persistent": false
      }
    },
    "mapping": {
      "device": {
        "type": "postgres",
        "name": "'ODBC ' + entity_id"
      },
      "sendDataOnlyOnChange": false,
      "attributes": "*",
      "timeseries": [
        {
          "name": "value",
          "value": "[i for i in [str_v, long_v, dbl_v,bool_v] if i is not None][0]"
        }
      ]
    },
    "serverSideRpc": {
      "enableUnknownRpc": false,
      "overrideRpcConfig": true,
      "methods": [
        "procedureOne",
        {
          "name": "procedureTwo",
          "args": [ "One", 2, 3.0 ]
        }
      ]
    }
  }