diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2016-12-15 00:03:36 +1300 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2016-12-15 00:03:57 +1300 |
commit | ae00f68435077b1824b70081bff59aa5bad58078 (patch) | |
tree | f3fada92a77a82a0f1431a70df624d8f55d9e095 /web/simple/app.js | |
parent | 36f645e0d3def24ea6228c0974b83f60503d9ea6 (diff) | |
download | trackermap-web-ae00f68435077b1824b70081bff59aa5bad58078.tar.gz trackermap-web-ae00f68435077b1824b70081bff59aa5bad58078.tar.bz2 trackermap-web-ae00f68435077b1824b70081bff59aa5bad58078.zip |
Begin simple web app implementation
Diffstat (limited to 'web/simple/app.js')
-rw-r--r-- | web/simple/app.js | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/web/simple/app.js b/web/simple/app.js new file mode 100644 index 00000000..1a5fabf1 --- /dev/null +++ b/web/simple/app.js @@ -0,0 +1,63 @@ +/* + * Copyright 2016 Anton Tananaev (anton@traccar.org) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +var url = 'http://localhost:8082'; +var token = 'TOKEN'; + +var map = new ol.Map({ + layers: [ + new ol.layer.Tile({ + source: new ol.source.OSM() + }) + ], + target: 'map', + view: new ol.View({ + center: [0, 0], + zoom: 2 + }) +}); + +var ajax = function (method, url, callback) { + var x = new XMLHttpRequest(); + x.open(method, url, true); + x.onreadystatechange = function () { + if (x.readyState == 4) { + callback(JSON.parse(x.responseText)); + } + }; + if (method == 'POST') { + x.setRequestHeader('Content-type', 'application/json'); + } + x.send() +}; + +ajax('GET', url + '/api/session?token=' + token, function(user) { + ajax('GET', url + '/api/devices', function(devices) { + + var socket = new WebSocket('ws' + url.substring(4) + '/api/socket'); + + socket.onclose = function (event) { + console.log('socket closed'); + }; + + socket.onmessage = function (event) { + var data = JSON.parse(event.data); + + console.log(data); + }; + + }); +}); |