-
Notifications
You must be signed in to change notification settings - Fork 510
FreeScout Modules
Modules allow to extend FreeScout functionality. All modules are open source (AGPL-3.0 license). Official modules source code is downloaded to your server upon installation.
Official modules are developed and maintained by FreeScout Team. Third party modules can be developed by anyone.
- Modules
- Installing Official Modules
- Installing Custom Modules
- Troubleshooting
- Modifying Modules
- Translating Modules
- Developing Modules
- FAQ
To install a module:
-
Open your FreeScout and go to
Maganage > Modules
-
Choose a module and enter Lincense Key.
- Click "Install Module" button.
- Click "Activate" button.
Instruction on developing custom modules can be found here.
If you want to install a custom module:
-
Unpack module into
/Modules
folder. -
Go to
Maganage > Modules
and activate module.
-
Try to deactivate all non-official modules.
-
Check errors in "Manage » System » Logs".
-
Check errors in browser console. If there are some JavaScript errors - uninstall and install problematic module again.
- Check application logs in "Manage » System » Logs".
- Try to run "Migrate DB" in "Manage » System » Tools" or run console command:
php artisan migrate
. - Clear app cache (use method 4) if others do not work).
- Rename the module (
/Modules/Test
into/Modules/Test2
for example), open https://your-freescout.com/modules/list two times, now the module will be deactivated. Rename module back and try to activate. Clear app cache. Try to reinstall the module. - If the application is not functioning at all, remove the module from /Modules folder. Edit the
modules
table in DB and remove the module from there. If you are using a docker - recreate the docker container. Re-install the module.
— 'File /modules/modulename/js/laroute.js does not exist' or 'File /modules/modulename/css/module.css does not exist'
In /public/modules
folder during installation each module creates a symlink. DO NOT create manually folders instead of symlinks in this directory - it will lead to unexpected problems (like this one).
Make sure that you don't have a Permissions issue.
-
Make sure that everything is ok in "Manage » System » Status", especially file permissions.
-
Check errors in Manage >> Logs >> App Logs.
-
Make sure you have PHP
curl
extension enabled. -
Make sure that /Modules folder is writable by the web server user.
-
Make sure file permissions are correct
-
Try to install/activate the module again.
— "open_basedir restriction in effect" error when trying to update FreeScout or activate some module
See this issue and try this solution.
By some reason DB table migration did not work during module activation on your FreeScout installation:
- Try to reactivate the module.
- Try to run "Migrate DB" in "Manage » System » Tools" or run console command:
php artisan migrate
. - If still no luck, find a developer who can find out why migration does not work on your FreeScout installation.
It means you have an issue with permissions in Modules folder (example). Or there is some issue with module's Public
folder.
— License for the module has been activated but the module has not been downloaded into /www/html/Modules/
Try to deactivate the license for the module and activate again, it will start downloading process again.
It means that in /storage/framework/cache/data/
there are files created by a user different from www-data, and www-data user can not completely clear the cache (read more). Run the following command to make www-data user an owner of all the FreeScout files:
sudo chown -R www-data:www-data /var/www/html
Modules require a symlink in /public/modules/
. If somehow instead of a symlink you've manually created a folder there, this will cause problems (example).
To fix this do the following (during this process no data is lost):
- Deactivate problematic modules
- Delete problematic modules
- Install and activate modules one by one
- Login via SSH and check the
/public/modules/
folder to see if the new install has created symlinks - Check if modules are working properly
If your server is located in a local network and access to external URLs is blocked in your local network, you can install FreeScout on some other server, download modules there and copy them from there (from /Modules
folder).
If you are receiving cURL error 28: Connection timed out after 10000 milliseconds
error in Manage > Logs > App Logs - it means your PHP can't connect to https://freescout.net
. Contact your hosting provider to figure out why. Your PHP must be able to connect to https://freescout.net
, without it it's impossible to download modules.
When you are viewing Modules or System Status page in FreeScout, it tries to detect and automatically fix invalid or missing modules symlinks. But there can be situations when symlinks can't be fixed automatically. In this case go to /public/modules
folder in FreeScout on your server and make sure that symlinks for active modules are valid. There should be no folders in /public/modules
, only symlinks.
If some simlink is missing, incorrect or you see a folder instead of symlink just remove it, deactivate corresponding module and activate the module again and correct symlink should be created automatically. If it does not help create the symlink manually.
If Public
folder is missing in some module directory just create an empty Public
folder manually. If you have a symlink instead of Public
folder - just remove it and create an empty Public folder manually.
You can change official modules code according to your needs. If you add some awesome features to modules or fix some bugs feel free to send us updated module at [email protected]. We will revise your additions and maybe update the module in the Modules Directory.
See instruction here.
FreeScout — Help desk & shared mailbox, free Zendesk & Help Scout alternative.
About
Installation
Configuration
- Sending Emails
- Fetching Emails
- Connect G Suite & Microsoft 365
- Console Commands
- Backup
- Update
- Upgrade PHP
Troubleshooting
Tools & Integrations
- API
- Migrate to FreeScout
- Zapier
- Make (Integromat)
- MacOS Menu Bar App
Development