External Tools Configuration

Last Updated: 01 Mar 2019

The External Tools Configuration screen allows you to configure the settings for external tools that are integrated into Squiz Matrix. To access this screen, click on the System Configuration icon in the top header of the Admin interface.

From this screen, click on the Screen Switcher drop down list in the top right-hand corner and select External Tools Configuration.

Bookmarks

The tools that can be integrated are as follows:

  • HTML Tidy: This tool will check the HTML source code of the WYSIWYG Editors to ensure that it is valid. If it is not valid, it will try to correct the code.
  • HTML Tidy Accessibility Checker: This tool will check the accessibility of the content that was entered into a WYSIWYG Editor, in accordance with WCAG 1.0 standards.
  • Apache Tika: This tool will index the contents of PDF and MS Word Documents that are uploaded into the system. If a search is then performed, for example through a Search Page, the content of the PDF and MS Word files will also be searched. This tool replaces the deprecated pdftohtml and Antiword tools previously used for this purpose. For more information, visit Apache Tika.
  • ExifTool: This tool will extract any metadata from an image that has been uploaded into the system. This metadata can be created using tools such as Adobe Photoshop. ExifTool supports many different metadata formats including EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC Profile, Photoshop IRB, FlashPix, AFCP and ID3. For more information, visit www.sno.phy.queensu.ca/~phil/exiftool.
  • Markdown and Markdownify: These tools allow you to configure and use the Markdown Content Type within the assets.
  • getID3: This tool will extract metadata from a multimedia file that has been uploaded into the system, such as an MP3 or FLV file. For more information, visit the getID3() site.
  • OGG Metadata Extraction: This tool will extract metadata from an OGG video file that has been uploaded into the system.
  • Virus Checker: This tool will scan file assets for any potential threats. If the virus checker detects an infected file being uploaded, the file will be disallowed and the user will be informed.
  • Mollom Spam Detector: This tool allows you to use Mollom's advanced spam prevention service to analyse and manage the form submissions of a site.

For the majority of these tools to work within Squiz Matrix, they need to be installed on the server.

Once installed, the path for each tool must be set in the system's tools.inc configuration file, located in the /data/private/conf directory.

When a tool has been configured correctly, it can be activated. Please note, that only the system's Root User can activate the external tools on this screen.

To access the External Tool Configuration screen, click on the System Configuration System config icon icon in the top right hand corner of the screen - a drop down list will appear under this icon. From this list, select External Tools Configuration - the screen will appear.

Activate External Tools

This section allows you to enable the various system tools. Please note that the path to a tool must be correctly configured before the tool can be enabled.

The fields that are available in this section, outlined below, are only available to the system's Root User. The fields available are as follows:

  • Enable HTML Tidy: select Yes from the list to enable HTML Tidy. This will only work if the correct path is specified in the Path to HTML Tidy field.
  • HTML Tidy Accessibility Check Level: select the level of accessibility checking to perform on the content. The options available include 0 (HTML Tidy Classic), Priority 1, Priority 2 and Priority 3 accessibility checks. For more information on these options, refer to the HTML Tidy Configuration Options Quick Reference guide (SourceForge) and the Checklist for Checkpoints for WCAG 1.0.
  • HTML Standard to Use for HTML Tidy: select the doctype standard used by the HTML Tidy tool to evaluate the content of a WYSIWYG Editor. The options available in this field are:
    • HTML 4.01 Transitional
    • HTML 4.01 Strict
    • HTML 4.01 Frameset
    • XHTML 1.0 Transitional
    • XHTML 1.0 Strict
    • XHTML 1.0 Frameset
    • XHTML 1.1

    XHTML is not supported by Squiz Matrix's WYSIWYG Editor. As a result, if an XHTML standard is selected in this field, the cleaned content will be available in the frontend output only.

    By default, the HTML 4.01 Transitional standard will be used on the HTML Tidy tool. For more information , refer to the WC3's Doctype Declarations documentation.
  • Enable Apache Tika: select Yes from the list to enable File Keyword extraction and indexing using the Apache Tika tool.
  • Enable Image Metadata Extraction: select Yes from the list to enable the ExifTool.
  • Enable Markdown: select Yes from the list to enable the Markdown tool.
  • Enable Markdownify: select Yes from the list to enable the Markdownify tool.
  • Enable getID3 Extraction: select Yes from the list to enable getID3 Extraction.
  • Enable OGG Metadata Extraction: select Yes from the list to enable OGG Metadata Extraction.
  • Enable Virus Checker: select Yes from the list to enable the Virus Checker.

WYSIWYG Editor Tools

This section allows you to set up the tools for the system's WYSIWYG Editor.

The fields that are available in this section are outlined below:

  • Path to HTML Tidy: the path to the directory where the HTML Tidy tool has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field.
  • Spell Checker Language: this field allows you to change the dictionary used by the pspell spell checker. This spell checker in used by Squiz Matrix in such areas as the WYSIWYG Editor spell checking. Squiz Matrix note that you must have already enabled support for the particular language dictionary in pspell otherwise this will not work.

File Keyword Indexing

This section displays the settings of the Apache Tika file keyword indexing tool.

  • Path to Java Runtime: the path to the directory where the Java Runtime environment has been installed.
  • Path to Apache Tika JAR: the path to the directory where the Apache Tika JAR file is located.

Apache Tika requires Java 6 or later to be installed on the server.

Please note that as of Squiz Matrix v5.2, the pdftohtml and Antiword tools have been deprecated in favour of the Apache Tika tool.

This section displays the settings of the pdftohtml and Antiword tools.

The fields that are available in this section are outlined below:

  • Path to pdftohtml: the path to the directory where the pdftohtml tool has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field.
  • Path to Antiword: the path to the directory where the Antiword tool has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field, as shown in the figure below.
  • Path to Antiword Mappings: the path to the directory where you store the Antiword mappings.

Image Metadata Extraction

This section displays the settings of the ExifTool. The fields that are available in this section are outlined below:

  • Path to ExifTool: the path to the directory where the ExifTool has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field.

Markdown Tools

This section displays the settings of the Markdown tools for the Markdown Content Type.

The fields that are available in this section are outlined below:

  • Path to Markdown: the path to the directory where the Markdown tool has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field
    .
  • Path to Markdownify: the path to the directory where the Markdownify tool has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field, as shown in the figure below.

getID3 Extraction

This section displays the settings of the getID3 Extraction tool.

The fields that are available in this section are outlined below:

  • Path to getID3: the path to the directory where the getID3 tool has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field.

OGG Metadata Extraction

This section displays the settings of the OGG Metadata Extraction tool.

The fields that are available in this section are outlined below:

  • Path to OGG Metadata Library: the path to the directory where the OGG (vorbis/theora) PHP Metadata library has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field, as shown in the figure above. For more information, refer to the Ogg.class.php site.

Virus Checker

This section allows you to set up the Virus Checker.

The fields that are available in this section are outlined below:

  • Virus Checker Type: Select which Antivirus checker to use. You can choose between the Clam Antivirus and F-Prot Antivirus tools. By default, this field is set to Clam Antivirus. This option requires the clamdscan client to be installed on the server.
  • Path to Virus Checker: The path to the directory where the virus checker tool has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field, as shown in the figure above.

JavaScript Configuration

This section allows you to set up a third-party JavaScript installation on your system. This configuration enables the use of server-side JavaScript processing on REST Resource JavaScript assets. For more information, refer to the REST Resource Assets chapter in the Web Services manual.

The fields that are available in this section are outlined below:

  • JavaScript Command: the path to the directory where the JavaScript engine has been installed.
    If the path is incorrect or the tool has not been installed, a red error message will appear under the field.

    To include ECMAScript for XML (E4X) support in a SpiderMonkey JavaScript installation, use /usr/bin/js -x as the JavaScript command path.

  • Server Side JavaScript Timeout: Time in seconds before a Server Side JS process will time out. For example, if this value is set to 10 seconds and a Server Side JS process runs that takes 12 seconds, Matrix will terminate the process before the Server Side JS will get a chance to finish. This is to ensure that things like infinite loops created by the JS doesn't stop the interface from working.

Mollom Spam Detector

This section allows you to set up Mollom Spam Detection on your system. Mollom is an advanced spam prevention service that analyses the quality of content posted to websites and automatically determines whether submissions are spam (unwanted content) or ham (legitimate content). If Mollom is unsure whether a submission is spam or not, a CAPTCHA will be presented for verification.

In order to use Mollom's spam detection service, you will need to obtain a registered user account at the Mollom website. The fields that are available in this section are outlined below:

  • Test Mode: select whether or not to use Mollom Spam Detection for testing purposes only. If this field is set to Yes, posted content can be tagged as ham, spam or unsure without affecting the reputation of the user. By default, this field is set to No.
  • Public Key: enter the public key of your registered Mollom user account.
  • Private Key: enter the private key of your registered Mollom user account.
  • Valid Keys?: whether or not the details supplied in the Public and Private Key fields is valid.
  • Accept Bypassed Submission?: select whether or not submissions will be accepted if Mollom fails to respond as expected. For example, if this field is set to No and Mollom fails to classify a submission as either ham, spam or unsure, it will be rejected and not submitted on the site. By default, this field is set to Yes.

Once activated, Mollom protection can be configured for use on both theCustom FormandAsset Builderpages. Further spam check options are available on the configuration screen of these assets. For more information, refer to theAsset Builder Pagechapter of theOther CMS Assetsmanual and the Form Contents chapter of theCustom Formmanual.

Squid Cache

The Squid Cache section allows you to modify the settings for clearing Squid cache within Squiz Matrix, for example, via the Clear Squid Cache Tool or the Clear Squid Cache Trigger Action. For more information, refer to the Clear Squid Cache Tool chapter in the Tools manual and the Trigger Actions chapter in the Triggers manual.

The following fields are available:

  • Host Names: Enter the host name of the Squid Server. Multiple hosts can be specified, separately, on each new line.

    The host name(s) specified in this field are used in the clear cache command, as follows:
    $ squidclient -h hostname -m PURGE $urls 

    $ squidclient -h proxy.example.com -m PURGE http://www.example.com
  • Path: The path to the Squid Client within your Squiz Matrix system.  By default, this will be set to /usr/bin/squidclient.
  • Port Number: Enter the port number of the Squid client. By default, this field will be set to port 3128 .
  • Options: Additional options are available to be included in the clear Squid cache purge command. For example, entering -r -T 5 to this field will append these options to the clear cache command, as follows:
    $ squidclient -h hostname -r -T 5 -m PURGE $url
    These additions will mean that this command will reload the URL, repopulating its cache, and have a timeout of five seconds.

    The options available for appending the clear cache command are outlined in the table below.

    OptionDescription
    -P file     PUT request.    
    -a     Do NOT include Accept: header.    
    -r     Force cache to reload URL.    
    -s     Silent. Do not print data to stdout.    
    -v     Verbose. Print outgoing message to stderr.    
    -i IMS     If-Modified-Since time (in Epoch seconds)    
    -h host     Retrieve URL from cache on hostname. Default is localhost.    
    -l host     Specify a local IP address to bind to. Default is none.    
    -p port     Port number of cache. Default is 3128.    
    -m method     Request method, default is GET.    
    -t count     Trace count cache-hops.    
    -g count     Ping mode, "count" iterations (0 to loop until interrupted).    
    -I interval     Ping interval in seconds (default 1 second).    
    -H 'string'     Extra headers to send. Use '\n' for new lines.    
    -T timeout     Timeout value (seconds) for read/write operations.    
    -u user     Proxy authentication username.    
    -w password     Proxy authentication password.    
    -U user     WWW authentication username.    
    -W password     WWW authentication password.    
  • Log Output: If enabled, Matrix will print the full output of any triggered Squid commands it does to the system log.
  • Trailing Slash: Select whether or not the clear Squid cache purge command should also clear selected URLs with an appended trailing slash. If this option is enabled and cache is cleared for the url http://www.example.com, cache will also be cleared for the url http://www.example.com/. By default. this option is disabled.
  • Add Port to URL: Specify a port to add to each URL when submitted to Squid. If you are running Squiz Matrix on a non-standard port behind Squid, you may need to add the port back to the URL to clear its cache.

Sendmail

This section displays the Sendmail settings for the system's Bulkmail server. You can configure the mail method used on the Bulkmail Manager. For more information, refer to the Bulkmail Manager chapter in the Bulkmail manual.

The fields that are available in this section are as follows:

  • Path: the file path to the Sendmail application, for example /usr/sbin/sendmail.
  • Arguments: additional function parameters for sendmail.

SAML Authentication

This section displays the settings of SAML authentication on your system.

The fields that are available in this section are outlined below:

  • SimpleSAMLphp Path: the path to the directory where the SimpleSAMLphp has been installed.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field.

Google reCAPTCHA

This section allows you to set up Google's free reCAPTCHA anti-bot service on your system for use on the Custom Form Page and Asset Builder assets. For more information, refer to the Form Contents chapter of the Custom Form manual.

The fields that are available in this section are outlined below:

  • Public Key: enter the global public key provided to you by Google reCAPTCHA.
  • Private Key: enter the global private key provided to you by Google reCAPTCHA.

Google reCAPTCHA is only available in Squiz Matrix version 5.4.2.0 and above.

Closure Compiler

This section allows you to set up the Closure Compiler tool, used for merging and minification on the JS File Folder asset. For more information, refer to the JS File Folder chapter in the Core Assets manual.

The fields that are available in this section are outlined below:

  • Path: the path to the directory where the compiler.jar has been installed.  Please note that this tool requires Java version 6 or above to be installed on your system in order to execute the jar file.

    If the path is incorrect or the tool has not been installed, a red error message will appear under the field.

SSH RSA Key

This section displays the SSH key that has been generated for the system. This key can be used on external services supporting SSH Key authorisation, for example, when setting up a Git File Bridge.

If an SSH key has not yet been generated on your system, you can use the generate_ssh_key.php script to generate the SSH RSA public/private key pair.


Previous Chapter Next Chapter