const express = require('express') var logger = require('morgan'); const axios = require('axios') var path = require('path'); const app = express() const port = 8080 app.use(logger('dev')); app.use(express.static(path.join(__dirname, 'public'))); // app.get('/', (req, res) => { // res.send('Hello World!') // }) app.get('/heading', (req, res) => { axios.post('http://0.0.0.0:3333/get_heading', {}) .then(navio_rsp => { console.log(`heading state statusCode: ${navio_rsp.status}`) console.log(navio_rsp.data) res.json({ heading: navio_rsp.data.heading }) }) .catch(error => { // console.error(error) res.json({ error: error }) }) }) app.get('/state', (req, res) => { axios.post('http://0.0.0.0:5000/get_state', {}) .then(navio_rsp => { console.log(`system state statusCode: ${navio_rsp.status}`) console.log(navio_rsp.data) res.json({ state: navio_rsp.data.State }) }) .catch(error => { // console.error(error) res.json({ error: error }) }) }) app.get('/gps', (req, res) => { axios.post('http://0.0.0.0:5000/get_gps', {}) .then(navio_rsp => { console.log(`gps state statusCode: ${navio_rsp.status}`) console.log(navio_rsp.data) res.json({ lat: navio_rsp.data.lat, lon: navio_rsp.data.lon }) }) .catch(error => { // console.error(error) res.json({ error: error }) }) }) app.get('/speed', (req, res) => { axios.post('http://0.0.0.0:5000/get_speed', {}) .then(navio_rsp => { console.log(`speed state statusCode: ${navio_rsp.status}`) console.log(navio_rsp.data) res.json({ speed: navio_rsp.data.speed }) }) .catch(error => { // console.error(error) res.json({ error: error }) }) }) app.get('/steering', (req, res) => { axios.post('http://0.0.0.0:5000/get_steering', {}) .then(navio_rsp => { console.log(`steering state statusCode: ${navio_rsp.status}`) console.log(navio_rsp.data) res.json({ steering: navio_rsp.data.steering }) }) .catch(error => { // console.error(error) res.json({ error: error }) }) }) app.post('/estop', (req, res) => { axios.post('http://0.0.0.0:5000/estop', {}) .then(navio_rsp => { console.log(`estop trigger statusCode: ${navio_rsp.status}`) console.log(navio_rsp.data) res.json({ success: navio_rsp.data.estop }) }) .catch(error => { // console.error(error) res.json({ error: error }) }) }) app.get('/get_estop', (req, res) => { axios.post('http://0.0.0.0:5000/get_estop', {}) .then(navio_rsp => { console.log(`estop state statusCode: ${navio_rsp.status}`) console.log(navio_rsp.data) res.json({ estop: navio_rsp.data.estop }) }) .catch(error => { // console.error(error) res.json({ error: error }) }) }) app.get('/get_arm', (req, res) => { axios.post('http://0.0.0.0:5000/get_arm', {}) .then(navio_rsp => { console.log(`arm state statusCode: ${navio_rsp.status}`) console.log(navio_rsp.data) res.json({ armed: navio_rsp.data.armed }) }) .catch(error => { // console.error(error) res.json({ error: error }) }) }) app.listen(port, () => { console.log(`Example app listening at http://localhost:${port}`) })