Lua Socket: Difference between revisions

From Spring
Jump to navigationJump to search
Abma (talk | contribs)
No edit summary
Abma (talk | contribs)
No edit summary
Line 1: Line 1:
LuaSockets allow a widget to use tcp/udp sockets. With luasockets you can create a client or a server connecting to a server and transfering some data.
LuaSockets allow a widget to use tcp/udp sockets. With luasockets you can create a client or a server connecting to a server and transfering some data.


There are many possibilties what could be done with luasockets in spring, some ideas:
- webserver that shows all files in VFS
- telnet console, that allows control of spring
- statistics webpage
- ingame widget updater
- ingame news pages
- ...


==config==
==config==

Revision as of 10:48, 28 March 2012

LuaSockets allow a widget to use tcp/udp sockets. With luasockets you can create a client or a server connecting to a server and transfering some data.

There are many possibilties what could be done with luasockets in spring, some ideas:

- webserver that shows all files in VFS - telnet console, that allows control of spring - statistics webpage - ingame widget updater - ingame news pages - ...

config

All LuaSocket related config is readonly for LuaWidgets. They can be only changed through unitsync.

As default, socket access is restricted, as default no connections are allowed. To allow a connection / sending a packet, the destination has to the corresponding allow rule. For example, if a lua widget wants to connect to springrts.com at port 80,

TCPAllowConnect springrts.com:80

has to be set.


possible config values

LuaSocketEnabled = 1 Default is 0 means, all Socket functions are disabled
TCPAllowConnect allow TCP-connections to the listed hosts, for example: "springrts.com:80 springfiles.com:80" which allows luasockets to connect to springrts.com at port 80 and springfiles.com at port 80.
TCPAllowListen Server TCP-sockets are allowed on this port, for example: "localhost:1234 0.0.0.0:12345"
UDPAllowConnect see TCPAllowConnect
UDPAllowConnect see TCPAllowListen

example code

Notes / known issues / TODO

documentation

links

compiled Spring test version forum thread