General Responses: @error, "Missing one or more necessary parameters. command failed."; The command required more comma-separated parameters than were supplied. Note that commas and semicolons between a pair of double quotes will be ignored. is a formal name of the command. ("Sync Time Date" instead of "sync_time_date", for example.) @error, "Unrecognized command []"; The command is not recognized. will be the first token specified from between the at sign (@) and the first comma. Play Schedule Format: @play_schedule,; Description: Plays the schedule specified by the first parameter, which is a file name. The file name should contain no path information, should be a file with the ".shd" extension, and can optionally be contained within double quotes. The file should already exist in the Schedules folder on the MZP machine. Anything else that was previously playing gets stopped. Example: @play_schedule,"demo.shd"; Responses: @ok; @error, "Confirm.txt could not be opened. Play Schedule command failed."; @error, "Specified file is not a schedule. Play Schedule command failed."; @error, "File does not exist." Play Set Format: @play_set,; Description: Plays the set specified by the first parameter, which is a file name. The file name should contain no path information, should be a file with the ".set" extension, and can optionally be contained within double quotes. The file should already exist in the Sets folder on the MZP machine. Anything else that was previously playing gets stopped. Example: @play_set,"demo.set"; Responses: @ok; @error, "Confirm.txt could not be opened. Play Set command failed."; @error, "Specified file is not a set. Play Set command failed."; @error, "File does not exist." Play Media Format: @play_media,; Description: Plays the video clip specified by the first parameter, which is a file name. The file name should contain no path information and can optionally be contained within double quotes. Anything else that was previously playing gets stopped. Example: @play_media,"Nature Scene.mpg"; Responses: @ok; @error, "Confirm.txt could not be opened. Play Media command failed."; @error, "Specified file is not a recognized media file. Play Media command failed."; @error, "File does not exist." Stop Format: @stop; Description: Stops whatever is currently playing, and simply displays a black screen. Example: @stop; Responses: @ok; @error, "Confirm.txt could not be opened. Stop command failed."; Pause Format: @pause; Description: Pauses all activity of the player, and maintains the currently visible frame on the screen. Example: @pause; Responses: @ok; @warning, "Playback is already paused. Pause command did nothing."; Unpause Format: @unpause; Description: Resumes playback of the player, after a pause command has been issued at some earlier time. Example: @unpause; Responses: @ok; @warning, "Playback is already running. Unpause command did nothing."; Is Paused (Added in MZP) Format: @is_paused; Description: Requests that the MZP machine return the paused status. Example: @is_paused; Response: @paused,true/false; Response Details: Returns true or false based on the current paused status. Response Example: @paused,true; Get Media Count (Added in MZP) Format: @get_media_count; Description: Requests that the MZP machine return a count of all media files that exist in the machine's Media directory. Example: @get_media_count; Response: @media_count,; Response Details: Returns the number of media files. Response Example: @media_count,5; Get Media List Format: @get_media_list[start, end]; Description: Requests that the MZP machine return a list of all files that exist in the machine's Media directory. Example: @get_media_list; @get_media_list,0,2; Response: @media_list,,, ... , ; Response Details: Returns a command named "media_list", followed by a comma-separated list of each file name. Each file is contained in double quotes. If an optional range is supplied, then the command will return a subset of the media file listing. The command uses zero-based indexing. Response Example: @media_list,"Lake.mpg","Forest.mpg","Plains.mpg"; @media_list,"Lake.mpg","Forest.mpg"; Get Set Count (Added in MZP) Format: @get_set_count; Description: Requests that the MZP machine return a count of all set files that exist in the machine's Sets directory. Example: @get_set_count; Response: @set_count,; Response Details: Returns the number of set files. Response Example: @set_count,5; Get Set List Format: @get_set_list[start, end]; Description: Requests that the MZP machine return a list of all files that exist in the machine's Sets directory. Example: @get_set_list; @get_set_list,1,2; Response: @set_list,,, ... ,; Response Details: Returns a command named "set_list", followed by a comma-separated list of each file name. Each file is contained in double quotes. If an optional range is supplied, then the command will return a subset of the media file listing. The command uses zero-based indexing. Response Example: @set_list,"demo.set","Saturday.set","Sunday.set","Failsafe.set"; @set_list,"Saturday.set"; Get Schedule Count (Added in MZP) Format: @get_schedule_count; Description: Requests that the MZP machine return a count of all schedule files that exist in the machine's Schedules directory. Example: @get_schedule_count; Response: @schedule_count,; Response Details: Returns the number of schedule files. Response Example: @schedule_count,5; Get Schedule List Format: @get_schedule_list[start, end]; Description: Requests that the MZP machine return a list of all files that exist in the machine's Schedules directory. Example: @get_schedule_list; @get_schedule_list,2,4; Response: @schedule_list,,, ... ,; Response Details: Returns a command named "schedule_list", followed by a comma-separated list of each file name. Each file is contained in double quotes. If an optional range is supplied, then the command will return a subset of the media file listing. The command uses zero-based indexing. Response Example: @schedule_list,"Spring.shd","Summer.shd","Fall.shd","Winter.shd"; @schedule_list,"Fall.shd","Winter.shd"; Get Active Format: @get_active; Description: Requests the file name of the file that is currently being played, if any. Example: @get_active; Response: @active_file,,; Response Details: Returns the type of the active file (the first parameter) and the file name of the active file (the second parameter). The type can be one of the following (without double quotes): "media", "set", "schedule", or "none". The file name is contained in double quotes, and as with all other file names, does not contain any path information, just the file name itself. If the type is "none", then the file name parameter will simply be empty double quotes (""). Response Example: @active_file,set,"Saturday.set"; Response Example: @active_file,none,""; Version Format: @version; Description: Requests the current version of the backend software. Example: @version; Response: @ok, 8.00.7; Login Format: @login,; Description: Checks the password against one stored on the backend machine, and approves or rejects the login request. Example: @login, badpassword; Responses (remove quotes): " V " " EBP " Logout Format: @logout; Description: Example: @logout; Responses (remove quotes): " V " Get Schedule File Format: @get_schedule_file,; Responses: Initial Response: @send_file,""; Waits for further command: @ready; Sends File using the Zmodem protocol Error Responses: @error, "File '' could not be opened."; @error, "Specified file is not a schedule. Get Schedule File command failed."; Get Set File Format: @get_set_file,; Responses: Initial Response: @send_file,""; Waits for further command: @ready; Sends File using the Zmodem protocol Error Responses: @error, "File '' could not be opened."; @error, "Specified file is not a set. Get Set File command failed."; Get Media File Format: @get_media_file,; Responses: Initial Response: @send_file,""; Waits for further command: @ready; Sends File using the Zmodem protocol Error Responses: @error, "File '' could not be opened."; @error, "Specified file is not a media file. Get Media File command failed."; Get Event File Format: @get_event_file,; Responses: Initial Response: @send_file,""; Waits for further command: @ready; Sends File using the Zmodem protocol Error Responses: @error, "File '' could not be opened."; Get Settings File Format: @get_settings_file,; Responses: Initial Response: @send_file,""; Waits for further command: @ready; Sends File using the Zmodem protocol Error Responses: @error, "File '' could not be opened."; Get File Format: @get_file,; Responses: Initial Response: @send_file,""; Waits for further command: @ready; Sends File using the Zmodem protocol Error Responses: @error, "File '' could not be opened."; Send Schedule File Format: @send_schedule_file,; Responses: Initial Response: @ready,""; Receives File using the Zmodem protocol Error Responses: @error, "Failed to receive ''"; @error, "Specified file is not a schedule. Send Schedule File command failed."; Send Set File Format: @send_set_file,; Responses: Initial Response: @ready,""; Receives File using the Zmodem protocol Error Responses: @error, "Failed to receive ''"; @error, "Specified file is not a set. Send Set File command failed."; Send Media File Format: @send_media_file,; Responses: Initial Response: @ready,""; Receives File using the Zmodem protocol Error Responses: @error, "Failed to receive ''"; @error, "Specified file is not a media file. Send Media File command failed."; Send Event File Format: @send_event_file,; Responses: Initial Response: @ready,""; Receives File using the Zmodem protocol Error Responses: @error, "Failed to receive ''"; Send Settings File Format: @send_settings_file,; Responses: Initial Response: @ready,""; Receives File using the Zmodem protocol Error Responses: @error, "Failed to receive ''"; Send File Format: @send_file,; Responses: Initial Response: @ready,""; Receives File using the Zmodem protocol Error Responses: @error, "Failed to receive ''"; Remove Unused Media Format: @remove_unused_media; Description: Goes through the entire \Media folder, looking for files that are not ever used in the currently play schedule, and deletes them. Presently, it only does so for files that are considered some form of video (MPEGs, WMVs, Flash, etcetera). Still images (as well as animated GIFS)are ignored. Example: @remove_unused_media; Responses: @ok; Start Instant Crawl Format: @start_instant_crawl,,,,,,,; Description: Starts a crawl instantly, hiding all other crawls and rolls, using the Rich Text Format file specified as the crawl text with formatting. The file should be located in the Media folder. This crawl will run for up to seconds, or until a @STOP_INSTANT_CRAWL instant event is given. It uses as the color to turn into 100% transparency, in the format 0xBBGGRR, where BB is blue in hexadecimal (00 to FF), GG is green, and RR is red. is a number between 0.0 and 1.0, indicating how translucent the overall crawl is. 0.0 is fully opaque, and 1.0 is fully translucent. is an integer that describes the number of pixels that the crawl moves per frame. Specify a negative number to get left-to-right movement. is a number between 0.0 and 1.0 that describes the vertical location of the crawl, 0.0 being the top of the screen and 1.0 being the bottom of the screen. , specified similarly to , specifies the color to use behind the text. If and are the same, then the background will be fully transparent. Example: @start_instant_crawl,Tornado.rtf,600,0x000000,0.00,3,1.0,0x000000; Example: @start_instant_crawl,Go Home.rtf,14400,None,0.00,3,1.0,0x0000FF; Responses: @ok; Stop Instant Crawl Format: @stop_instant_crawl; Description: Stops an instant crawl, if one is currently playing. Example: @stop_instant_crawl; Start Instant File Format: @start_instant_file,,; Description: Starts playing a file instantly, and continues to play it until its dwell time ends or a @STOP_INSTANT_FILE event is given. The file can be a schedule file, a set file, or any valid media file, and should already be on the machine in its proper folder. The currently playing schedule will be completely stopped and replaced by this new instant file, and when this instant file stops, the previous schedule will resume playing from the very beginning. The dwell time is in seconds; if this number is 0 or -1, then the instant file will play indefinitely. * If the number is -2, then an SET file will only play once and then go back to what is scheduled to play. (Added in MZP) Example: @start_instant_file,Flooding.set,-2; Example: @start_instant_file,Hello.mpg,300; Responses: @ok; Stop Instant File Format: @stop_instant_file; Description: Stops an instant file, if one is currently playing, and resumes whatever had been playing previously, starting from the beginning. Example: @stop_instant_file; Responses: @ok; Instant Event Command Serial Format: @send_serial_command,,,,,,,; Description: Commands the backend to immediately send out a serial event. The details of the parameter are complex. That information will be detailed elsewhere. Responses: @ok; Instant Event Command TCP Format: @send_tcp_command,,
,,,,,; Description: Commands the backend to immediately send out a TCP message. The details of the parameter are complex. That information will be detailed elsewhere. Responses: @ok; Instant Event Command UDP Format: @send_udp_command,,
,,,,,; Description: Commands the backend to immediately send out a UDP message. The details of the parameter are complex. That information will be detailed elsewhere. Responses: @ok; Reboot Machine Format: @reboot_machine; Description: This command will terminate the program, and reboot the machine. The program should be in the Startup directory of the Start Menu, and should resume like normal after the bootup process. Example: @reboot_machine; Responses: @ok; Restart MX5 Format: @restart_mx5; Description: Stops the backend executable, if it is running, and then starts it up again (regardless of if it was previously running or not.) Example: @restart_mx5; Responses: @ok; Reinstall MX5 Format: @reinstall_mx5; Description: Stops the backend executable, runs the original setup package as well as any subsequent update packages that have been installed, and then reboots the machine. This should return the MX5 back to its original state, plus update packages. Note that all media files other than those that are part of the original setup package will be deleted; the same with sets, schedules, and settings. Example: @reinstall_mx5; Responses: @ok; Manage Cache Format: @manage_cache; Description: Will manage commands and files associated with those in the Cache directory. This is a somewhat complex topic and will be detailed elsewhere. Example: @manage_cache; Responses: @ok; Sync Time and Date Format: @sync_time_date,// <24-hour>::; Description: Sets the backend system's time and date. All parameters are numbers; no month names allowed. Example: @sync_time_date,12/06/1982 23:49:13; Responses: @ok; Reset FTP Sever Format: @reset_ftp_server; Description: Stops the FTP Server, and re-write the users.ini file to original format. Then, start the FTP Sever. Example: @reset_ftp_server; Responses: @ok; Display Power Format: @display_power,; Description: Sets the display power to be either on or off. Valid values for are literally either on or off. If anything else is specified, a state of on is assumed. Example: @display_power,on; Example: @display_power,off; Responses: @ok; Settings - Get Section List Format: @settings_get_section_list; Description: Returns a list of all the sections in Settings.ini (which are marked using the standard INI file notation of square brackents []). The list is comma separated, and each item is surrounded by double-quotes ("). Example: @settings_get_section_list; Responses: @ok,"
","
",...,"
"; @error,"Settings.ini could not be opened."; Example Responses: @ok; @ok,"Display","Options","Communications"; @ok,"Display","Options","Slides","Folders","Startup","Security","Audio","Ambient Audio","Communications","Weather","News","EMS","DATAFEED","Data Acquisition","Image Transformations","VideoInCropping","Video Capture","Cyclic Play" Settings - Get Item List Format: @settings_get_item_list,
; Description: Returns a list of all items under the specified section (which may optionally be surrounded by double-quotes (")) in Settings.ini. The list is comma separated, and each item is surrounded by double-quotes. Each item only refers to the name of the item, not its value. Examples: @settings_get_item_list,"Display"; @settings_get_item_list,Folders; Responses: @ok,"","",...,""; @error,"Settings.ini could not be opened."; @error,"Missing one or more necessary parameters. Settings: Get Item List failed."; Example Responses: @ok,"Width","Height","Refresh","Monitors","Rotation","Dynamic Textures","Blackmagic Decklink Enabled","Warp Display","Mask Display","Warp File 1","Monitor Arrangement"; @ok,"Media","Schedules","Sets","Events","Confirm","Ambient","Restrict To Media Folder"; Settings - Get Item Format: @settings_get_item,
,,; Description: Returns the value of the specified item from the specified section of Settings.ini. The section name, item name, and default value can all be optionally surrounded by double -quotes ("). The response value will be surrounded by double -quotes ("). If the value doesn't exist in the file, the specified default value will be returned as the response. Examples: @settings_get_item,"Display","Width","800"; @settings_get_item,Folders,Media,Not Found; @settings_get_item,"Options","Hey","Not Found"; Responses: @ok,""; @error,"Missing one or more necessary parameters. Settings: Get Item failed."; Example Responses: @ok,"1024"; @ok,"C:\MX5Player\Media"; @ok,"Not Found"; Settings - Set Item Format: @settings_set_item,
,,; Description: Sets the value of the specified item from the specified section of Settings.ini. The section name, item name, and value can all be optionally surrounded by double-quotes ("). The value will have its double quotes stripped off of it before it is saved to Settings.ini. Examples: @settings_set_item,"Display","Height","600"; @settings_set_item,Folders,Sets,D:\MX5\Sets; Responses: @ok; @error,"Missing one or more necessary paramters. Settings: Set Item failed.";