www/cmd_fermenter.php

Sat, 26 Jan 2019 15:03:09 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 26 Jan 2019 15:03:09 +0100
changeset 209
dc30801e6961
parent 189
6470e5c6a001
permissions
-rw-r--r--

Import set tun_material from the specifix heat value. Equipment database uses POST instead of GET. Equipment editor screen in style with other inventory screens. In stock print now uses the type indexes to translate to text. Also show the correct unit and values of the yeast.

<?php
require_once('config.php');

/*
 * Sequence number file. Must be mode 666 in directory mode 777
 */
$sfile = "run/sequence";
if (fopen($sfile, "r")) {
	$data = file_get_contents($sfile);
	$nr = intval($data);
} else {
	$nr = 1;
}
$nr++;
if ($fp = fopen($sfile, "w")) {
	file_put_contents($sfile, $nr);
	fclose($fp);
}


if (isset($_POST['node'])) {
	$node = $_POST['node'];
} else {
	return 1;
}
if (isset($_POST['alias'])) {
	$alias = $_POST['alias'];
} else {
	return 1;
}
if (isset($_POST['payload'])) {
	$payload = $_POST['payload'];
} else {
	return 1;
}


/*
 * topic:    mbv1.0/fermenters/DCMD/$node/$alias
 * payload:  {"timestamp":1546956819,"seq":688,"metric":$payload}
 * $payload: {"product":{"code":"HUP001","name":"Hop Hup"}}
 *           {"stage":"PRIMARY","mode":"FRIDGE","setpoint":{"low":17.8,"high":18.2}}
 *           {"heater":{"state":0},"cooler":{"state":0},"fan":{"state":0},"light":{"state":0}}
 *           {"profile":{"uuid":"...","name":"profielnaam","inittemp":{"low":18.2,"high":20.5},"fridgemode":0,
 *              "steps":[{"resttime":12,"steptime":36,"target":{"low":20.8,"high":23.1},"fridgemode":0},
 *              	 {"resttime":48,"steptime":48,"target":{"low":27.5,"high":28.0},"fridgemode":0}]}}
 *           {"profile":{"command":"start/stop/pause/abort"}
 */
$topic = "mbv1.0/fermenters/DCMD/" . $node . "/" . $alias;
$payload = '\'{"timestamp":' . time() . ',"seq":' . $nr . ',"metric":' . $payload . '}\'';

syslog(LOG_NOTICE, $topic . ' ' . $payload);
shell_exec('mosquitto_pub -h '.MQTT_HOST.' -q 0 -t '.$topic.' -m '.$payload);

?>

mercurial