#!/bin/bash
###############################################################################################################
# Titel: write
# Autor: Michael Kaden
# Datum: 14.09.2014
#
# Funktion:
# Dieses Skript ist ein Teilprogramm von fdtsds. Es liest alle Dateien im Write-Spool-Verzeichnis ein, schreibt
# den Inhalt in das fdtsds-Logfile und an die passende serielle Schnittstelle.
#
# Zweck:
# Das Script ermöglicht als Write-Spooler die Verarbeitung der aus verschiedenen Skripten an das/die FuG(s) zu 
# sendenden AT-Kommandos.
#
# Copyright (C) 2014 Michael Kaden
#
# Dieses Programm ist freie Software. Sie können es unter Beachtung der Nutzungsbedingungen benutzen, 
# weitergeben und modifizieren.
# Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es Ihnen von Nutzen sein wird, 
# aber OHNE IRGENDEINE GARANTIE, sogar ohne die Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN 
# BESTIMMTEN ZWECK. 
###############################################################################################################

# Config-File einlesen
source /usr/local/smi/trx/etc/poc.conf

myname=$(echo "$0" | $awk -F/ '{ print $NF }')

# Device, zu dem diese Instanz des Write-Spoolers senden soll, aus dem eigenen Dateinamen bestimmen
device=$(echo "$myname" |$awk -F. '{ print $NF }')

# message system, aus dem eigenen Dateinamen bestimmen
msgsys=$(echo "$myname" |$awk -F. '{ print $1 }')

# alle MQTT-Messages des Write-Spoolers in einer Endlosschleife einlesen
while read -r line; do
	echo -ne "$line" > /dev/$device
done < <($mosquitto_sub -t "$(eval echo $TrxMqttWrite)")
exit 255
