www/cmd_fermenter.php

Fri, 25 Jan 2019 13:33:10 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Fri, 25 Jan 2019 13:33:10 +0100
changeset 201
f9b7e3f6be7c
parent 189
6470e5c6a001
permissions
-rw-r--r--

Fixed yeast database import differences between grams, ml and packs. Added cells field filled with defaults. Some edit screen improvements. Dynamic prompts depending on the yeast type. Disable men and filter of most columns in the yeasts list. Friendlier display of inverntory.

<?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