Skip to content

FreeScout Modules

FreeScout edited this page Feb 15, 2023 · 158 revisions

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.

  1. Modules
  2. Installing Official Modules
  3. Installing Custom Modules
  4. Troubleshooting
  5. Modifying Modules
  6. Translating Modules
  7. Developing Modules
  8. FAQ

1. Modules

2. Installing Official Modules

To install a module:

  1. Open your FreeScout and go to Maganage > Modules

  2. Choose a module and enter Lincense Key.

2019-08-20_08-42-15

  1. Click "Install Module" button.

2019-08-20_09-00-45

  1. Click "Activate" button.

2019-08-20_09-03-02

3. Installing Custom Modules

Instruction on developing custom modules can be found here.

If you want to install a custom module:

  1. Unpack module into /Modules folder.

  2. Go to Maganage > Modules and activate module.

4. Troubleshooting

— One of official modules does not work properly or just stopped working

  1. Try to deactivate all non-official modules.

  2. Check errors in "Manage » System » Logs".

— 'File /modules/modulename/js/laroute.js does not exist' or 'File /modules/modulename/css/module.css does not exist'

— Error occurred creating [...] symlink: symlink(): No such file or directory

These errors means that you have a Permissions issue.

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).

— "Error occurred downloading/activating the module".

  1. Make sure that everything is ok in "Manage » System » Status", especially file permissions.

  2. Check errors in Manage >> Logs >> App Logs.

  3. Make sure you have PHP curl extension enabled.

  4. Make sure that /Modules folder is writable by the web server user.

  5. Make sure file permissions are correct

  6. Try to install/activate the module again.

— Application or module is not working after installing a module

  1. Check application logs in "Manage » System » Logs".
  2. Try to run "Migrate DB" in "Manage » System » Tools" or run console command: php artisan migrate.
  3. Clear app cache.
  4. 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.
  5. 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.

— "open_basedir restriction in effect" error when trying to update FreeScout or activate some module

See this issue and try this solution.

— Base table or view not found

By some reason DB table migration did not work during module activation on your FreeScout installation:

  1. Try to reactivate the module.
  2. Try to run "Migrate DB" in "Manage » System » Tools" or run console command: php artisan migrate.
  3. If still no luck, find a developer who can find out why migration does not work on your FreeScout installation.

— "Failed to create folder" error when updating/installing a module

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.

— I'm activating (deactivating) a module but it stays inactive (active).

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

— After updating to the new version the module does not work properly

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):

  1. Deactivate problematic modules
  2. Delete problematic modules
  3. Install and activate modules one by one
  4. Login via SSH and check the /public/modules/ folder to see if the new install has created symlinks
  5. Check if modules are working properly

— Modules page is empty. I can't download modules

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.

5. Modifying Modules

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.

6. Translating Modules

See instruction here.

7. Developing Modules

FreeScout Modules Development Guide

7. FAQ

Modules FAQ

Clone this wiki locally