I don't know too much about zentyal (yet), but to do some adapted tasks I believe you can use the ebox documentation to melt stuff in, again I haven't seen much about it, but many templates that I guess are usable to adapt I found residing in,
/usr/share/zentyal
look through there, specially subdirectories stubs and templates might be useful.
For myself I did a simpler solution, since I needed it for some shell scripts and needed a very quick solution for some simple buttons and had an open line for webserver,
Used http auth module together with ssl only on the outside open ip (for security, since its into your system), shell scripts i use in cron are called via setuid binary via php system function. Then I just wait a few seconds and check on shell script output log file size/time/date to see ifs it correct so i can return succesful via php.
for example, my c script to call cron shell script for remote management via webserver;
#include <stdio.h>
void main (void) {
system ("nohup nice -n 10 /bin/sh /srv/www/.dekluis/eorlease 172.16.31.1 \"pass\" > /srv/www/.publicos/eorlease.b7 & printf \"%u\" $!");
system ("nohup nice -n 10 /bin/sh /srv/www/.dekluis/eorlease 172.16.31.2 \"pass\" > /srv/www/.publicos/eorlease.b3 & printf \"%u\" $!");
system ("nohup nice -n 10 /bin/sh /srv/www/.dekluis/eorlease 172.16.31.3 \"pass\" > /srv/www/.publicos/eorlease.b5 & printf \"%u\" $!");
system ("nohup nice -n 10 /bin/sh /srv/www/.dekluis/enhlease > /srv/www/.publicos/enhlease & printf \"%u\" $!");
}
you need chmod +s after compiling such script depending on what the called script does. eorlease and enhlease in this example are my shell scripts I use in cron too. so just one script for the job that zentyal doesnt offer (in my case some repeater management) to automate network management through server, use same script via this simple program to call via web for rremote management.
maby an idea?
Greetings!
[edit]oops, forgot to mention that maby most important reason might be updating. if you mingle your third party things into zentyal via stubs/templates of ebox or something, you risk loosing your changes while updating and thats also one of my main reasons to do a few simple external tasks like this. but you need enable a outside website for that, id really suggest ssl only in combination with some auth password, since especially such setuid solutions well can turn ugly on real production environments especialy when dependent on it. if security really is an issue, absolutely ip restrict access to such webserver too.