Get a web page:
[Page] [Error] = XGUI.Get([URL],[Grabber],[Username],[Password],[CacheFile],[MaxCacheAge])
Parameters:
Return Values:
If  the username and password are not specified then standard anonymous HTTP is used.
If no cache file is specified then no caching is performed. If the cache file doesn't exist then the page is downloaded and save to the cache file.
The returned Error is 0 if the page was retrieved from the cache, -1 if a timeout occured and the retries failed, otherwise it is the HTTP response code recieved from the server. For an explanation of HTTP response codes and their meanings see here

Get a setting:
[Value] = XGUI.GetSetting([Grabber],[Key],[Default])
Parameters:
Return Values:
This function retrieves a setting from "XMLTV_GUI.ini", settings are stored under a section with the name of your grabber. Settings don't have to be added using XGUI.AddSetting to be retrieved using this function.

Add a setting to the configuration screen:
XGUI.AddSetting([Grabber],[Key],[Type],[Default],[Name])
Parameters:
This function should be called when the Init function of your grabber is called.

Add a channel:
XGUI.AddChannel([Grabber],[Channel])
Parameters:
This function should only be called when RefreshChannels function of your grabber is called.

Get a channel:
[Channel] = XGUI.GetChannel([Grabber],[ID])
Parameters:
Return Values:
Channel will be nil if the specified ID doesn't exist.

Clear all channels:
XGUI.ClearChannels([Grabber])
Parameters:
This function should only be called when RefreshChannels function of your grabber is called, I recommend that if channels are being downloaded from the internet then you download the appropriate pages before clearing the channels.

Add a program:
XGUI.AddProgram([Grabber],[Program])
Parameters:
This function should only be called during a grabbing pass.