Having had my wrist firmly smacked for being rude enough to PM someone about this, I’ll start to dig into the code to see what is happening.
First observation is that the docs say “doreload” is part of the framework module and that API code for a module is in the “admin/modules/Api” directory. However, this directory is missing on my system (FreePBX Framework 16.0.21.3).
Having noticed some discussion about this problem on FreePBX 15 and and edge upgrade being required, I upgraded FreePBX from edge giving me FreePBX Framework 16.0.21.6. However, this has not helped.
This is what we execute, I’m fairly sure it works or at least tells us its working:
mutation {
doreload(input: {}) {
message
status
transaction_id
}
}
As far as I can tell, as long as you’re running the most current modules then everything should work. It does require sysadmin 16.0.14 to run though, so make sure that’s installed as well.
Probably, system has the mechanism to execute background tasks, especially if they need root. Not that this task really needs to run as root, but it is what it is.
Also, keep in mind sysadmin is two things, a FreePBX module and a RPM. The scripts and libraries that are bundled with the RPM is actually what executes the background tasks.