Group-Office has 3 routers:
- The JMAP router for routing JMAP requests. See https://jmap.io/spec-core.html
- The CLI router for routing Command Line Interface commands
- A download hash for routing download id’s to a method.
The standard JMAP calls are already built in. Every Entity is registered in the “core_entity” table. The router uses this table to find the corresponding module. For example method call “Contact/get” is mapped to PHP class:
and public method:
All parameters are passed in the $params argument.
All downloads go through “download.php?blob=<HASH>”. The <HASH> is typically a hash pointing to a BLOB on the system. But it can also contain a route to a special download method defined in the Module.php file of the module. Methods prefixed with “download” can be accessed. For example method:
can be accessed with: