lua:externi_lua_debug_konzole
Toto je starší verze dokumentu!
Externí LUA debug konzole
OBIS lze spustit ve speciálním režimu, kdy naslouchá na zvoleném TCP portu a přijímá LUA příkazy a vrací zprávy.
Spustit s následujícími parametry (6666 je číslo portu) a zalogovat se:
obis -extconsole 6666 -noxmlrpc
Následně lze z konzole pomocí programu netcat komunikovat následujícím způsobem (příklad v Linuxu):
echo -e "Restart\n<EOF/>\nProgram LuaObj:Print('text')\n<EOF/>\nExit\n<EOF/>" | nc localhost 6666 | grep -v "<EOF/>"
Doporučuje se netcat-traditional.
Ukázka mapování příkazů pro Vim:
"F1 help na clovo na kterem stojim map <F1> :w:exec '!echo -e "Restart\n<EOF/>\nProgram Help:Find(\"'.expand("<cword>").'\")\n<EOF/>\nExit\n<EOF/>" \| nc localhost 6666 \| grep -v "<EOF/>"' "F5 spusti obislua map <F5> :!obislua -extconsole 6666 -noxmlrpc -user Admin -pass "" -data dataname & "F6 terminate obis. (Je to pusteny dvakrat, protoze linuxova remote console "nejak nefunguje dobre) map <F6> :w:!echo -e "Terminate\n<EOF/>\n" \| nc localhost 6666 >/dev/null; sleep 1; echo -e "Terminate\n<EOF/>\n" \| nc localhost 6666& "F7 run ./obislua.sh (v adresari obis41/user.*) map <F7> :! xterm -geometry 120x40 -e ./obislua.sh -extconsole 6666 -noxmlrpc & "F9 spusteni vsech testu map <F9> :w:!echo -e "Restart\n<EOF/>\nProgram dofile(LUADIR()..\"debug.lua\") DEBUG.Init({typ={\"detail\", \"init\", \"strict\"}, log=\"consoledumper\"}) LuaUnit:run()\n<EOF/>\nExit\n<EOF/>" \| nc localhost 6666 \| grep -v "<EOF/>" "F10 spusteni testu aktualne editovaneho souboru map <F10> :w:exec '!echo -e "Restart\n<EOF/>\nProgram dofile(LUADIR()..\"debug.lua\") DEBUG.Init({typ={\"detail2\", \"init\", \"strict\"}, log=\"consoledumper\"}) LuaUnit:run(\"test_'.expand("%:t:r").'\")\n<EOF/>\nExit\n<EOF/>" \| nc localhost 6666 \| grep -v "<EOF/>"'
lua/externi_lua_debug_konzole.1275478888.txt.gz · Poslední úprava: 2010/06/02 11:41 autor: Karel Petrů