Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

 

The generic database plugin allows Noojee Answer to use an external database to map caller details into a url or fragment of javascript, paste data, caller name and display text.

JDBC

The generic database plugin uses JDBC (java's equivalent of ODBC) to access virtually any database.

The plugin needs the following configuration information:

...

To use the URL method use the following stored procedure name:

getData

<crm-plugin>
        <class>au.com.noojee.answerbar.server.plugin.JdbcPlugin</class>
        <params>
        <jdbcUrl>jdbc"JdbcPlugin": {
  "params.jdbcUrl": "jdbc:sqlserver://192.168.0.3;DatabaseName...password=YYYYY</jdbcUrl>
            <driverClass>comhost;DatabaseName=xxxxxxx;user=xxxxxxxx;password=xxxxxxxxx",
  "params.driverClass": "com.microsoft.sqlserver.jdbc.SQLServerDriver</driverClass>
            <query>exec getData SQLServerDriver",
  "params.query": "exec getJAVA ?,?,?,?,?,?,?,?</query>
        </params>
    </crm-plugin>",
  "channelVariables": ["UNIQUEID","UNIQUEID","UNIQUEID","UNIQUEID","UNIQUEID","UNIQUEID"]
}

The getData method can return one or more URL's each of which will be opened in a browser window or tab.

...

To use the javascript method use the following stored procedure name:

For example:

 <crm-plugin>
        <class>au.com.noojee.answerbar.server.plugin.JdbcPlugin</class>
        <params>
        <jdbcUrl>jdbc "JdbcPlugin": {
    "params.jdbcUrl": "jdbc:sqlserver://192.168.0.3;DatabaseName...password=YYYYY</jdbcUrl>
            <driverClass>comhost;DatabaseName=xxxxxxx;user=xxxxxxxx;password=xxxxxxxxx",
    "params.driverClass": "com.microsoft.sqlserver.jdbc.SQLServerDriver</driverClass>
            <query>exec SQLServerDriver",
    "params.query": "exec getJAVA ?,?,?,?,?,?,?,?</query>
        </params>
    </crm-plugin>",
    "channelVariables": ["UNIQUEID","UNIQUEID","UNIQUEID","UNIQUEID","UNIQUEID","UNIQUEID"]
}

Note: the parameter names used in the stored procedure are not actually important. It is the ORDER of the parameters that is CRITICAL!

The following table details each parameter and the order they must be defined in the stored procedures signature.

NameTypeDescription
callerIdNumvarchar(25)The callers phone number stripped of any spaces. The exact format will depend on how your phone system is configured.
extenvarchar(25)The agent's SIP extension that the call is being delivered to.
didNumbervarhcar(25)The direct in dial (DID) that the call came in on.
queueNamevarchar(50)The queue that the call passed through (if any)
V1varchar(50)Asterisk channel variable, if a <channelVariable> tag is defined or an empty string
V2varchar(50)Asterisk channel variable, if a <channelVariable> tag is defined or an empty string
V3varchar(50)Asterisk channel variable, if a <channelVariable> tag is defined or an empty string
V4varchar(50)Asterisk channel variable, if a <channelVariable> tag is defined or an empty string

...


The query must return one or more rows containing the following fields, in this order

FieldTypeDescription
DisplayDatavarcharThe DisplayData is simple text which is displayed to the agent before the call is answered. This can be as simple as the Accout Name or could contain the Account Type, outstanding balance or whatever other data you want to display to the agent.
PasteDatavarcharThe pastedata is used by the CopyToClipboardCopy To Clipboard and will be placed on the agents clipboard if the agents clicks the 'copy' tool.
UrlvarcharA URL to screen pop when the call is answered.
CallerNamevarcharThe callers name which is displayed along with the DisplayData before a call is answered.

The data from the first row will be used by most tools. The url from each row will be used for screen pops, each url will be popped in it's own tab.

...