From 2fa89d40071e4afffa2aeb1805eecf2f1c148cf0 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Sat, 26 May 2018 23:17:19 +0200 Subject: modularize... circular dependencies... whatever --- app/relay/rpc.js | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 app/relay/rpc.js (limited to 'app/relay/rpc.js') diff --git a/app/relay/rpc.js b/app/relay/rpc.js new file mode 100644 index 0000000..d21dacc --- /dev/null +++ b/app/relay/rpc.js @@ -0,0 +1,37 @@ +require('dotenv').config() + +import { remote } from './remote' +import * as runner from './runner' + +const zerorpc = require('zerorpc') + +let connected = false +export const rpc = new zerorpc.Client() +rpc.connect('tcp://127.0.0.1:' + process.env.RPC_PORT) +rpc.on('error', function(error) { + console.error('RPC server error:', error) +}) +console.log('RPC listening on port ' + process.env.RPC_PORT) + +rpc.invoke('ping', (err, res, more) => { + console.log('sent ping to rpc, got', res) + if (res === 'pong') { + remote.emit('system_res', { + type: 'rpc_connected', + runner: runner.status() + }) + connected = true + } else { + remote.emit('system_res', { + type: 'rpc_disconnected', + }) + connected = false + } +}) + +export function get_connected() { + return connected +} +export function set_connected(option) { + connected = !! option +} \ No newline at end of file -- cgit v1.2.3-70-g09d2