-
Notifications
You must be signed in to change notification settings - Fork 1
/
Rolladen_steuern.sh
126 lines (95 loc) · 2.85 KB
/
Rolladen_steuern.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#!/bin/bash
#Die Zuordnung von Kanalnummern zu sprechenden Namen und die Verschattungsprozente werden in einer zentralen Datei vorgenommen, weil darauf mehrere Skripte zugreifen werden
source /home/openhabian/scripts_prod/Rolladen/Rolladen_Variablen.config
#Der erste übergebene Parameter wird mit dem Namen des Rolladens aus o.g. Datei verglichen und der zugehörige Kanal gesetzt:
#Außerdem wird der Prozentwert für die Verschattung des jeweiligen Rolladens gesetzt.
#Wenn der erste übergebene Parameter ein Szenario enthält, wird dieses ausgeführt und das Skript danach beendet.
case $1 in
EG_Buero)
Rolladenkanal=$EG_Buero
Verschattungsprozent=$EG_Buero_Verschattung
;;
EG_DU_WC)
Rolladenkanal=$EG_DU_WC
Verschattungsprozent=$EG_DU_WC_Verschattung
;;
EG_Kueche)
Rolladenkanal=$EG_Kueche
Verschattungsprozent=$EG_Kueche_Verschattung
;;
EG_Esszimmer_Links)
Rolladenkanal=$EG_Esszimmer_Links
Verschattungsprozent=$EG_Esszimmer_Links_Verschattung
;;
EG_Esszimmer_Rechts)
Rolladenkanal=$EG_Esszimmer_Rechts
Verschattungsprozent=$EG_Esszimmer_Rechts_Verschattung
;;
EG_Wohnzimmer_Links)
Rolladenkanal=$EG_Wohnzimmer_Links
Verschattungsprozent=$EG_Wohnzimmer_Links_Verschattung
;;
EG_Wohnzimmer_Rechts)
Rolladenkanal=$EG_Wohnzimmer_Rechts
;;
Szenario_alle_hoch)
/home/openhabian/scripts_prod/Rolladen/Szenario_alle_hoch.sh
exit
;;
Szenario_alle_runter)
/home/openhabian/scripts_prod/Rolladen/Szenario_alle_runter.sh
exit
;;
Szenario_Verschattung_Sued_Ost)
/home/openhabian/scripts_prod/Rolladen/Szenario_Verschattung_Sued_Ost.sh
exit
;;
Szenario_Verschattung_Sued_West)
/home/openhabian/scripts_prod/Rolladen/Szenario_Verschattung_Sued_West.sh
exit
;;
Szenario_Verschattung_West)
/home/openhabian/scripts_prod/Rolladen/Szenario_Verschattung_West.sh
exit
;;
esac
#Der zweite übergebene Parameter sagt was mit dem einzelnen Rolladen gemacht werden soll und setzt den Modus, der weiter unten dann abgefragt wird.
case $2 in
hoch)
Rolladenbefehl="up"
Modus="einzeln_steuern"
;;
runter)
Rolladenbefehl="down"
Modus="einzeln_steuern"
;;
stopp)
Rolladenbefehl="off"
Modus="einzeln_steuern"
;;
verschatten)
Modus="einzeln_verschatten"
;;
esac
#Rolladen einzeln hoch/runter fahren oder anhalten
if [ $Modus == "einzeln_steuern" ]
then
telnet 192.168.1.151 1002 <<EOF
rhi
rhb
$Rolladenkanal
$Rolladenbefehl
rhe
EOF
fi
#Rolladen einzeln auf Verschattung fahren
if [ $Modus == "einzeln_verschatten" ]
then
telnet 192.168.1.151 1002 <<EOF
rhi
rhb
$Rolladenkanal
$Verschattungsprozent
rhe
EOF
fi