API Hooks
THIS SYSTEM HAS BEEN DEPRECATED IN 1.0.73, SUPPORT WILL BE REMOVED SOON
GSP-Panel has a hook system that allows developers to hook into core functions. In order to use hooks you will need to place your custom hook file into includes\hooks and then call add_hook, please view the example below.
Hooks are called in the order they are added. If you need to rearrange the hooks during another script you would need to call remove_hook(hookpoint, hookfunction); and then add_hook(hookpoint, hookfunction);
Hook Points
Hook | Variables | Return | Description |
---|---|---|---|
servermon_start | None | None | This is called when the server monitor is started |
servermon_end | None | None | This is called at the end of the server monitor |
maintenance_optimize | None | None | This is called during $Maintenance→Optimize(); |
game_query_replace | Array of game information | Array of game information | This is called when a game is queried for the status |
addon_installed | Users game ID, Addon ID | None | This is called after an add install has completed |
game_suspended | Users game ID | None | This is called after a game server is suspended |
game_unsuspended | Users game ID | None | This is called after a game server is unsuspended |
gameinstall_finished | Users game ID | None | This is called after the user's game has been installed |
backup_completed | Users game ID | None | This is called after a user's game has been backed up |
Example
Here is our hook file that will be placed in includes\hooks\example.php
<?php function example_hook() { echo "This is our example hook that will be called during servermon_start"; } function addon_email($ugid, $addonid) { // Lets load the emails class LoadClass("emails"); global $emails; $addons = array("4"); // If the addon is in the above array, send an email if (in_array($addonid, $addons)) { $emails->SendMail(array("subject" => "test", "content" => "your content", "email" => "[email protected]")); } } add_hook("servermon_start", "example_hook"); add_hook("addon_installed", "addon_email"); ?>