# Introduction

<figure><img src="/files/KjVRt5CJYtU29dwbedh6" alt=""><figcaption></figcaption></figure>

The MIS ActiveH Customer Portal module (formerly known as TIPS) is a public facing portal that integrates with Keyfax for the purposes of raising Repairs and Enquiries.

Through a secure online account, registered users are now able to report and view repairs, view account statements, view and request changes to personal details, report anti-social behaviour and pay their rent.&#x20;

The portal integrates with the ActiveH Customer Relationship Management (CRM) module, meaning that contact centre staff gain an instant view of requests as they are raised, and are able to respond instantly and more effectively to online repair requests and enquirie

### Launching Keyfax

Keyfax scripting has been integrated into ActiveH Customer Portal by building support into the existing ‘Custom Forms’ functionality.

A new custom form control has been added to Customer Portal Manager’s Form Designer which allows for the creation of a custom form which will redirect to a script hosted on the Omfax server when launched.

Using the existing custom forms process allows the Omfax script to act as a trigger for the creation of a desktop task or the execution of a workflow process when it is submitted in the same way that custom forms do.

<figure><img src="/files/HXqqgmV5TlM4wnz1rjCy" alt=""><figcaption></figcaption></figure>

When an Omfax Script control has been added to a custom form, the addition of further controls (with the exception of a custom Response Message) will be prevented, the message shown below will be displayed if attempting to add additional controls:

<figure><img src="/files/dvzOmCrfkYGRpI2Gpwrz" alt=""><figcaption></figcaption></figure>

The ‘Script Selection’ fields allow the user to specify which script will be launched on the Omfax system.**‘Mode’** will typically be ‘ROL’ (Repairs Online) and is required, the form load will generate an error if Mode is not specified.

**‘Category’ and ‘Topic’** are optional and are used to tell the Omfax system to display a particular sub-category or individual script on startup rather than a generic menu.

<figure><img src="/files/r2QV5c2Sz3Dggi3d6D2H" alt=""><figcaption></figcaption></figure>

A typical value for ‘Category’ might be “Baths, Basins, Sinks” and a typical value for ‘Topic’ would be “Bath”. The ‘Script Options’ section allows the user to specify various options about how the script should be launched.

<figure><img src="/files/cAGGXvdxuJq4Z0aRCqSt" alt=""><figcaption></figcaption></figure>

**‘Run on test system’** is just a flag which tells the Omfax server to run this script in a test environment rather than on the live system, useful for testing new scripts.

**‘Run as’** defaults to ‘Logged in Contact’ but optionally allows the user to specify the contact\_ID of another user and if specified that user ID will be supplied to the Omfax server as the Contact\_ID to use when processing the script.

**‘Store Uploaded Files in’** allows the user to specify where any supporting photo uploaded during execution of the Omfax script will be stored in ActiveH once they have been retrieved by us.

**‘Use Asset’** allows the User to specify a particular Asset ID to be supplied to the Omfax script rather than using the currently selected repairs asset which is the default.

A custom form containing an Omfax script control does not behave in the same way as a standard custom form when launched.

Instead of displaying a rendered form with a ‘Submit’ button the server will use the form settings to construct a request which is sent to the Omfax system and will then redirect the user to the Omfax server to execute the script.

The interaction with the Omfax server uses a web service interface as illustrated below.

<figure><img src="/files/BCPPnBsyTRXGCd9fozob" alt=""><figcaption></figcaption></figure>

These interactions should be invisible to the end user, from their perspective, they will simply follow a link to a custom form on the Tips site and will find themselves redirected to the relevant page in the Omfax site.

When they complete the Omfax script, they are automatically redirected back to the originating custom form on the TIPS site which will process the data returned by the Omfax script and perform the relevant submission actions (Desktop task creation or Workflow execution)

If the user cancels the Omfax script rather than submitting it then they are redirected to the TIPS home page.

In the event that the users session on the ActiveH Customer Portal server times out whilst they are on the Omfax site executing the script, they will be redirected to the Login page when the Omfax script is submitted and after logging in they will automatically be redirected to the custom form and the form submission actions will then execute normally.

### Implementation

Overview of the submission process for a custom form containing an Omfax Script control.

<figure><img src="/files/7JwdoAzlMq3ifI1ligHI" alt=""><figcaption></figcaption></figure>

In order to construct the ‘StartupXML’ which is supplied to Omfax as the first stage of the process above it is necessary to have three pieces of information in addition to those specified in the custom form Omfax Script control:

1. The endpoint URL of the Keyfax Web service
2. “Originating System Name”
3. “Company”

For testing purposes, the following values are used:

* OmfaxWSEndpointUrl
* OmfaxCompanyName
* OmfaxOriginatingSystemName

In order to facilitate this three new rows have been added to Webdata\_Tips\_SYS\_SiteSettings\_T

To store these values.

Typical format of StartupXML:

<figure><img src="/files/wo2krvoBDWNWHobfGUx6" alt=""><figcaption></figcaption></figure>

The ‘ReturnURL’ will always point to Omfaxhandler.ashx which is a generic handler responsible for handling traffic between the Omfax system and the calling custom form after the initial launch.

&#x20;Files modified / created

1. Tips Manager

| File                                                                                      | Notes                                                                           |
| ----------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| <p>Tips\_Shared/AMS.Tips.Core/Controls/Winforms/</p><p>CustomFormOmfaxScript.vb</p>       | New Custom Form Omfax Script Control for Tips Manager                           |
| <p>Tips\_Shared/AMS.Tips.Core/Controls/Winforms/</p><p>CustomFormControlsContainer.vb</p> | Modified with logic to ensure only one Omfax control can be added to a page etc |
| Tips\_Manager/Resources/omfaxlogo.jpg                                                     | Icon for OmfaxScript button                                                     |
| Tips\_Manager/Controls/Forms/WebformEditor                                                | Modified to add support for new OmfaxScript form control                        |
| <p>Tips\_Shared/AMS.ActiveH.Desktop.Library/</p><p>UserTask.vb</p>                        | Modified to take account of new parameter added by Dave Salerman                |

2. ips Website

| File                                                                              | Notes                                                                                                                                                                                  |
| --------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p>Tips\_Website\Tips\_2.0\</p><p>OmfaxHandler.ashx</p>                           | Generic Handler for managing redirects from Omfax server                                                                                                                               |
| <p>Tips\_Shared/AMS.Tips.Core/Core/Omfax</p><p>OmfaxFormSubmission.vb</p>         | CSLA object for persisting Form Submission data during the Omfax scripting process                                                                                                     |
| <p>Tips\_Website/Tips\_2.0/User\_Controls/Forms/</p><p>uiFormOmfaxScript.ascx</p> | OmfaxScript custom form control – responsible for generating StartupXML and initiating request to Omfax                                                                                |
| <p>Tips\_Website/Tips\_2.0/User\_Controls/Forms/</p><p>uiCustomForm.ascx</p>      | Modified to handle new Omfax script control and handle some submission steps differently if dealing with an Omfax script form                                                          |
| <p>Tips\_Website/Tips\_2.0/WebConnector/</p><p>WebConnectorHelper.vb</p>          | Modified to add new security headers required by latest version of WebConnector                                                                                                        |
| <p>Tips\_Website/Tips\_2.0/Generic\_Styles/images/</p><p>Spinner.gif</p>          | ‘Please Wait’ animated gif                                                                                                                                                             |
| <p>Service Reference: KeyfaxWSRef</p><p> </p>                                     | <p>Pointing to:</p><p><a href="http://test.touch-base.com/InterView/WS/KeyfaxWS.asmx"><http://test.touch-base.com/InterView/WS/KeyfaxWS.asmx></a></p><p>(modifies web.config file)</p> |
| Tips\_Website/Tips\_2.0/Global.asax.vb                                            | Modifications to handle redirecting of timed out sessions correctly.                                                                                                                   |
| <p>Tips\_Shared/AMS.Tips.Core/Website/</p><p>WebsiteSettingsList.vb</p>           | Added new settings to support Omfax integration                                                                                                                                        |

3. Database objects

| Object                                                                                                                                                                                                                                            | Notes                                                    |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| <p>Stored Procedures:</p><p>up\_parmins\_Webdata\_Tips\_OmfaxFormSubmission</p><p>up\_parmsel\_Webdata\_Tips\_OmfaxFormSubmission</p><p>up\_parmupd\_Webdata\_Tips\_OmfaxFormSubmission</p><p>up\_parmdel\_Webdata\_Tips\_OmfaxFormSubmission</p> | CRUD procs in support of OmfaxFormSubmission CSLA object |
| <p>New Table:</p><p>Webdata\_TIPS\_OmfaxFormSubmissions\_T</p>                                                                                                                                                                                    | Holds OmfaxFormSubmission data                           |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.keyfax.biz/integrations/host-systems/activeh-portal-tips/introduction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
