Plugins
Configuration - Plugins
The plugin elements in the N2C5 Configuration file are part of the base Jarvis definition. However, because their parameters are individual to each plugin, they merit individual description.
A Jarvis Plug-In is any module which performs a specific function when requested via the web-client application. Each plugin must be listed separately. See the following example:
<plugin dataset="generate-page" access="**" module="GeneratePage" add_headers="no"
debug="no" dump="no">
<parameter name="template_dir" value="/usr/share/n2c5-dev/template"/>
<parameter name="dictionary" value="/usr/share/n2c5-dev/etc/dictionary.txt"/>
<parameter name="definitions.edr_filter_functions" value="all,call,activity,credit_card"/>
</plugin>
The following core attributes apply to all Jarvis plugins:
- access = “*” : Comma separated groups that can run the report. You will most likely use __AdminRead.
- dataset = “<dataset-name>“ : This is the plugin name which the web-client will request. This value should not be changed.
- module = “<module-name>“ : This is the name of the server-side object class which implements the plugin function. This value should not be changed.
- add_headers = “yes” : This value is “yes”/“no”, does the plugin write its own HTTP headers, or should Jarvis provide headers. This value should not be changed.
- mime_type = “application/json” : What MIME Type HTTP header should Jarvis provide. This value should not be changed.
- debug = “yes” : Should calls to this plugin generated debug-level output to the apache error log (default /var/log/apache/error.log). If debugging is already enabled at the Jarvis application level, this attribute will have no effect. Default = “no”.
- dump = “yes” : Should calls to this plugin generated dump-level output to the apache error log (default /var/log/apache/error.log). If debugging is already enabled at the Jarvis application level, this attribute will have no effect. Default = “no”.
- parameter : One or more parameter elements may define plugin-specific configuration values.
In general, you should The user interface will be compatible with modern browsers including:
- Internet Explorer 8 (or later) You will have to test on each major version that everything looks similar and runs.
- Firefox (any version released in 2012+)
- Chrome (any version released in 2012+)
- Safari (any version released in 2012+)never add or remove plugin elements unless instructed to do so by N-Squared software.
Plugin - GeneratePage
The GeneratePage module is responsible for rendering all top-level HTML pages within the N2C5 product. It supports the following parameters:
<plugin dataset="generate-page" access="**" module="GeneratePage" add_headers="no"
debug="no" dump="no">
<parameter name="template_dir" value="/usr/share/n2c5-dev/template"/>
<parameter name="dictionary" value="/usr/share/n2c5-dev/etc/dictionary.txt"/>
<parameter name="definitions.edr_filter_functions" value="all,call,activity,credit_card"/>
</plugin>
- <parameter name=“template_dir” value=“{template_dir}“/> : This parameter specifies the directory containing the N2C5 page templates. It should not be changed from the default value.
- <parameter name=“dictionary” value=“{dictionary_file}“/> : This parameter points to the site-specific dictionary file. The dictionary file allows the translation of key words and phrases to match local conventions. Refer to the Dictionary documentation.
- <parameter name=“definitions.edr_filter_functions” value=“{comma-separated-list}”/> : This gives the name of the EDR filter functions to be used on-site. The standard filters available are “all”, “call”, “activity”, “credit_card”. Additional site-specific filters may also be available.
Plugin - SubscriberEdrs
The SubscriberEdrs module fetches EDR data from the CCS_BE_CDR in the OCNCC SMF database instance. It pre-processes this data and supplies it to the web-client for rendering on the screen. It supports the following parameters:
<plugin dataset="subscriber-edrs" access="*" module="SubscriberEdrs"
add_headers="yes" mime_type="application/json">
<parameter name="process" value="Default,MyTelco"/>
<parameter name="trim_littles" value="2"/>
<parameter name="cost_format" value="unit"/>
</plugin>
- <parameter name=“process” value=“{module1},{module2},…”/> : This parameter gives the comma-separated list of EDR post-processing modules which should be executed on the EDR list. This will typically include customised site-specific modules. It should not be modified unless indicated by N-Squared.
- <parameter name=“trim_littles” value=“2”/> : Specifies how far we should remove training zeros from fractional cent values.
- <parameter name=“cost_format” value=“unit”/> : Specifies how costs should be formatted. Specify “default” to separate values for each balance type (e.g. General Cash, Promotional Cash). Specify “unit” to group values by each unit (e.g. Cash, SMS, Minutes).
Plugin - RateTableImportXLSX
The RateTableImportXLSX module handles uploading, importing and progress reporting of a xlsx Rate Table. It supports the following parameters:
<plugin dataset="rate-table-import-xlsx" access="__AdminWrite" module="RateTableImportXLSX"
add_headers="yes" mime_type="application/json">
<parameter name="xlsx_dir" value="/var/lib/n2c5-{suffix}/rating/xlsx"/>
<parameter name="log_dir" value="/var/lib/n2c5-{suffix}/rating/log"/>
</plugin>
- <parameter name=“xlsx_dir” value=“/var/lib/n2c5-{suffix}/rating/xlsx”/> : This parameter specifies where the xlsx files will be uploaded to.
- <parameter name=“log_dir” value=“/var/lib/n2c5-{suffix}/rating/log”/> : This parameter specifies where the import progress log files will be saved. The import process will append “rt_import_X.log” to this log_dir parameter where X is the new Rate Table ID.
Note: Uploaded xlsx files and import progress logs will not be removed by n2c5 as they are kept for historical purposes.
Plugin - RateTableExportXLSX
The RateTableExportXLSX module handles exporting a Rate Table to an XLSX.
<plugin dataset="rate-table-export-xlsx" access="__AdminRead" module="RateTableExportXLSX"
add_headers="yes" mime_type="application/xlsx"/>
Plugin - RateTableSchedule
The RateTableSchedule module handles scheduling a Rate Table from the past to be effective again in the future.
<plugin dataset="rate-table-schedule" access="__AdminWrite" module="RateTableSchedule"
add_headers="yes" mime_type="application/json"/>