function fork($argv) { global $DEBUG; $safe_arg = escapeshellarg($argv[4]); //$safe_arg["arg_2"] = escapeshellarg($arg_2); $pid = pcntl_fork(); if ($pid == -1) { // Fork failed if ($DEBUG) { logEntry("fork failed"); } exit(1); } else { if ($pid) { // We are the parent if ($DEBUG) { logEntry("------------"); logEntry("fork parent"); logEntry("------------"); } return "Parent"; // Can no longer use $db because it will be closed by the child // Instead, make a new MySQL connection for ourselves to work with } else { if ($DEBUG) { logEntry("------------"); logEntry("fork child"); logEntry("------------"); } //logEntry("sleeping 5 seconds, processing, thensleeping agin"); processCallback($argv); return "Child"; } } }
exit(0); } $EMAIL = urldecode(ReadSettingFromFile("EMAIL", $pluginName)); $PASSWORD = urldecode(ReadSettingFromFile("PASSWORD", $pluginName)); $PLAYLIST_NAME = urldecode(ReadSettingFromFile("PLAYLIST_NAME", $pluginName)); $WHITELIST_NUMBERS = urldecode(ReadSettingFromFile("WHITELIST_NUMBERS", $pluginName)); $CONTROL_NUMBERS = urldecode(ReadSettingFromFile("CONTROL_NUMBERS", $pluginName)); $REPLY_TEXT = urldecode(ReadSettingFromFile("REPLY_TEXT", $pluginName)); $VALID_COMMANDS = urldecode(ReadSettingFromFile("VALID_COMMANDS", $pluginName)); $COMMAND_ARRAY = explode(",", trim(strtoupper($VALID_COMMANDS))); $CONTROL_NUMBER_ARRAY = explode(",", $CONTROL_NUMBERS); $PLAYLIST_NAME = getRunningPlaylist(); //none at this time $callbackRegisters = "media"; //$callbackRegisters = "playlist,media"; //var_dump($argv); $FPPD_COMMAND = $argv[1]; //echo "FPPD Command: ".$FPPD_COMMAND."<br/> \n"; if ($FPPD_COMMAND == "--list") { echo $callbackRegisters; logEntry("FPPD List Registration request: responded:" . $callbackRegisters); exit(0); } if ($FPPD_COMMAND == "--type") { logEntry("type callback requested"); //we got a register request message from the daemon processCallback($argv); exit(0); } logEntry($argv[0] . " called with no parameteres"); exit(0);