Skip to content

Commit 9d464c7

Browse files
authored
Merge pull request saschaludwig#58 from saschaludwig/feature/add-cmdtest-scripts
Improve cmdtest scripts for HTTP and UDP testing
2 parents 384b065 + 937ebb5 commit 9d464c7

File tree

2 files changed

+151
-9
lines changed

2 files changed

+151
-9
lines changed

utils/cmdtest_http.sh

Lines changed: 68 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,73 @@ sleep 1
3434
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=LED4:OFF"
3535
sleep 1
3636

37+
# Test AIR Timer Commands
38+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR1:ON"
39+
sleep 1
40+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR1:OFF"
41+
sleep 1
42+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR2:ON"
43+
sleep 1
44+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR2:OFF"
45+
sleep 1
46+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR3:ON"
47+
sleep 1
48+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR3:OFF"
49+
sleep 1
50+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR3:RESET"
51+
sleep 1
52+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR3:TOGGLE"
53+
sleep 1
54+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR3TIME:120"
55+
sleep 1
56+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR4:ON"
57+
sleep 1
58+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR4:OFF"
59+
sleep 1
60+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=AIR4:RESET"
61+
sleep 1
62+
63+
# Test General Configuration
64+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:General:stationname=Test Radio Station"
65+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:General:slogan=Your Music, Your Way"
66+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:General:stationcolor=#FF0000"
67+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:General:slogancolor=#00FF00"
68+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:CONF:APPLY=TRUE"
69+
sleep 1
70+
71+
# Test LED Configuration
72+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED1:text=ON AIR"
73+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED2:text=ATTENTION"
74+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED3:text=DOORBELL"
75+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED4:text=PHONE"
76+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED1:used=True"
77+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED1:activebgcolor=#FF0000"
78+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED1:activetextcolor=#FFFFFF"
79+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED1:autoflash=True"
80+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:LED1:timedflash=False"
81+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:CONF:APPLY=TRUE"
82+
sleep 1
83+
84+
# Test Clock Configuration
85+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Clock:digital=True"
86+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Clock:digitalhourcolor=#FFFFFF"
87+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Clock:digitalsecondcolor=#FFFF00"
88+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Clock:digitaldigitcolor=#00FFFF"
89+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:CONF:APPLY=TRUE"
90+
sleep 1
91+
92+
# Test Timer Configuration
93+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Timers:TimerAIR1Enabled=True"
94+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Timers:TimerAIR1Text=Mic"
95+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Timers:TimerAIR2Text=Phone"
96+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Timers:TimerAIR3Text=Radio"
97+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Timers:TimerAIR4Text=Stream"
98+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:CONF:APPLY=TRUE"
99+
sleep 1
100+
101+
# Test Network Configuration
102+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:Network:udpport=3310"
103+
curl "http://127.0.0.1:8010/" --get --data-urlencode "cmd=CONF:CONF:APPLY=TRUE"
104+
sleep 1
37105

38106
exit
39-
echo -e "LED1:ON\nLED2:ON\nLED3:ON\nLED4:ON"
40-
conf="LED1TEXT=ON AIR\n
41-
LED2TEXT=ATTENTION\n
42-
LED3TEXT=DOORBELL\n
43-
LED4TEXT=PHONE\n
44-
"
45-
echo -e "CONF:$conf"

utils/cmdtest_udp.sh

Lines changed: 83 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,37 @@
11
#!/bin/bash
22

3+
echo "========================================="
4+
echo "OnAirScreen UDP Command Test Script"
5+
echo "========================================="
6+
echo ""
7+
8+
echo "[TEST] Clock Configuration - showseconds"
39
echo "CONF:Clock:showseconds=True" | nc -w 1 -u 127.0.0.1 3310
410
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
511
echo "CONF:Clock:showseconds=False" | nc -w 1 -u 127.0.0.1 3310
612
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
13+
14+
echo "[TEST] Clock Configuration - secondsinoneline"
715
echo "CONF:Clock:secondsinoneline=True" | nc -w 1 -u 127.0.0.1 3310
816
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
917
echo "CONF:Clock:secondsinoneline=False" | nc -w 1 -u 127.0.0.1 3310
1018
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
1119

20+
echo "[TEST] Clock Configuration - logoupper"
1221
echo "CONF:Clock:logoupper=True" | nc -w 1 -u 127.0.0.1 3310
1322
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
1423
echo "CONF:Clock:logoupper=False" | nc -w 1 -u 127.0.0.1 3310
1524
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
1625

26+
echo "[TEST] NOW/NEXT Text Commands"
1727
echo "NOW:The Testers - Test around the clock" | nc -w 1 -u 127.0.0.1 3310
1828
echo "NEXT:coming up next: the foo the bar and the generic" | nc -w 1 -u 127.0.0.1 3310
1929

30+
echo "[TEST] WARN Command"
2031
echo "WARN:The system is testing..." | nc -w 1 -u 127.0.0.1 3310
2132
echo "WARN:" | nc -w 1 -u 127.0.0.1 3310
2233

34+
echo "[TEST] LED Commands - Individual LEDs"
2335
echo "LED1:ON" | nc -w 1 -u 127.0.0.1 3310
2436
echo "LED1:OFF" | nc -w 1 -u 127.0.0.1 3310
2537
echo "LED2:ON" | nc -w 1 -u 127.0.0.1 3310
@@ -29,18 +41,87 @@ echo "LED3:OFF" | nc -w 1 -u 127.0.0.1 3310
2941
echo "LED4:ON" | nc -w 1 -u 127.0.0.1 3310
3042
echo "LED4:OFF" | nc -w 1 -u 127.0.0.1 3310
3143

32-
44+
echo "[TEST] LED Commands - Multiple LEDs in one packet"
3345
echo -e "LED1:ON\nLED2:ON\nLED3:ON\nLED4:ON" | nc -w 1 -u 127.0.0.1 3310
3446
echo -e "LED1:OFF\nLED2:OFF\nLED3:OFF\nLED4:OFF" | nc -w 1 -u 127.0.0.1 3310
3547

48+
echo "[TEST] AIR Timer Commands"
49+
echo " -> AIR1:ON/OFF"
50+
echo "AIR1:ON" | nc -w 1 -u 127.0.0.1 3310
51+
echo "AIR1:OFF" | nc -w 1 -u 127.0.0.1 3310
52+
echo " -> AIR2:ON/OFF"
53+
echo "AIR2:ON" | nc -w 1 -u 127.0.0.1 3310
54+
echo "AIR2:OFF" | nc -w 1 -u 127.0.0.1 3310
55+
echo " -> AIR3:ON/OFF/RESET/TOGGLE"
56+
echo "AIR3:ON" | nc -w 1 -u 127.0.0.1 3310
57+
echo "AIR3:OFF" | nc -w 1 -u 127.0.0.1 3310
58+
echo "AIR3:RESET" | nc -w 1 -u 127.0.0.1 3310
59+
echo "AIR3:TOGGLE" | nc -w 1 -u 127.0.0.1 3310
60+
echo " -> AIR3TIME:120"
61+
echo "AIR3TIME:120" | nc -w 1 -u 127.0.0.1 3310
62+
echo " -> AIR4:ON/OFF/RESET"
63+
echo "AIR4:ON" | nc -w 1 -u 127.0.0.1 3310
64+
echo "AIR4:OFF" | nc -w 1 -u 127.0.0.1 3310
65+
echo "AIR4:RESET" | nc -w 1 -u 127.0.0.1 3310
3666

67+
echo "[TEST] General Configuration"
68+
echo " -> Station Name, Slogan, Colors"
69+
echo "CONF:General:stationname=Test Radio Station" | nc -w 1 -u 127.0.0.1 3310
70+
echo "CONF:General:slogan=Your Music, Your Way" | nc -w 1 -u 127.0.0.1 3310
71+
echo "CONF:General:stationcolor=#FF0000" | nc -w 1 -u 127.0.0.1 3310
72+
echo "CONF:General:slogancolor=#00FF00" | nc -w 1 -u 127.0.0.1 3310
73+
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
3774

38-
exit
75+
echo "[TEST] LED Configuration"
76+
echo " -> LED Text, Colors, Flash Settings"
77+
echo "CONF:LED1:text=ON AIR" | nc -w 1 -u 127.0.0.1 3310
78+
echo "CONF:LED2:text=ATTENTION" | nc -w 1 -u 127.0.0.1 3310
79+
echo "CONF:LED3:text=DOORBELL" | nc -w 1 -u 127.0.0.1 3310
80+
echo "CONF:LED4:text=PHONE" | nc -w 1 -u 127.0.0.1 3310
81+
echo "CONF:LED1:used=True" | nc -w 1 -u 127.0.0.1 3310
82+
echo "CONF:LED1:activebgcolor=#FF0000" | nc -w 1 -u 127.0.0.1 3310
83+
echo "CONF:LED1:activetextcolor=#FFFFFF" | nc -w 1 -u 127.0.0.1 3310
84+
echo "CONF:LED1:autoflash=True" | nc -w 1 -u 127.0.0.1 3310
85+
echo "CONF:LED1:timedflash=False" | nc -w 1 -u 127.0.0.1 3310
86+
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
87+
88+
echo "[TEST] Clock Configuration"
89+
echo " -> Digital Mode, Colors"
90+
echo "CONF:Clock:digital=True" | nc -w 1 -u 127.0.0.1 3310
91+
echo "CONF:Clock:digitalhourcolor=#FFFFFF" | nc -w 1 -u 127.0.0.1 3310
92+
echo "CONF:Clock:digitalsecondcolor=#FFFF00" | nc -w 1 -u 127.0.0.1 3310
93+
echo "CONF:Clock:digitaldigitcolor=#00FFFF" | nc -w 1 -u 127.0.0.1 3310
94+
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
3995

96+
echo "[TEST] Timer Configuration"
97+
echo " -> Timer Enabled, Timer Text"
98+
echo "CONF:Timers:TimerAIR1Enabled=True" | nc -w 1 -u 127.0.0.1 3310
99+
echo "CONF:Timers:TimerAIR1Text=Mic" | nc -w 1 -u 127.0.0.1 3310
100+
echo "CONF:Timers:TimerAIR2Text=Phone" | nc -w 1 -u 127.0.0.1 3310
101+
echo "CONF:Timers:TimerAIR3Text=Radio" | nc -w 1 -u 127.0.0.1 3310
102+
echo "CONF:Timers:TimerAIR4Text=Stream" | nc -w 1 -u 127.0.0.1 3310
103+
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
40104

105+
echo "[TEST] Network Configuration"
106+
echo " -> UDP Port"
107+
echo "CONF:Network:udpport=3310" | nc -w 1 -u 127.0.0.1 3310
108+
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
109+
110+
echo "[TEST] Multiple Commands in One Packet"
111+
echo " -> NOW, NEXT, LED1, LED2"
112+
echo -e "NOW:Current Song Title\nNEXT:Next Song Title\nLED1:ON\nLED2:ON" | nc -w 1 -u 127.0.0.1 3310
113+
114+
echo "[TEST] LED Text Configuration - Multi-line Format"
41115
conf="LED1TEXT=ON AIR\n
42116
LED2TEXT=ATTENTION\n
43117
LED3TEXT=DOORBELL\n
44118
LED4TEXT=PHONE\n
45119
"
46120
echo -e "CONF:$conf" | nc -w 1 -u 127.0.0.1 3310
121+
echo "CONF:CONF:APPLY=TRUE" | nc -w 1 -u 127.0.0.1 3310
122+
123+
echo ""
124+
echo "========================================="
125+
echo "Test completed!"
126+
echo "========================================="
127+
exit

0 commit comments

Comments
 (0)