Persistent TCP Connection

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche

Persistent TCP Connection in Control6 Script

gummi:~#
gummi:~# socat stdio tcp4-listen:4444
0070-01-01 00:00 -- pc_counter=2
0070-01-01 00:00 -- pc_counter=7
0070-01-01 00:00 -- pc_counter=12
0009-07-31 00:54 -- pc_counter=14
0009-07-31 00:54 -- pc_counter=19

...

CONTROL_START
        ECMD_GLOBAL(pc_counter, 0);

        ON STARTUP DO
                TCP_CONNECT(10.0.0.35, 4444, message_handler);
                dnl        (IP Address, Port, Handler-Name )

                THREAD_START(send_value)
        END

        TCP_HANDLER_PERSIST(message_handler)
                for (;;) {
                        TCP_SEND("%04d-%02d-%02d %02d:%02d -- pc_counter=%d\n", CLOCK_YEAR(), CLOCK_MONTH(), CLOCK_DAY(), CLOCK_HOUR(), CLOCK_MIN(), pc_counter);
                        WAIT(5)
                }
        TCP_HANDLER_END();

        THREAD(send_value)
                pc_counter ++;
                WAIT(1)
        THREAD_END(send_value)

CONTROL_END