www/cmd_fermenter.php

Sat, 11 May 2019 23:13:40 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 11 May 2019 23:13:40 +0200
changeset 358
3be8c2278fd7
parent 189
6470e5c6a001
permissions
-rw-r--r--

Added flags for each ingredient group for the supplies state. On the main screen show the state of the supplies if the product stage is not yet packaged. Calculate the state of the supplies for fermentables, hops, yeasts and miscs. In the grids don't show the inventory values after they are used and reduced. On the fermentables tab show the weight of the grains to mash.

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