network/http_server_stream/example_client/javascript/src/js/index_ui.js

var client = HttpStreamClient()
client.readLedPeriod = 5000
client.writeLedPeriod = 1000
client.readAdcPeriod = 5000
client.readTimePeriod = 5000
var _el = function(id) {
return document.getElementById(id)
}
client.onConnected = function() {
var btn = _el('btn')
btn.value = 'Disconnect'
}
client.onDisconnected = function() {
var btn = _el('btn')
btn.value = 'Connect'
var txt = _el('device-id')
txt.disabled = false
}
function onBtnClicked() {
var btn = _el('btn')
var txt = _el('device-id')
if(!client.isConnected() && btn.value !== 'Connecting ...') {
if(!txt.value) {
alert('Must provide device IP address or hostname')
return
}
txt.disabled = true
btn.value = 'Connecting ...'
client.start(txt.value)
} else {
txt.disabled = false
client.stop()
}
}
function onEnter() {
if(event.key === 'Enter' || event.keyCode == 13) {
onBtnClicked()
}
}
var logger = function() {
var context = {}
var textArea = null
function addText(msg) {
if(!textArea) {
textArea = _el('log')
textArea.value = ''
}
textArea.value += msg + '\n'
textArea.scrollTop = textArea.scrollHeight;
}
context.debug = function(msg) {
console.debug(msg)
addText('[DEBUG]' + msg)
}
context.info = function(msg) {
console.info(msg)
addText('[INFO]' + msg)
}
context.warn = function(msg) {
console.warn(msg)
addText('[WARN]' + msg)
}
context.error = function(msg) {
console.error(msg)
addText('[ERROR]' + msg)
}
return context
}
var host = window.location.host
if(host) {
_el('device-id').value = host
}
client.setLogger(logger())
console.log('App ready')