//**Stop Encode**
//
// --------------------------------------------------------------------------------------
// Copyright © 2004 GatherWorks, Inc., All Rights Reserved.
//
// This code is subject to the terms and conditions of the End User License Agreement
// agreed to during installation.
//
// Main functions
//
// --------------------------------------------------------------------------------------
//
//**Start Encode**

// Please do not remove this line as it permits syntax highlighting with VJ++ <html><script> 
var TO_ONE			= "2one";
var TO_ALL			= "2all";
var TO_MODERATORS	= "2moderators";
var TO_PRESENTER	= "2presenter";
//XPS
var gw_mainXpsFunctions = [	// functionName, params... (in the "applicationName" directory
					["getLicenseInfo", "key"],
					["setLicenseInfo", "key", "type", "name", "serial"],
					["getConfig"],
					["invite", "guid", "session"],
					["zap", "guid", "session"],
					["lock", "session"],
					["unlock", "session"],
					["addModerator", "guid", "session"],
					["removeModerator", "guid", "session"],
					["listModerators", "session"],
					["createNewSessionAndPin", "title", "reusepin", "server"],
					["getSessionGuidFromPin", "pin", "app", "ishost"],
					["sessionByName", "name"],
					["setBandwidth", "session", "bw"],
					["getTestRoom"], 			// used to test connectivity - limited to one endpoint
					["downloadDummyFile"], 		//make sure that we can receive downloads without being blocked by popup blockers
					["endSession", "pin"],

					["now.hello"],

					["four11", "number"],
					["lookup", "ip"],
					["time"],

//OEM
["oem.createNewUser", "accountid", "accountemail", "useremail", "password", "firstname", "lastname"],
["oem.deleteUser", "accountid", "accountemail", "userid", "useremail"],
["oem.enableUserAccount", "accountid", "accountemail", "userid", "useremail", "enable"],
["oem.createNewSessionAndPin", "accountid", "accountemail", "userid", "useremail", "title", "server"],
["oem.sessionByName", "accountid", "accountemail", "userid", "useremail", "name"],
["oem.createPermanentSession", "accountid", "accountemail", "userid", "useremail", "title"],
["oem.deletePermanentSession", "accountid", "accountemail", "userid", "useremail", "accesscode"],


					["usage", "info"],
					["stats", "isJava"],

					//file related command
					["listFiles"],
					["shareFile", "id", "name"],			// returns a download key
					["deleteFile", "id"],			// delete shared file
					["cancelDownloadKey", "skey"],	// do not let people download the file with this key
					["downloadFile", "skey"],		// download file from key
					["downloadFilename", "filename"],		// download file from key
					["updateFileInfo", "docid", "object"]	//update information about a file
				];

// Communication between client xp, command verbs; will receive 2 extra params: callGuid, isPrivate
var gw_mainXpcFunctions = [	//functionName, TYPE, params...  where TYPE= true:toPresenterOnly, false:broadcastToAll, null:GuidProvidedAsNextParam
					["enterFullscreen", TO_ONE, "callGuid"],			// take remote endpoint into fullscreen mode
					["leaveFullscreen", TO_ONE, "callGuid"],			// take remote endpoint out of fullscreen mode
					["notifyFullscreen", TO_MODERATORS, "bool"],		// notify the presenter on whether i am full screen or not
					["notifyOthers", TO_MODERATORS, "isFullscreen", "canPresent", "canDriverInstall", "screenX", "screenY", "browser", "popupblocker", "isPresenter", "isController"],			// mycapabilities
					["installPresenterModule", TO_ONE, "callGuid"],		// tell a specific user to install the presenter module
					["grantControlOnConfirm", TO_PRESENTER, "callGuid", "alias"],			// tell the presenter to grant control to a specific person
					["revokeControl", TO_PRESENTER],					// tell the presenter to take control back
					["cancelPresent", TO_MODERATORS],					// tell the moderators that I am done presenting
					["guestShareFiles", TO_ONE, "callGuid"],			// o	Let a remote user upload a file that only you will see – you can then push it to the rest of the participants, download it or simply leave it in your file manager
					["downloadFile", TO_ALL, "skey", "name"],			// tell others to download a file by key
					["toggleScaling", TO_ONE, "callGuid"]				// enable/disble image resizing on remote client
				];

