MVR to VR Integration

Overview

MVR is an external facing web form application that vessel clients interact with to submit online payments. The information submitted is mailed to the Vessel Registry Admins, who then take that information and enter it into the Vessel Registry System.

As part of the form data, clients are also able to add supporting documents (PDF Only) as attachments. Attachments have a limitation of 10 MB (a limit set by Outlook) which is where the issue is as indicated by the team supporting the MVR application.

Current Process

  1. Clients enter the required information and attach the supporting documents.

  2. The MVR web application validates the input and composes an email to be sent to the Vessel Registry Admins. If the attachments size exceeds 10 MB, the application will reject request, which is where the users then go ahead and create another request to attach the additional documents which causes the admin in step 3 to issue a refund because of the extra request created.

  3. The admin then takes that information and creates a new Work Item in the Vessel Registry System.

  4. As indicated in step 2, if the client faces an issue when trying to attach the supporting documents and creates a new request, the admin then nullifies this request and issues a refund for that additional request.

New process

The new process integrates the external facing application (MVR) with the Vessel Registry System, which acts as a proxy/façade to the backend services. The new process is as follows:

  1. Clients enter the required information and attaches the supporting documents.

  2. MVR validates the form data and submits the request along with the attachments to the Vessel Registry System, which in turn will validate the request data and save the attachments through the document management service, and then creates a new work item.

  3. The Vessel Registry System then notifies the vessel registry admin or the registrar about the creation of a new work item through an in-app notification.

  4. [Optional] - The Vessel Registry System interacts with GC Notify to send a notification to the Client.

  5. Client receives a confirmation with the request id for reference.

High level service interaction

Interactions between the services, and updates such as email sent confirmation will be logged to the QMPS and App Insight.

Vessel Registry cloud environments

The vessel registry cloud environment is split into 4 environments, split into two resources groups:

  • Non-Production - NPRD

    • NCD - Development

    • NCT - Testing

    • NCA - Acceptance

  • Production - PROD

    • PCP - Production

Changes should propagate through NPROD environments first, prior to production.

Interaction route 1 - Vessel Registry Gateway

 

  1. On page load the MVR application will get the vessel registry list of values. i.e., Request types, Submission method, etc.…

  2. Once the client completes entering the required information and attaches the supporting documentation, the MVR application will then forward the request to the Vessel Registry Gateway passing along the subscription key. The Vessel Registry Gateway will IP whitelist the APIM and access to it should only be through the APIM which will validate the subscription key.

  3. VRG will save the attachments through the Document Management Service

  4. After the attachments are saved, a new work item(s) will be created, and document id(s) will be linked to the newly created work item(s)

  5. A notification will be sent to the Vessel Registry Management along with the request ID

  6. [Optional] VRG will publish a command through the Azure Service Bus to the JNS to send an email notification to the client containing a confirmation of work item creation and service request id

Interaction route 2 - Vessel Registry Gateway and Document Management Service (Recommended approach)

Similar to interaction route 1, the only difference here, is the interaction with the Document Management Service. Instead of having the Vessel Registry Gateway proxy the file uploads, the MVR application will directly upload the files to the DMS, and then provide the document ids to the VRG when completing the online order submission.

Cloud Service Endpoints

Application

Endpoint

Application

Endpoint

Vessel Registry Gateway (Production)

APIM:

https://tc-api-management-prod.azure-api.net/vrg

Swagger / OpenAPI Spec (This will be moved over to the developer portal):

Swagger UI (pcperegistryapp-vessel-registry-gateway.azurewebsites.net)

Document Management Service

APIM:

https://tc-api-management-prod.azure-api.net/dms

Swagger / OpenAPI Spec:

Swagger UI (pcpsafsecsurapp-document-management-service.azurewebsites.net)

List of Value Service (Production)

APIM:

https://tc-api-management-prod.azure-api.net/lov

Production Swagger Page:

Swagger UI (pcpsafsecsurapp-lov-service.azurewebsites.net)

Vessel Registry Request Type, i.e. First Registry, etc.…:

https://ncdsafsecsurapp-lov-service.azurewebsites.net/api/v2/ListOfValues?ListOfValueType=VesselRegistryRequestType&ShowOnlyActivated=true

Vessel Registry Type (initially this will be for Small Vessel):

https://ncdsafsecsurapp-lov-service.azurewebsites.net/api/v2/ListOfValues?ListOfValueType=VesselRegistryType&ShowOnlyActivated=true

Submission method:

https://ncdsafsecsurapp-lov-service.azurewebsites.net/api/v2/ListOfValues?ListOfValueType=VesselRegistrySubmissionMethod&ShowOnlyActivated=true

Communication method:

https://ncdsafsecsurapp-lov-service.azurewebsites.net/api/v2/ListOfValues?ListOfValueType=VesselRegistryCommunicationMethod&ShowOnlyActivated=true

Payment method:

https://ncdsafsecsurapp-lov-service.azurewebsites.net/api/v2/ListOfValues?ListOfValueType=PaymentMethods&ShowOnlyActivated=true

Contact language:

https://ncdsafsecsurapp-lov-service.azurewebsites.net/api/v2/ListOfValues?ListOfValueType=VesselRegistryCommunicationLanguage&ShowOnlyActivated=true