Mastersoft Harmony v1.3
This package provides capabilities that extend the Avoka Transact platform with integration to the Mastersoft Harmony suite of services for data validation. These include:
- Real-time Australian address search and auto-complete - demo
- >Real-time email address validation - demo
- Real-time Australian phone number validation - demo
For address auto-complete support, this package includes 3 components:
- Mastersoft Short Address Lookup
This component provides address lookup capabilites for short format addresses and includes a short format address field set for manual address entry if required. - Mastersoft Long Address Lookup
This component provides address lookup capabilites for long format addresses and includes a long format address field set for manual address entry if required. - Mastersoft Address Autocomplete
This is a is used in the short and long address lookup components and is a single field address lookup that can be used to populate a custom address block where the short and long formats provided are not suitable.
For email validation support, this package includes the component:
- Mastersoft Email Validation
This component provides email address validation capabilities.
For phone validation support, this package includes the component:
- Mastersoft Phone Validation
This component provides phone validation capabilities.
Process Flow
Below are the sequence diagrams for Mastersoft Harmony. This gives an insight into the design of the Mastersoft Harmony Components.Mastersoft Address Lookup
Mastersoft Email Validation
Mastersoft Phone Validation
Address Formats
Avoka provides 2 address format options:
Short format address (sometimes called standard 5 field address) is a very common address format used in systems of record and consists of the following fields:
- Address Line 1
- Address Line 2
- Locality
- State
- Postal Code
Long format address provides a more explicit breakdown of address components:
- Building Name
- Subdwelling
- Street Number
- Street Name
- Street Type
- Locality
- State
- Postal Code
Where practical we also provide the following addtional fields:
- Country
- Country Code
- Full Address
- Lookup Key
- Postal Flag
This package also supports the ability for you to configure the retrieval additional fields that may be provided by Mastersoft such as DPID, GNAFPID or Barcode (see
- Country
- Country Code
- Full Address
- Lookup Key
- Postal Flag
Address Field Definitions
Field | Description |
---|---|
Address Line 1 (short format only) |
This will be the first of 2 address lines. The contents of this element will depend on the existence of a
building name or subdwelling where a subdwelling could be a unit/flat/shop/suite number or a level/floor number. If any
of these elements exist then this field will contain these sub-location elements in the following order:
[buildingName] [floor/level] [unit/flat/shop/suite]
If none of these sub-location elements exist then this field will contain:
[streetNumber] [streetName] [streetType]
|
Address Line 2 (short format only) |
This will be the second of 2 address lines and will be blank unless addressLine1 contains sub-location elements,
in which case the addressLine2 will contain:
[streetNumber] [streetName] [streetType]
|
Building Name (long format only) |
Occasionally physical addresses include the name of the building they are located within. For example,
performing a lookup for 34/267-277 CASTLEREAGH ST will return a building name of MUSEUM TOWERS .
|
Subdwelling (long format only) |
The subdwelling value will contain floor/level identifiers and/or unit/flat/shop/suite identifiers. |
Street Number (long format only) |
For physical addresses this value will contain the street number of the address which does not include the unit or flat number, but may be represented as a range (e.g. 267-277). For non-physical addresses this field will contain the PO Box, Locked Bag, or similar data. |
Street Name (long format only) |
Where practical, this field will contain the name of the street only, with street type being provided separately (see below). |
Street Type (long format only) |
The street type value may be provided as an expanded value (e.g. ROAD) or abbreviation (e.g. RD), depending on the lookup service response data. |
Locality | The locality information varies from country to country but will usually be either suburb or city. |
State | The State that the address resides in. For some countries (e.g. New Zealand) this may be blank. |
Postal Code | The regional postal code, also referred to as Zip Code (US) and Postcode. |
Country |
The Country that the address is located wihin, in its expanded form (e.g. Australia ).
|
Country Code |
Where practical, the Country code will be provided as represented in the ISO 2 character (e.g. AU )
or 3 character (e.g. AUS ) standards, depending on the data provided by the lookup service.
|
Postal Flag | The postal flag field indicate whether this address is a non-physical address (e.g. PO Box, Locked Bag etc...). Most address lookup providers support the ability to exclude non-physical addresses from lookup searches if required. |
Full Address |
The intention of this field is to provide the full address with the exclusion of Country, as a single one line string.
For example:
MUSEUM TOWERS U 34 267-277 CASTLEREAGH ST SYDNEY NSW 2000
|
Lookup Key | This field represents a unique identifier for the address in the 3rd party system and will be different for each provider. |
Licensing
Clients must ensure they are appropriately licenses in order to use this package. Organisations who wish to use this package are required to establish a commercial relationship with Mastersoft directly. Organisations
Compatibility
This package has the following compatibility requirements:
Module | Compatibility | Notes |
---|---|---|
Transact Manager | 5.0.1 or above | |
Transact Maestro | 5.0.12 or above |
Please note that if your project is on Maestro version 17.10, make sure Maestro version is 17.10.4 or above if you intend to set clearing hidden data on submit at form level.
Installation Instructions
To install this package please walk through the following proceedure:
- Unzip the package to a directory on your computer
- Import each zip archive found in the services folder to Transact Manager under the Services >> All Services menu item.
- Review the Help Doc tab for each of the imported services and make any required adjustments to service parameters.
- Review the Service Connection requirements under the same Help Doc tab for each of the imported services and make any required configurations to the Service Connection. Service Connections can be configured in Transact Manager under the Services >> Service Connections menu item.
- Import each archive found in the libraries folder to Maestro. Importing these into the Organisation level libraries folder is recommended as this will make the components available to all projects, however they can be imported at the Project level if required.
Usage Instructions
To configure the 'Mastersoft Long/Short Address Lookup' component, please walk through the following procedure:
- Open your form in Maestro and drag and drop the component from the Palette.
- Open the properties section of the component block.
- Under 'Options' section, setup the properties described below.
- Set calculation rule for 'Country Code' under the 'Control Fields' if you would like to limit the search result in certain country. Check Mastersoft Harmony - Address Search for detail.
To use the single field 'Mastersoft Address Autocomplete', please walk through the following procedure:
- Open your form in Maestro and drag and drop the field called 'Mastersoft Address Autocomplete' from the Palette.
- Open the properties section of the field.
- Under 'DDS Configuration' section, map the response data fields to your Maestro fields.
To use the email/phone validation, drag and drop the field from Maestro palette.
Release Notes
Version 1.3 Sep 18, 2018
- Added postcode field validation in both long and short address components.
- Added sequence diagrams.
Version 1.2 May 7, 2018
- Made the long and short address components preserved the address information by default.
Version 1.1 Aug 4, 2017
- Added support for language translation
- Verify that the response status is SUCCESS, and log the response content when the service field 'Groovy Debug Logging' is set.
Version 1.0 Feb 7, 2017
- Baseline release.
Maestro Assets
Australian address autocomplete service using the Mastersoft Harmony APIs
Used In
Service Calls
Rule Templates
You may add your own logic to handle the following rule types triggered by this component:
- On Success : a script to run on success of the dynamic data call, the parameter info contains the response
- On List Item Select : a script to run on the click of a result
- On Extra Item Select : a script to run on the click of an extra item
- On Label Button Click : a script to run on the click of an optional button next to label
- On Complete : a script to run when the auto-complete process is successfully completed.
Email address validation using Mastersoft Harmony API
Service Calls
Address lookup component with long format address block
Uses
Properties
Property | Category | Description | Type | Default |
---|---|---|---|---|
Mandatory | Options | Controls the mandatory status of the address capture | boolean |
false
|
Include Postal Addresses | Options | Controls whether the search results should include non-physical addresses such as PO Boxes and Locked Bags etc... | boolean |
true
|
All Capital Letters | Options | Controls whether the address label in the auto-complete field is all capitalised | boolean |
false
|
Maximum Result Size | Options | Controls the maximum number of results to be returned in address searches | integer | |
Show Address Block | Options | Controls whether to always show the address block or not | boolean |
false
|
Show Country Field | Options | Controls whether to present the Country field in the address block | boolean |
false
|
Address lookup component with short format address block
Uses
Properties
Property | Category | Description | Type | Default |
---|---|---|---|---|
Mandatory | Options | Controls the mandatory status of the address capture | boolean |
false
|
All Capital Letters | Options | Controls whether the address label in the auto-complete field is all capitalised | boolean |
false
|
Maximum Result Size | Options | Controls the maximum number of results to be returned in address searches | integer | |
Include Postal Addresses | Options | Controls whether the search results should include non-physical addresses such as PO Boxes and Locked Bags etc... | boolean |
true
|
Show Address Block | Options | Controls whether to always show the address block or not | boolean |
false
|
Show Country Field | Options | Controls whether to present the Country field in the address block | boolean |
false
|
Services
Service Connection
Compatibility
Module | Compatibility |
---|---|
Manager | 5.0 |
Service Parameters
Name | Description | Required | Default |
---|---|---|---|
maxResultSize | Default value for maximum number of matching search results returned from the search function (default 10). This value can be overridden as a request parameter if required. Must be between 1 and 20. | Yes |
10
|
sourceMap | A delimited string detailing the source of truth to use for each of the supported country codes, e.g. AU|AUPAF,NZ|NZPAF | No |
AU|AUPAF,NZ|NZPAF
|
extraResultsMap | A delimited string containing extra result fields to return with the address, e.g. barcode|attributes.Barcode,dpid|attributes.DPID | No |
dpid|attributes.DPID
|
Inputs
Name | Description | Required |
---|---|---|
searchString | The address search string. | No |
countryCode | Optionally specify a country code to limit search scope. Expects ISO standard 2 character codes (e.g. AU, NZ) | No |
maxResultSize | Optionally specify a numeric maximum result list size to override the default: 10. Cannot be less than 1 or greater than 20. | No |
allCaps | Optionally request that results are returned in all capital letters [ true | false ] (default: false ) |
No |
includePostal | Optionally specify whether to include non-physical addresses (PO Boxes, Locked Bags etc) in the results [ true | false ] (default: |
No |
format | Optionally specify the format of the address to be returned [ short | long ] (default: long ) |
No |
Outputs
Name | Description |
---|---|
[] | The results are provided as a JSON array of objects with the following attributes: |
[].label | The value to display in the result list, will be full address (excluding Country) |
[].fullAddress | The full address (excluding country) |
[].lookupKey | The unique identifier for the matched address in the source database. |
[].buildingName [].subdwelling [].streetNumber [].streetName [].streetType |
Where address format long is requested the address will be broken into these sub-elements |
[].addressLine1 [].addressLine2 |
Where address format short is requested the address will be returned with the simple breakdown |
[].locality | The suburb |
[].state | The Australian state, blank for NZ addresses |
[].postalCode | The postcode |
[].country | The country name E.g. Australia |
[].countryCode | The 2 character country code |
Service Connection
Compatibility
Module | Compatibility |
---|---|
Manager | 5.0 |
Inputs
Name | Description | Required |
---|---|---|
emailAddress | The email address. | Yes |
Outputs
Name | Description |
---|---|
validationStatus | The status of the validation call, will be [VALID|INVALID|UNKNOWN]. UNKNOWN status is when the format, domain and server are valid, but mail box validation returned false. Clients should check that the validationStatus is not INVALID as an UNKNOWN result is not definitive. If validationStatus = INVALID a generic errorMessage will be provided and executionStatus will be set to DATA_ERROR |
mailBoxValidated | True if the mailbox for the email address has been found to exist, false otherwise. |
domainValidated | True if the domain of the email address has a valid MX record, false otherwise. |
mailServerValidated | True if the server of the email address is valid, false otherwise. |
formatValidated | True if the format of the email address is correct, false otherwise. |
blackListValidated | True if the email address doesn't appear on the email black list, false otherwise. a generic errorMessage will be provided and executionStatus will be set to DATA_ERROR |
executionStatus | The status of the service execution [ SUCCESS | DATA_ERROR | SYSTEM_ERROR ]. Successful execution will be denoted by a SUCCESS value. DATA_ERROR will indicate that there was an issue identified with the input data that may be resolved and potentially retried by the user. SYSTEM_ERROR indicates that there was an unrecoverable system fault and the form should fall-back gracefully to an alternative path. |
errorMessage | When a DATA_ERROR is experienced, this value may provide more detail on the nature of the error. |
Service Connection
Compatibility
Module | Compatibility |
---|---|
Manager | 5.0 |
Inputs
Name | Description | Required |
---|---|---|
phone | The phone number. | Yes |
countryCode | Optionally specify a country code to limit search scope. Expects ISO standard 2 character codes (e.g. AU, NZ) | No |
Outputs
Name | Description |
---|---|
validationStatus | The status of the validation call, will be [VALID|INVALID|UNKNOWN]. Clients should check that the validationStatus is not INVALID as an UNKNOWN result is not definitive. If validationStatus = INVALID a generic errorMessage will be provided and executionStatus will be set to DATA_ERROR |
phoneStatus | The current status of the mobile phone with the supplied number (e.g. 'Active'). |
operatorName | The mobile operator associated with the supplied number (e.g. 'Telstra') |
executionStatus | The status of the service execution [ SUCCESS | DATA_ERROR | SYSTEM_ERROR ]. Successful execution will be denoted by a SUCCESS value. DATA_ERROR will indicate that there was an issue identified with the input data that may be resolved and potentially retried by the user. SYSTEM_ERROR indicates that there was an unrecoverable system fault and the form should fall-back gracefully to an alternative path. |
errorMessage | When a DATA_ERROR is experienced, this value may provide more detail on the nature of the error. |
Service Connections
The following service connections are used by this package.
Property Name | Description | Required |
---|---|---|
Type | HTTP Endpoint | Yes |
Endpoint |
Must point to the Mastersoft Harmony endpoint. For example https://hosted.mastersoftgroup.com/harmony/rest/au/
|
Yes |
Username | Username The username to access Mastersoft Harmony API. | Yes |
Password | Password The password to access Mastersoft Harmony API. | Yes |