Commands list

@add
Adds specified cluster(s) address(es) to database
  1. @add "CLUSTER_ADDRESS";

or
  1. @add CLUSTER_ADDRESS1, CLUSTER_ADDRESS2, CLUSTER_ADDRESS3...;

(clusters addresses without quotes)

@connect
Connects with specified cluster(s) address(es)
  1. @connect "CLUSTER_ADDRESS";

or
  1. @connect CLUSTER_ADDRESS1, CLUSTER_ADDRESS2, CLUSTER_ADDRESS3...;

(clusters addresses without quotes)

@to
Specifies single receiver(s) for request.
Use this to mix with other commands.
  1. @to "CLUSTER_ADDRESS";

or
  1. @to CLUSTER_ADDRESS1, CLUSTER_ADDRESS2, CLUSTER_ADDRESS3...;

@echo
Sends echo request to all clusters.
  1. @echo;

@sleep
Sleeps cluster (s). Without any arguments will sleeps all clusters.
  1. @sleep;

or
  1. @sleep "CLUSTER_ADDRESS";

or
  1. @sleep CLUSTER_ADDRESS1, CLUSTER_ADDRESS2, CLUSTER_ADDRESS3...;

(clusters addresses without quotes)
or
Sleep my cluster:
  1. @sleep me;

me is an alias to THIS cluster.

@wakeup
Wake-ups cluster (s). Without any arguments will wake-up all clusters.
  1. @wakeup;

or
  1. @wakeup "CLUSTER_ADDRESS";

or
  1. @wakeup CLUSTER_ADDRESS1, CLUSTER_ADDRESS2, CLUSTER_ADDRESS3...;

(clusters addresses without quotes)
or
Wake up my cluster:
  1. @wakeup me;

@broadcast
Enabling extended broadcast (request will be resending by clusters to each others)
  1. @broadcast;

@opt_set
Sets cluster option on remote
  1. @opt_set key1:"value1", key2:"value2", key3:"value3"...;

@opt_get
Gets cluster option from remote
  1. @opt_get key1, key2, key3...;

@reg_set
Sets registry value on remote
  1. @reg_set key1:"value1", key2:"value2", key3:"value3"...;

@reg_get
Gets registry value from remote
  1. @reg_get key1, key2, key3...;

@clone
Executes self-cloning command
  1. @clone;

or
  1. @clone "CLUSTER_ADDRESS";

or
  1. @clone CLUSTER_ADDRESS1, CLUSTER_ADDRESS2, CLUSTER_ADDRESS3...;

(clusters addresses without quotes)
or
Clone my cluster:
  1. @clone me;

Note: Remember that cloner is disabled by default in config file. To use this command you must enable it.

@self_update
Self-updates remote cluster
  1. @self_update source:"ADDRESS_TO_SOURCE_CLUSTER";

or
  1. @self_update source:"ADDRESS_TO_SOURCE_CLUSTER", CLUSTER_ADDRESS;

or
  1. @self_update source:"ADDRESS_TO_SOURCE_CLUSTER", CLUSTER_ADDRESS1, CLUSTER_ADDRESS2, CLUSTER_ADDRESS3...;

(clusters addresses without quotes)
or
Self-update my cluster:
  1. @self_update source:"ADDRESS_TO_SOURCE_CLUSTER", me;

@exec
Executes remote shell code
  1. @exec cmd:"COMMAND_TO_EXECUTE";

@system
Executes remote shell code - via system()
  1. @system cmd:"COMMAND_TO_EXECUTE";

@proc
Starts process on remote cluster - via proc_open()
  1. @proc proc:"PROCESS_NAME";

@eval
Executes PHP code on remote cluster - via eval()
  1. @eval php:"PHP_CODE_TO_EXECUTE";

@ls
Gets files list from remote
  1. @ls;

or
  1. @ls path:"/path/to";

or
  1. @ls path:"/path/to", pattern:"*.*";

@fget
Reads remote file and returns its content - via file_get_contents()
  1. @fget path:"/path/to/file";

@fput
Writes remote file with defined content or uploads local file to remote - via file_put_contents()
  1. @fput path:"/path/to/file", data:"data_to_save"

or
  1. @fput path:"/path/to/file", source:"/path/to/localfile"

@fdel
Deletes remote file - via unlink()
  1. @fdel path:"/path/to/file"

@mkdir
Creates directory on remote
  1. @mkdir path:"/path/to"

@rmdir
Deletes (recursively) directory on remote
  1. @rmdir path:"/path/to"

@destroy
Destroys (deletes) remote cluster(s)
  1. @destroy confirm:"1";

@reset
Resets clusters registry on remote cluster(s)
  1. @reset;

@zip_put
Send zip archive to remote cluster and unpacks it
  1. @zip_put path:"/path/to/", file:"local.zip";

@zip_get
Packs files on remote cluster and gets them as zip archive
  1. @zip_get path:"/path/to/", pattern:"*", file:"local.zip";
Full API Documentation is included in Skynet packages available on GitHub.