Template:Modules/Sockets/Functions: Difference between revisions
Jump to navigation
Jump to search
Line 27: | Line 27: | ||
sockWrite(socket,"JOIN #mta") | sockWrite(socket,"JOIN #mta") | ||
outputServerLog("IRC: connected!") | |||
setTimer(disconnect,10000,1) | setTimer(disconnect,10000,1) | ||
end | end |
Revision as of 13:19, 25 April 2010
This function creates a socket.
Syntax
userdata sockOpen ( string host, int port )
Required Arguments
- host: This is a host name e.g. "www.google.com"
- port: This is the port on which to connect e.g. 80
Returns
Returns userdata if the correct arguments were given false otherwise.
Example
This example shows you how you can connect to irc for 10 seconds.
PHP: (for the page that LUA expects to be at http://www.example.com/page.php)
local socket = sockOpen("irc.gtanet.com",80) addEventHandler("onSockOpened",getRootElement(), function (sock) if sock == socket then sockWrite(socket,"USER IRCbot botname * :Gamesnert & MCvarial") sockWrite(socket,"NICK botname") sockWrite(socket,"JOIN #mta") outputServerLog("IRC: connected!") setTimer(disconnect,10000,1) end end ) addEventHandler("onSockData",getRootElement(), function (sock,data) if sock == socket then outputServerLog("IRC: "..data) end end ) addEventHandler("onSockClosed",getRootElement(), function (sock) if sock == socket then outputServerLog("IRC: disconnected!") end end ) function disconnect () sockClose(socket) socket = nil end
Important Note: Sockets are asynchronous this means if sockOpen() returns the socket isn't actually created!