Remote Access Communication Protocol
The protocol uses HTTP communication over its designated IP port for remote access. The URL follows the folder path name. With an empty URL it will list the files from the designated access folder (from settings).
With the HTTP Get request it will respond with a HTML document list of files that are currently available. The document has form elements that allow web browser navigation.
If HTTP Post request is used it will respond with JSON documents.
TLS
The protocol is always HTTP, for TLS encryption security the upgrade option is used.
URI parameters
The following are the URI parameters applied to the end of the URL after the '?'
Parameter |
Description |
none |
List all files in URL folder |
none |
Read file in URL |
w=filename |
Write file is uploaded into URL path and given filename. The uploaded file can be of the form "binary/octet-stream" |
f=foldername |
Create new folder off from URL path with foldername |
r=newname |
Rename file in URL to newname |
m=newpath |
Move URL file folder to newpath |
d=name |
Delete file or completely delete whole folder from URL path |
p=name |
Returns file or folder properties |
JSON packets
The following are JSON structures used for client / server communications
Status packet
The status packet is used to return the success or failure of an operation. If it failed then the Reason string provides a indication of the problem.
struct REM_PKT_STS {
bool Success;
String Reason;
}
Command packet
The command packet is used to send instructions to the server.
struct REM_PKT_STS {
String Command;
String Filename;
}
Command |
Description |
List |
List all files in URL folder (Filename not used) |
Read |
Read file in URL (Filename not used) |
NewFolder |
Create new folder off from URL path with Filename |
Rename |
Rename file in URL to Filename |
Move |
Move URL file folder to Filename |
Delete |
Delete file or completely delete whole folder from URL path (Filename not used) |
Properties |
Returns file or folder properties of URL (Filename not used) |
Alternate file writing method
Files can also be written using "application/octet-stream"
Password
HTTP request can require passwords. The user name is left blank. This can be provide using Basic access authentication.or Digest access authentication. The digest access method is preferred as it does not send the actual password.
Discovery Protocol
This is documented on this page.