Skip to content

Commit 46583c3

Browse files
committed
Executive System Touch M5
1 parent 9facfec commit 46583c3

17 files changed

Lines changed: 539 additions & 20 deletions

README.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,29 @@ This software verifies its operational authorization by checking the presence of
5353

5454
---
5555

56+
## International Signal Servers
57+
58+
Country-specific signal servers that connect to international news, market, and data sources. Each runs on its own port, uses virtual threads (Java 21), and stores data in a dedicated MySQL database.
59+
60+
| Server | Port | Database | Sources | Signals |
61+
|--------|------|----------|---------|---------|
62+
| JapanSignalServer™ | 49201 | `nwe_japan` | NHK, Mainichi, Asahi, Nikkei, Kyodo, JPX, JMA | Nikkei 225, JPY/USD, Seismic |
63+
| RussiaSignalServer™ | 49202 | `nwe_russia` | TASS, RIA, Interfax, RBC, MOEX, Kommersant, Vedomosti, RT | MOEX Index, RUB/USD, Brent Crude |
64+
| MexicoSignalServer™ | 49203 | `nwe_mexico` | El Universal, Reforma, Milenio, La Jornada, Expansión, El Financiero, BMV, Excélsior | IPC/BMV, MXN/USD, Pemex Crude |
65+
| GreeceInternationalSignalServer™ | 49204 | `nwe_greece_intl` | Kathimerini, AMNA, Naftemporiki, Capital.gr, Reuters, Al Jazeera, BBC, DW | Athens Exchange, EUR/USD, Baltic Dry Index |
66+
67+
**Protocol:** TCP socket — `FETCH|<sourceId>|<url>`, `SIGNAL|<url>`, `STATUS`
68+
69+
**Port-aware:** 21, 22, 80, 443, 8080, 8888 for outbound connections.
70+
71+
**Source directories:**
72+
- `source/japan/` — Japan config and server
73+
- `source/russia/` — Russia config and server
74+
- `source/mexico/` — Mexico config and server
75+
- `source/greece/international/` — Greece/International config and server
76+
77+
---
78+
5679
## Print System Configuration
5780

5881
All terminal output is driven by `configuration/print-method.xml`. No recompile needed to adjust formatting.

configuration/nwe-config.xml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,58 @@
198198
</description>
199199
</server>
200200

201+
<!-- ═══════════════════════════════════════════════════════════════════
202+
INTERNATIONAL SIGNAL SERVERS
203+
════════════════════════════════════════════════════════════════════ -->
204+
<server id="JapanSignalServer">
205+
<enabled>true</enabled>
206+
<name>JapanSignalServer™</name>
207+
<thread>JAPAN_SIGNAL_SERVER</thread>
208+
<host>localhost</host>
209+
<port>49201</port>
210+
<description>
211+
Japan signal server. Connects to Japanese news, market, currency,
212+
and seismic sources. Stores in nwe_japan MySQL database.
213+
</description>
214+
</server>
215+
216+
<server id="RussiaSignalServer">
217+
<enabled>true</enabled>
218+
<name>RussiaSignalServer™</name>
219+
<thread>RUSSIA_SIGNAL_SERVER</thread>
220+
<host>localhost</host>
221+
<port>49202</port>
222+
<description>
223+
Russia signal server. Connects to Russian news, market, currency,
224+
and energy sources. Stores in nwe_russia MySQL database.
225+
</description>
226+
</server>
227+
228+
<server id="MexicoSignalServer">
229+
<enabled>true</enabled>
230+
<name>MexicoSignalServer™</name>
231+
<thread>MEXICO_SIGNAL_SERVER</thread>
232+
<host>localhost</host>
233+
<port>49203</port>
234+
<description>
235+
Mexico signal server. Connects to Mexican news, market, currency,
236+
and energy sources. Stores in nwe_mexico MySQL database.
237+
</description>
238+
</server>
239+
240+
<server id="GreeceInternationalSignalServer">
241+
<enabled>true</enabled>
242+
<name>GreeceInternationalSignalServer™</name>
243+
<thread>GREECE_INTL_SIGNAL_SERVER</thread>
244+
<host>localhost</host>
245+
<port>49204</port>
246+
<description>
247+
Greece international signal server. Connects to Greek and international
248+
news, market, shipping, and currency sources. Stores in nwe_greece_intl
249+
MySQL database.
250+
</description>
251+
</server>
252+
201253
<!-- ═══════════════════════════════════════════════════════════════════
202254
BINARY HTTP SERVER
203255
apache-root: Apache2 document root subdirectory for stored files.
@@ -364,6 +416,7 @@
364416
<mapping category="Antivirus, Scanner" color="dark-orange" ansi="38;5;166"/>
365417
<mapping category="Heuristic, Classifier" color="yellow" ansi="38;5;226"/>
366418
<mapping category="Common, Rail, Logger" color="lavender" ansi="38;5;147"/>
419+
<mapping category="Signal, Japan, Russia, Mexico, Greece" color="cyan" ansi="38;5;51"/>
367420
<mapping category="Default" color="silver" ansi="38;5;250"/>
368421
</color-mappings>
369422

@@ -383,6 +436,10 @@
383436
<entry class="Communicator">0617340022</entry>
384437
<entry class="BinaryHttpServer">0889912345</entry>
385438
<entry class="WeatherServer">0721100456</entry>
439+
<entry class="JapanSignalServer">0831200101</entry>
440+
<entry class="RussiaSignalServer">0831200202</entry>
441+
<entry class="MexicoSignalServer">0831200303</entry>
442+
<entry class="GreeceInternationalSignalServer">0831200404</entry>
386443
</hashcodes>
387444

388445
</nwe-config>
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/usr/bin/env bash
2+
# Test: Check if port 49201 (JapanSignalServer) is open
3+
HOST="${1:-localhost}"
4+
PORT=49201
5+
6+
if timeout 3 bash -c "echo >/dev/tcp/$HOST/$PORT" 2>/dev/null; then
7+
echo "[PASS] Port $PORT is open on $HOST."
8+
else
9+
echo "[FAIL] Port $PORT not reachable on $HOST."
10+
exit 1
11+
fi
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/usr/bin/env bash
2+
# Test: Send STATUS command to JapanSignalServer on port 49201
3+
HOST="${1:-localhost}"
4+
PORT=49201
5+
6+
RESPONSE=$(echo "STATUS" | timeout 5 nc -w 5 "$HOST" "$PORT" 2>/dev/null || true)
7+
8+
if echo "$RESPONSE" | grep -q "ALIVE"; then
9+
echo "[PASS] JapanSignalServer ALIVE on $HOST:$PORT."
10+
echo "$RESPONSE"
11+
else
12+
echo "[FAIL] No ALIVE response from $HOST:$PORT."
13+
exit 1
14+
fi
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/usr/bin/env bash
2+
# Test: Check if port 49202 (RussiaSignalServer) is open
3+
HOST="${1:-localhost}"
4+
PORT=49202
5+
6+
if timeout 3 bash -c "echo >/dev/tcp/$HOST/$PORT" 2>/dev/null; then
7+
echo "[PASS] Port $PORT is open on $HOST."
8+
else
9+
echo "[FAIL] Port $PORT not reachable on $HOST."
10+
exit 1
11+
fi
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/usr/bin/env bash
2+
# Test: Send STATUS command to RussiaSignalServer on port 49202
3+
HOST="${1:-localhost}"
4+
PORT=49202
5+
6+
RESPONSE=$(echo "STATUS" | timeout 5 nc -w 5 "$HOST" "$PORT" 2>/dev/null || true)
7+
8+
if echo "$RESPONSE" | grep -q "ALIVE"; then
9+
echo "[PASS] RussiaSignalServer ALIVE on $HOST:$PORT."
10+
echo "$RESPONSE"
11+
else
12+
echo "[FAIL] No ALIVE response from $HOST:$PORT."
13+
exit 1
14+
fi
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/usr/bin/env bash
2+
# Test: Check if port 49203 (MexicoSignalServer) is open
3+
HOST="${1:-localhost}"
4+
PORT=49203
5+
6+
if timeout 3 bash -c "echo >/dev/tcp/$HOST/$PORT" 2>/dev/null; then
7+
echo "[PASS] Port $PORT is open on $HOST."
8+
else
9+
echo "[FAIL] Port $PORT not reachable on $HOST."
10+
exit 1
11+
fi
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/usr/bin/env bash
2+
# Test: Send STATUS command to MexicoSignalServer on port 49203
3+
HOST="${1:-localhost}"
4+
PORT=49203
5+
6+
RESPONSE=$(echo "STATUS" | timeout 5 nc -w 5 "$HOST" "$PORT" 2>/dev/null || true)
7+
8+
if echo "$RESPONSE" | grep -q "ALIVE"; then
9+
echo "[PASS] MexicoSignalServer ALIVE on $HOST:$PORT."
10+
echo "$RESPONSE"
11+
else
12+
echo "[FAIL] No ALIVE response from $HOST:$PORT."
13+
exit 1
14+
fi
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/usr/bin/env bash
2+
# Test: Check if port 49204 (GreeceInternationalSignalServer) is open
3+
HOST="${1:-localhost}"
4+
PORT=49204
5+
6+
if timeout 3 bash -c "echo >/dev/tcp/$HOST/$PORT" 2>/dev/null; then
7+
echo "[PASS] Port $PORT is open on $HOST."
8+
else
9+
echo "[FAIL] Port $PORT not reachable on $HOST."
10+
exit 1
11+
fi
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/usr/bin/env bash
2+
# Test: Send STATUS command to GreeceInternationalSignalServer on port 49204
3+
HOST="${1:-localhost}"
4+
PORT=49204
5+
6+
RESPONSE=$(echo "STATUS" | timeout 5 nc -w 5 "$HOST" "$PORT" 2>/dev/null || true)
7+
8+
if echo "$RESPONSE" | grep -q "ALIVE"; then
9+
echo "[PASS] GreeceInternationalSignalServer ALIVE on $HOST:$PORT."
10+
echo "$RESPONSE"
11+
else
12+
echo "[FAIL] No ALIVE response from $HOST:$PORT."
13+
exit 1
14+
fi

0 commit comments

Comments
 (0)