VeloCITY365 Logo

Technical Administrator User Guide

Version 2.0

October 2018

KPMG

KPMG LLP (“KPMG”), an Audit, Tax and Advisory firm (kpmg.ca) and a Canadian limited liability partnership established under the laws of Ontario, is the Canadian member firm affiliated with KPMG International Cooperative (“KPMG International”).

KPMG member firms around the world have more than 200,000 professionals, in 154 countries and territories.

The independent member firms of the KPMG network are affiliated with KPMG International, a Swiss entity. Each KPMG firm is a legally distinct and separate entity, and describes itself as such.

Informational Purposes

The information contained herein is of a general nature pertaining to the specific product or products described herein and is not intended to address the circumstances of any particular individual or entity. Such information is provided for general informational purposes only, and KPMG neither warrants nor represents that the information contained herein is accurate, complete or appropriate for any specific purpose. Although we endeavor to provide accurate and timely information, there can be no guarantee that such information is accurate as of the date it is received or that it will continue to be accurate in the future. No one should act on such information without appropriate professional advice after a thorough examination of the particular situation.

Copyright

Laws in Canada and other countries preserve for KPMG and its applicable affiliates, subsidiaries, related parties and licensors exclusive rights for copyrighted computer programs, including the exclusive right to copy or reproduce in any form the copyrighted computer program. Accordingly, this documentation, and any copyrighted KPMG computer programs contained in the KPMG products described in this documentation, including without limitation VeloCITY 365 (collectively, the “KPMG Programs” and, collectively with the documentation, the “KPMG Material”) may not be copied or reproduced in any manner without the prior express written permission of KPMG.

Restrictions

The KPMG Material is the property of KPMG. It is furnished under a license, services and/or engagement agreement with you and may be used and/or disclosed only in accordance with the terms of such agreement(s). The KPMG Material consists of copyrighted materials. Making unauthorized copies is prohibited by law. No part of the KPMG Material may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language or computer language, in any form or by any means, without the prior written permission of KPMG.

Accuracy

While reasonable efforts have been made to assure the accuracy of this documentation, KPMG assumes no liability resulting from any inaccuracies or omissions in this documentation, or from the use of any information obtained herein. KPMG reserves the right to make changes to the KPMG Material or any part thereof to improve reliability, function, or design, and reserves the right to revise this documentation and to make changes from time to time in content hereof with no obligation to notify any person of revisions or changes. KPMG does not assume any liability arising out of the application or use of any product described herein; neither does it convey license under its patent rights of others.

Trademarks

The KPMG name and logo are registered trademarks or trademarks of KPMG International Cooperative (“KPMG International”), and are used under license by KPMG. Microsoft, Windows, Microsoft Dynamics 365 are registered trademarks of their respective owners. All other product or service names are the property of their respective owners. Nothing herein or in the KPMG Material grants to you any rights in or to any trademark whatsoever, whether owned by KPMG International or any third party.

Introduction to VeloCITY 365

VeloCITY 365 by KPMG Adoxio provides automated workflows that enable municipalities to manage citizen inquiries and service requests in the cloud. Velocity is built on the Microsoft Dynamics 365 platform, and provides a Citizen Engagement Portal that citizens can access to search and find information on municipal programs and services. Call center agents can efficiently document citizen inquiries, identify duplicate requests, and route service requests to the appropriate department for action and follow-up, while tracking the progress of the request through to completion.

VeloCITY 365 Configuration

Deployment, Promotions and Hot Fixes

The process for deploying, promoting and applying hot fixes to VeloCITY 365 follows a well-documented path from Development to Production. It is expected this methodology will be followed with separate environments for each phase of the development cycle. All new work or changes are made within the Development Environment. The changes are promoted to the Test Environment for testing and approval/rejection. Once these changes have been approved they are promoted to the Production Environment. This path not only ensures the changes to the product are successfully applied, it also ensures the deployment/promotion process is complete and produces the desired results.

 

When planning for an upgrade, promotion or hotfix there are 2 categories of information that needs to be considered, namely customizations and data.

  • Customizations are changes that have been made to the Dynamics 365 platform, i.e., entities, option sets, dashboards.
  • Data are business records, i.e., contacts, cases, information that drives the portal (Content Snippets, Web Links etc.)

 

Safe

Use Caution

Avoid

Changes to content are considered safe. Examples include:

Content to the Deflection content on an Interaction Type

Content within names, titles, text or summaries on Web Pages

Content within titles, descriptions or URLs of Web Links

Values on Content Snippets

Values on Site Settings

Changes to the Production environment that involve the creation of new application data as all actions are immediate, are visible to a large audience and having incorrect or incomplete data can have disastrous consequences.

Removing any application data as recovery is time consuming and not always possible.

When agreeing to a Hot Fix, consideration must be given to how the change will be merged back into the Development environment. For large and/or complex changes, the recommended methodology is to use Microsoft’s Configuration Migration Tool. The conditions that need to be considered include:

  • New records must be copied back to the Development environment using an ID- matching data copy tool
  • Content changes can be copied back to the Development environment using copy-paste or ID-matching data copy tool
  • Schema (customizations) changes should be copied back to the Development environment using a transport solution
  • Customizations should be copied back to the Development environment using a transport solution or by manual reproduction (Not recommended, but possible)
  • A subsequent deployment is needed from the Development environment to the Test/UAT environment

Interaction Type (SR) Administration

Interaction Type records hold all the configuration and metadata needed for the creation of a Service Request Intake form. Setting up an Interaction Type enables the creation of a unique service request form for each type by selecting the appropriate checkboxes and option values.

The creation of Interaction Types has been simplified through an Interaction Type Wizard. The wizard removes complexity while enforcing consistent design patterns, and enabling the quick setup of:

  • Entities, fields, forms, views, sitemap
  • Portal integration
  • ArcGIS integration
  • Routing
  • Duplicate detection

Creating Interaction Types

To create an Interaction Type:

  • Navigate to VeloCITY 365 > Settings > Interaction Types. The Interaction Type list displays.
  • Click New. The New Interaction Type form displays. Complete the form as required.
  • Click Save.

TIP: The wizard has automated many of the manual steps but you will need to wait while it completes the setup. The setup progress can be monitored under the Automation Status column; however, the statuses will appear very briefly. The estimated total time to complete an Interaction Type varies from 5-10 minutes depending upon the usage of the current system and the chosen configuration (Interaction Type settings)

Field Name

Description

Display Name

The name of the Interaction Type as it will display on the portal

Plural Name

The plural form of the Interaction Type as it will display on the CRM Lists, Views and Related Names.

Parent Interaction Type

The Interaction Type under which this type will display on the portal. If this is the top most Interaction Type, leave this field blank. If this is a secondary Interaction Type, select the Interaction Type one above.

Add to CRM Solution

Creates the Entity within the selected solution for Parent Interaction Types.

TIP: All Interaction Types must be added to a CRM solution. If adding a child interaction, it is added to the parental entity using the Parent Interaction Type field.

Schema Name

This is a non-editable, locked field that is populated based on the Entity name.

Entity Schema Name

This is a non-editable, locked field that is populated based on the Entity name and is updated to the Parent Interaction schema if a Parent Interaction Type is selected.

Portal Settings

 

Show on Portal

Determines if this service request type is visible in the portal.

Cases are Public

Determines if case types appear in citizen search results.

Enable for Intake

Determines if this type of request can be submitted via the portal.

TIP: Must be enabled if sub-types are associated as the value is inherited by the sub-types.

Hide Custom Fields

Determines if the custom fields will be seen on the Portal. If selected, all custom fields will be seen within CRM but not on the Portal.

Portal Icon Type
Displays when Show on Portal is enabled

Determines if the type of icon used on the portal will be CSS Class Icon or an Image URL icon.

Portal Icon Value
Displays when a value is selected with the Portal Icon Type field.

Determines the icon seen when a value is entered into the Portal Icon Type field. If Image URL is selected, the URL for that image must be entered. If CSS class is selected, the value for the class must be entered.

Enable Deflection Page
Displays when Show on Portal is enabled

Determines if a deflection page will display.

TIP: A deflection page helps to determine if the Service Request is needed. The submission of the request may be prevented if the citizen is diverted to an alternate path. Refer to the Deflection Options

Show Subtype Widget
Displays when Enable Deflection Page is enabled

Determines if the child related service requests display on the portal’s initial service request page.

Related service types are identified through tags.

Show Related Interaction Types Widget
Displays when Enable Deflection Page is enabled

Determines if the related service requests display on the portal’s initial service request page. Related service types are identified through tags.

Show Related Alerts Widget
Displays when Enable Deflection Page is enabled

Determines if the related alerts display on the portal’s initial service request page. Related alerts are identified through tags.

Show Related Cases Widget
Displays when Enable Deflection Page is enabled

Determines if the potentially related service requests display on the portal’s initial service request page.

Show Related KB Articles Widget
Displays when Enable Deflection Page is enabled

Determines if the potentially applicable knowledgebase articles display on the portal’s initial service request page.

Show SLA Widget
Displays when Enable Deflection Page is enabled

Determines if the expected response and resolution times display on the portal’s initial service request page.

 

TIP: Refer to the Response By and Resolution By fields below. If no values are entered into the fields, the widget will display but will display “Not Set”.

Button Text
Displays when Show on Portal is enabled

Determines the label on the button on the Service Request Deflection page. The default text is Create ‘Interaction Display Name.’

Contact Details

 

Enable Contact

Determines if the contact information may be requested for the Service Request. When selected, the Allow Anonymous Portal Submission becomes selected and locked.

Default Customer

Determines the default contact if citizens are permitted to submit anonymous requests.

TIP: Every request must have an associated contact. As a result, a contact must be created to whom all the anonymous submissions are associated. For example, Default Anonymous

Allow Anonymous Portal Submission

Determines if requests may be submitted anonymously.

TIP: Every request must have an associated contact. As a result, all the anonymous submissions will be associated with the value entered into the Default Customer field.

Require Contact Details on Portal

Determines if the citizen must be either authenticated or provide contact details to request this Interaction Type.

Location Details

 

Enable Location

Determines if location information will be requested for the Service Request. This is selected by default.

Location Required

Determines if location information will be required for the Service Request.

Enable Duplicate Detection (CRM)

Determines if duplicate service requests will be identified. This is selected by default.

Duplicate Detection Units

Determines if the duplicate detection range will be measured in miles or kilometers.

Duplicate Detection Range

Determines the range of the duplicate detection.

TIP: The values must be entered as decimal with 2 decimal places and the smallest possible value = 0.01. The equivalent of 10 metres or 52.8 feet

Max Results to Show in Portal

Determines the maximum number of duplicate records to display within the portal.

CRM Map Settings

Determines the map that will display within CRM for this service request type. The map lookup is populated from ESRI Settings within Connect 365

Portal Map Settings

Determines the map that will display within the portal when the citizen is reporting this service request type. The map lookup is populated from ESRI Settings within Connect 365

Map Overlay / Colour Type

Determines the type of map overlay that will be used on the portal map.

Map Overlay / Colour Value

Determines the map overlay colour that will be used on the portal map.

Routing and SLAs

 

Owning Team

Determines to which team the service request will be routed.

TIP: For more information on routing, refer to page 22. The teams are created within Dynamics 365 > Settings > Security > Teams

Queue

Determines the Queue to which the request will be added.

Response By

Determines the expected time for a response to the service request.

Resolution By

Determines the expected time for a resolution to the service request.

Custom Fields

Determines if an interaction-specific field will display on the portal’s Issue Details page when requesting a Service Request.

Related Items & Tags

Determines if an additional tag will be associated with this type of Service Request.

Child Interaction Types

Open the New Interaction Type form and automatically associates the new interaction as a child of the current record.

Rollup Mappings

Displays on the Interaction Type record after it has been created. The Interaction Type wizard creates the mappings automatically. Changing any of these mappings is NOT RECOMMENDED.

Editing Interaction Types

Interaction Types are completely editable and if using a self-service portal, the changes are seen as soon as CRM has completed its updates.

To edit an Interaction Type:

 

  • Navigate to VeloCITY 365 > Interaction Types.
  • The Interaction Type grid displays.
  • Select the required Interaction Type.
  • The Interaction Form displays.
  • Update the required fields.
  • Click Save.

The fields added during the creation of an Interaction Type are outlined below.

Managing CRM Entity Detail

The following fields are added during the creation of the Interaction Type.

CRM Entity Detail

Description

Business Process

Determines the business process flow for the interaction type. The ABS – Case – Default Business Process is associated by default. Refer to the Business Processes section within this document for more information on creating alternate process flows.

Agent Details Form

The default but Interaction Type-specific details form created by the system.

Quick View Form

The default but Interaction Type-specific View created by the system.

Manager Form

The default but Interaction Type-specific manager form created by the system.

Regenerate CRM Forms

Enables the regeneration of the CRM form when changes have been made.

Regenerate Portal Forms

Enables the regeneration of the Portal form when changes have been made.

Managing Custom Fields

The Custom Fields sub-grid is added during the creation of the Interaction Type. The sub-grid enables the addition of custom fields during the reporting of a service request. The custom fields display on the portal’s Issue Details page

 

To add a custom field:

 

  • Navigate to the Custom Field sub-grid and click the +.
  • The sub-grid lookup displays.
  • Click New.
  • The New Interaction Type Custom Field form displays.
  • Enter the name of the custom field in the Display Name field.
  • The Parent Interaction Type field defaults to the current Interaction Type.
  • The association can be edited.
  • The Schema Name is a locked field and will be created based on the value within the Display Name.
  • Select the required type of field from the Type option set.
  • Additional fields display based on the option set selection.
  • Multiple Lines of Text – No additional input required.
  • String – No additional input required.
  • Boolean – No additional input required.
  • Int– No additional input required.
  • Decimal– No additional input required.
  • Date/Time – No additional input required.
  • Date – No additional input required.
  • Option Set – fields display for the addition of option set values. Be sure to save the option set values (the save icon on top of the option set field) before closing the form.
  • Global Option Set – Global Option Set Lookup displays. Select the required value.
  • Click Save. The Interaction Detail form displays.
  • Click Save and Close

Managing Related Items & Tags

The Related Tags and Child Interaction Types sub-grids are added during the creation of the Interaction Type. The sub-grids enable the association of related knowledge base articles and service requests as well as other child Interaction Types during the reporting of a service request. The custom fields display on the portal’s Issue Details page

To add a Related Item:

  • Navigate to the Related Item sub-grid and click the +.
  • The sub-grid lookup displays.
  • Click New.
  • The New Tag form displays.
  • Enter the name of the tag.
  • Enter a tag description.
  • Identify a parent Tag, if applicable.
  • Click Save.
  • The Child Tags and Associations sub-grids enable.
  • Select the appropriate Child Tags, Knowledge Articles, Alerts and Interaction Types.
  • Click Save.

Managing Rollup Mapping

The Rollup Mappings are added during the creation of the Interaction Type. While some of the fields are not locked, it is NOT recommended that any of the fields be edited.

Managing Multi-Lingual

The Multi-Lingual fields are added during the creation of the Interaction Type. There is only one field that requires configuration: Enable Multilingual. Selecting this checkboxes creates the base content snipped that is required to implement the multi-lingual functionality. Once these are created, the content snippets should be updated in the interaction wizard with the associated names (title, deflection page text & create button text) based on their business needs. [CS4][DJ5]

Creating Tags

Creating tags is very important within VeloCITY 365 as tags impact the display of Interaction Types, Alerts, Knowledge Base Articles, and Search results.

When you create a tag a matching Content Snippet will also be created. The Content Snippet will contain auto-generated sample content in the Value field. The content must be overwritten.
If Content Snippet is accidentally deleted it can be easily re-created by matching the original name.

TIP: A tag must be active before it can be edited.

To create a Tag:

  • Navigate to Velocity 365 > Tags
  • Click New.
  • The New Tag form displays.
  • Enter the Tag Name.
  • This name will display within both VeloCITY 365 and any associated portals.
  • If this is a child tag, select the Parent Tag name.
  • Complete the additional sections, as required.
  • Click Save & Close.

Section Name

Description

Child Tags

Add any tag records that should be associated under the current tag. Once added, the tag displays in the sub-grid.

Associations

 

 

Knowledge Articles

Add any Knowledge articles that should be associated with the current tag. Once added, the article name displays in the sub-grid. Parent tags are able to see all child associations but child tags cannot see other parent or child associations.

 

Alerts

Add any Alerts that should be associated with the current tag. Once added, the alert name displays in the sub-grid. Parent tags are able to see all child associations but child tags cannot see other parent or child associations.

 

Interaction Types

Add any Interaction Types that should be associated with the current tag. Once added, the Interaction Type name displays in the sub-grid. Parent tags are able to see all child associations but child tags cannot see other parent or child associations.

Understanding Interaction Type Settings

Widgets

VeloCITY 365 has created five (5) of the most requested optional functionality items as widgets. The widgets can be added to an Interaction Type by simply selecting the appropriate checkbox. The five default widgets that can be added to any Interaction Type are as follows:

Name

Description

Show Subtype Widget

Determines if the child related service requests display on the portal’s initial service request page.

Related service types are identified through tags.

Show Related Interaction Types Widget

Determines if the related service requests display on the portal’s initial service request page.

Related service types are identified through tags.

Show Related Alerts Widget

Determines if the related alerts display on the portal’s initial service request page.

Related alerts are identified through tags.

Show Related Cases Widget

Determines if the potentially related service requests display on the portal’s initial service request page.

Show Related KB Articles Widget

Determines if the potentially applicable knowledgebase articles display on the portal’s initial service request page.

Show SLA Widget

Determines if the expected response and resolution times display on the portal’s initial service request page.

TIP: Refer to the Response By and Resolution By fields below. If no values are entered into the fields, the widget will display but will display “Not Set”.

The Default Widgets share metadata across Interaction Types and this distributes the metadata to the parent/child type family.

Business Processes

VeloCITY uses the business process flows included with Dynamics 365. Business processes are unique to each city and situation, and as a result need to be implemented to suit each situation and attached to the appropriate interaction type. Information on creating business process flows can be found by searching “business process flows overview” on the Microsoft documentation site or click here.

Managing Forms

Forms are included within VeloCITY365 but new custom forms or custom fields can be created on the existing forms.

Information on creating new forms can be found by searching “Create a quick view form” on the Microsoft documentation site or click here. Be sure to link the new form to an Interaction Types.

Information on editing the existing forms can be found by searching “Work with the form editor” on the Microsoft documentation site or click here. Be sure to link the new form to an Interaction Types.

 

Setting up Notifications and Email

Notifications and Emails are based on Dynamics 365 workflows and the VeloCITY 365 Mailer queue. Workflows can be configured to your needs, i.e., service request submissions, service request status changes or service request merges.

Managing Notification Workflows

Velocity365 includes notification workflows that have been configured to respond to system activity and automatically send notifications to either internal recipients, i.e., System Administrators or Velocity365 Administrators or external recipients, i.e., citizens. The included workflows are

Workflow

Audience

Description

Velocity 365 - Send Status Change Update Email to SR Subscribers

External

Sends personalized notification to each subscriber when status is changed on a case.

ABS - Case - Merge All Potential Duplicates

External

Sends notification to customer of duplicate cases being merged (using “Velocity Case Merged Template”).

ABS - Case - Merge Into Identified Parent

External

Sends notification to customer of duplicate cases being merged (using “Velocity Case Merged Template”).

ABS - Case - Notify Customer When Case is Canceled

External

Sends personalized notification to customer when case is cancelled.

ABS - Case - Clone Service Request

Internal

Sends generalized notification to internal team when case is changed from one Interaction Type to another.

The Velocity365 workflows can be configured to suit needs your needs and new workflows can be added.

All included notifications are sent from the Velocity 365 Mailer queue: Settings > Email Configuration > Mailboxes > Active Queue Mailboxes View

 

More information on the configuration of workflows can be found by going to Dynamics 365 Documentation information site or click here

Setting up Email

Velocity 365’s included workflows include dynamically-created emails specific to the triggering system activity. The included emails are within the table below:

Name

Audience

Description

Velocity 365 - Send Status Change Update Email to SR Subscribers

External

Sends personalized notification to each subscriber when status is changed on a case.

ABS - Case - Merge All Potential Duplicates

External

Sends notification to customer of duplicate cases being merged (using “Velocity Case Merged Template”).

ABS - Case - Merge Into Identified Parent

External

Sends notification to customer of duplicate cases being merged (using “Velocity Case Merged Template”).

ABS - Case - Notify Customer When Case is Canceled

External

Sends personalized notification to customer when case is cancelled.

ABS - Case - Clone Service Request

Internal

Sends generalized notification to internal team when case is changed from one Interaction Type to another.

The emails are all generated using the out of the box workflows and sent from the Velocity 365 Mailer queue. The queue can be mapped to any email address, but if mapped to Exchange Online, the email address for the Mailer must belong to a licensed Office 365 user or to a shared mailbox. A typical email address for sending email is no-rely@mycity.com.

If a different sender is preferred for a specific email, each of the workflows can be modified as required.

When deployed the default sender is Velocity 365 Mailer.

More information can be found by going to Dynamics 365 Documentation information site:

  • For information on email templates, click here
  • For information on connecting Dynamics 365 (online) to Exchange Online, click here
  • For information on connecting Dynamics 365 (online) to Exchange Server (on-premises), click here

 

Changing the default sender (mailer queue)

To change the default sender:

  • Navigate to Settings > Processes.
  • The All Processes view of the Process form displays.
  • Navigate to the required process.
  • The process detail form displays.
  • Click the Set Properties button to the right of the field to be updated, i.e., Send English Email.
  • The email template displays
  • If the Set Properties button is not displayed, deactivate the process.
  • Update the Sender within the From field’s lookup.
  • Click Save and Close.
  • Click Activate, if required.
  • The Process Activate dialog displays, confirm the activation.

 

 

Setting up Routing and SLAs

Routing is planning which person or team will own the resolution of a specific Interaction Type and the amount of time within which a response and resolution is expected, i.e., if a service request is submitted of a pothole, it is routed to the Road Maintenance team and a response is expected within 3 days with a resolution within 2 weeks.

For more information on assigning a team and SLAs to an Interaction Type, refer to the Routing and SLAs section of Creating Interaction Types.

Routing

When planning the assignment of an Interaction Type, it is important to understand the concept of teams. While the creation of a team allows for the sharing of information and security roles, there are some constraints that should be considered when planning your Teams as these constraints impact the ability promote Interaction Types from one environment to another:

  • Business Units, Teams and Queues cannot be copied to or synchronized between environments without either special tools, data manipulation, or cloning environments
  • Business Units each have a system-generated default Team with system limitations:
    • Cannot set your own Team as default
    • Cannot delete default Team
    • Cannot import a Team as default
  • Teams each have a system-generated default Queue with system limitations
    • Can set your own Queue as default
    • Can delete default Queue

 

Setting up the Teams:

  • Navigate to Settings > Security > Teams.
  • The All Teams view of the Teams form displays.
  • Click New.
  • The New Team form displays.
  • Enter the Team Name and Administrator.
  • Click Save.
  • The Team Members sub-grid enables.
  • Click the + to add members.
  • Click Save.

Managing SLAs

Default Service Level Agreement values are provided within VeloCITY365. The values can be modified as required by modifying the xml code. An example of the xml is,

Modifying SLA values:

  • Navigate to Settings > Customize the System.
  • The Default Solution form displays.
  • Navigate to Web Resources > abs_/Interaction/xml/ResponseAndResolutionBy.xml.
  • The detail form displays.
  • Click Text Editor.
  • The Edit Content form displays.
  • Modify as required and click OK.
  • The Edit Content form closes.
  • Click Save and close the detail form.

Managing Work Order Administration and Automation

VeloCITY uses the workflows included with Dynamics 365 and are a powerful tool that allows for simple, or complex automation of tasks such as work order automation. The work order workflows are unique to each city and situation, and as a result need to be implemented to suit each situation and attached to the appropriate interaction type.

Workflow

Description

ABS - Case - Cancel active work orders on merge

If associate Case is merged into another Case, associated Work Orders are closed.

ABS - Case - Verify Work Orders are completed

Case cannot be closed if any associated Work Order is open.

Information on creating workflows can be found by searching “Use Workflow processes to automate processes that don't require user interaction” on the Microsoft documentation site or click here.

 

Managing Translations

Providing VeloCITY 365 in the appropriate language for your area is important. Velocity 365 is multi-lingual for both VeloCITY and Portal users. Alerts matching the user’s preferred language are displayed in the Agent Console. Interaction (SR) Types support translations that are common to any custom entity in VeloCITY.

 

Type

CE Users

Portal Users

Alerts

Content Snippets

 

CE Customizations

Knowledge (KB) Articles

Interaction (SR) Types

Tags

 

Web Links

 

Web Pages

 

CRM Label Translations

There are 3 stages to providing VeloCITY 365 in the appropriate language. There are some duplicate detection and workflow logic to note when translating labels:

  • Within calculated fields, VeloCITY 365 uses only the base language.
  • Within field labels, the user's preferred language (user interface language) is used if available. If not available, the base language is used.
  • Duplicate detection considerations
    • Duplicates are detected from the fields that are in the base language. While it is possible to localize the language for those fields, duplicates will not be detected if the fields are created of updated outside of the base language.
      This is also true if importing data; only the fields with labels in the base language are used for duplication detection.
    • When import is executed in non-base language, the import fails because update can't be performed in a non-base language.

Provisioning the language pack

It is important to provision the language packs first. If you import translated values for languages that haven’t been provisioned, they'll be discarded. The language settings are found within System > Settings > Administration > Languages.

Note: Language settings may take some time to complete.

 

Enabling Supported Languages

Once a language pack has been provisioned, it must be associated with the portal or it will not display as a language option.

To associate a language:

  • Navigate to Portals > Websites
  • Open the appropriate portal and navigate to the Supported Languages sub-grid.
  • Click the Add Website Language Record button.
  • The New Website Language form displays.
  • Complete all the required fields and click Save & Close.
  • The language displays in the Supported Languages sub-grid and is available for selection when creating a content snippet.
Creating Alerts in Multiple Languages

To create Alerts in multiple languages, an alert must be created in each language (one record per language).

  • Navigate to Settings > Alerts
  • Click New. The New Alert form Displays.
  • Enter the Alert name and enter the language code.

The language code can be found on the Language Settings Dialogue window Dynamics 365 > Settings > Administration > Languages.

Creating Content Snippets in Multiple Languages

To create Content Snippets in multiple languages, an alert must be created in each language (one record per language).

  • Navigate to Portals > Content Snippets
  • Click New. The New Content Snippet form Displays.
  • Enter the required information as well as select the Content Snippet language.
  • Click Save & Close

For more information on multi-lingual content snippets, refer to Enabling Supported Languages

Stub Records[CS1][SP2][CS3]

These records are created then need to be updated to reflect the proper translation text

Creating Web Links in Multiple Languages

Web Links are the page navigation links that display within the portal’s primary and secondary navigation as well as within the footer. A new record is created for each of these web link types for each language enabled on the portal, that is, for the primary navigation record type, 3 different primary navigation records will be created if you have enabled English, French and Spanish.

The translation of the actual web link is a part of the client deployment process or through manual translation through the web page editor.

Translating Knowledgebase Articles into Multiple Languages

To translate existing Knowledgebase Articles,

  • Navigate to Settings > Interactive Service Hub > Knowledgebase Articles. The Articles form displays.
  • Select the article to be translated. The article details page displays.
  • Click Translate (under the More link). The Create New Translation dialog displays.
  • Enter the language into which the article should be translated in the Pick a Language field.
  • Click the Create button. A new version of the article tagged with the new language is created.

The translated article displays as a child association to the originating article.


Completing a Bulk Translation outside of VeloCITY 365[CS1][SP2][DJ3][CS4]

If translating large amount of content or translating by a professional translator, it may be easier to complete the translation outside of VeloCITY. To do this, the content will need to be exported, modified and then imported back into VeloCITY 365.

Exporting data for translation
  • Go to Settings > Data Management.
  • Select Export Field Translations.
  • In the Export Field Translations dialog box, select OK.
  • All product fields that are marked as localizable by default will be exported. Your internal developers must mark the fields as localizable.
  • Save the .zip file to your local computer.
  • Exported text is saved as a compressed file that contains a CrmFieldTranslations.xml that you can open by using Excel. You can send this file to a linguistic expert, translation agency, or localization firm.

The excel file will display Columns A, B and C as well as the column headings for the editable field translations as shaded. Do not change the information that is shaded. Changes within the shaded fields and columns will break the import of the translation file.

The editable fields are displayed below the language code column header, i.e., English = 1033, French = 1036 and Spanish = 3082.

Importing translated data
  • Go to Settings > Data Management.
  • Select Import Field Translations.
  • In the Field Translation Import Jobs page, on the Action toolbar, select Import Field Translations.
  • In the Import Translated Text dialog box, select Browse, and select the file that you've received from your translation agency.
  • Select Import. This starts the import job. You can check the status to see if the import has succeeded or failed.

After you've imported the translated text, users in your organization will see the data in their preferred language. If a value for the preferred language does not exist, the results will be shown in the user's base language.

 

Setting up CRM Security

Authenticated portal users are associated with either a CRM Contact and must have the appropriate security role assigned.

If using a self-service portal, portal users must be assigned to Web Roles in order to gain permissions beyond unauthenticated users. For more information on portal security within this document, refer to the Web Roles section on page 59, or click here for Microsoft information

Overview of CRM Security Roles

Security roles are a combination of privileges and access levels for the various entities. They are grouped under different tabs based on their functionality. These groups include: Details, Core Records, Marketing, Sales, Service, Business Management, Service Management, Customization, Missing Entities, Business Process Flows and Custom Entities.

Privileges

Privileges define what action a user can perform in VeloCITY. Privileges can be modified but cannot be added or deleted. The default privileges for each entity are:

  • Create — Allows the user to add a new record
  • Read — Allows the user to view a record
  • Write — Allows the user to edit a record
  • Delete — Allows the user to delete a record
  • Append — Allows the user to attach other entities to, or associate other entities with a parent record
  • Append to — Allows the user to attach other entities to, or associate other entities with the record

Levels of Access

The level of access within each of the Privileges is below each Privilege and is shown as a little circle. The 5 levels of access are:

  • None — No privileges given
  • User — Privileges to the records owned by the user or shared with the user. Also includes the privileges owned by the team to which the user belongs.
  • Business Unit — Privileges for all records owned in the business unit to which the user belongs
  • Parent: Child Business Unit — Privileges for all records owned in the business unit to which the user belongs and to all the child business units subordinate to that business unit
  • Organization — Privileges for all records in the organization regardless of who owns it

There are 4 default security roles included with VeloCITY 365.

Name

Description

Velocity 365 – Admin

Similar to an Agent role – with elevated privileges (i.e. ability to delete records). By default, grants access to all services requests of all types in system – and privileges typical for day to day tasks.

Velocity 365 – Agent

Suitable for service agents accepting service request details by phone, email or in person. By default, grants access to all services requests of all types in system – and privileges typical for day to day tasks. Grants privileges required for rendering and interacting with Esri maps.

Velocity 365 – Back Office

Suitable for departmental users responsible for following up on service requests. By default, grants access to all services requests of all types in system – and privileges typical for day to day tasks. Grants privileges required for rendering and interacting with Esri maps.

Velocity 365 Map User

Grants privileges required for rendering and interacting with Esri maps. Typically applied to any user with any of the above roles.

Assigning Security Roles

Every user must have a Security Role assigned

Assigning a Security Role to a user:

  • Navigate to Settings > Security > Users. The Users grid displays.
  • Select the user. The User Form for the selected user displays.
  • Click “Manage Roles” from the form navigation bar. The Manage User Roles dialogue displays.
  • Select desired roles and click OK.

Assigning a Security Role to a team:

  • Go to: Settings > Security > Teams. The Team grid displays.
  • Select the team. The Team Details Form displays.
  • Click “Manage Roles” from the form navigation bar. The Manage User Roles dialogue displays.
  • Select desired roles and click OK.

Assigning a role to a team will automatically apply same privileges to any user within that team. Assigning a role to a Business Unit’s default team will automatically apply to all users in that Business Unit.

Connect 365 Configuration

There are 5 components for configuring VeloCITY365 to display maps and map information. These components are specific to VeloCITY365 but are closely aligned with ESRI ArcGIS.

The ESRI configuration from a technical viewpoint:

The ESRI configuration from a presentation viewpoint:

  • User Input – Toolbar enables user to select and location or draw an area.
  • Primary Layer – Velocity365 adds this to all maps provisioned for user input and sits on top of all other layers. There is no administrator configuration for this layer
  • Server Data – The layer that displays information from D365 records.
  • Other Layers – The additional information that has been decided should also be seen. It is seen “on top” of the Base Map.
  • Base Map – The primary information that the citizens or CSR will see.

The Sample Intake Map and Sample Service Request Map are included for reference.

Do not modify or delete sample settings. It is best practice to deactivate the sample maps and keep them for reference. You can duplicate the maps and modify the duplicates to meet your needs

Sample Intake Map Settings

Configuration Type

Name

Description

ESRI Setting

Sample Intake Map Settings

Top level of configuration.

ESRI Server

Sample Server

By default, use public ESRI servers. Must be configured with client information.

ESRI Map

Sample Intake Map

Configured for displaying multiple active Case records at once.

ESRI Map Layer

Sample Intake Map Primary Layer

The layer where location can be can be entered.

ESRI Entity Field Mapping

Interaction Type Mapping (new_)

Fields relevant for plotting Interaction records on map.

Sample Service Request Map Settings

Configuration Type

Name

Description

ESRI Setting

Sample Service Requests Map Settings

Top level of configuration.

ESRI Server

Sample Server

By default, use public ESRI servers. Must be configured with client information.

ESRI Map

Sample Service Requests Map

Configured for displaying multiple active Case records at once.

ESRI Map Layer

Sample Service Requests Map Primary Layer

The layer where Case points will be displayed.

ESRI Entity Field Mapping

Velocity 365 Case Field Mapping

Fields relevant for plotting Case records on map.

Configuring the ESRI Settings

ESRI Settings are the top level of configuration and act as a container for all map-related settings. The purpose of the settings is to provide a naming so you can refer to the underlying components by a identifier. While ESRI Settings are the top level for configuration, you must setup the ESRI Server first.

To Setup the ESRI settings,

  1. Navigate to Connect 365 > ESRI Settings. The ESRI Settings form displays.
  2. Click New. The New ESRI form displays.
  3. Enter the name of the ESRI setting.

Note - The name of the setting is used only for administrator reference and so it is safe to change.

  1. Select the appropriate server from the Server lookup field

Note - If the Server lookup is empty, you need to setup the ESRI Server.

  1. Select the appropriate map from the Map field

Setting up the ESRI Server

The ESRI Server setup is required to establish a connection to an ArcGIS server and support public ESRI servers and self-hosted (private) ArcGIS servers.

If using ArcGIS Online the ESRI servers require application registration and may incur charges. Details on how to register with ArcGIS can be found here

To setup the ESRI settings,

  • Navigate to Connect 365 > ESRI Servers. The ESRI Servers form displays.
  • Click New. The New ESRI Server form displays.
  • Complete the fields.

Name

Description

Name

The descriptive name of the Server.
The name of the custom entity.

Is Private Server

Determines is the server configuration is private or public. True = Private ; False = Public

Self-hosted ArcGIS servers must be accessible from internet

Self-hosted ArcGIS servers can be open (no authentication) or closed (authentication required)

Users are never prompted for credentials

Client Id

The client_id is a public identifier for apps.
Input the client id generated by ESRI.

Once you register the application as per the instruction here. ESRI will generate Client ID and Client Secret for this application.

Note: It is NOT recommended to use the same Client Id across environments.

Client Secret

The client secret is a secret known only to the application and the authorization server

Input the client secret generated by ESRI.

Once you register the application as per the instruction here. ESRI will generate Client ID and Client Secret for this application.

Application Token

When using ESRI ArcGIS Online servers, the ArcGIS web services are secured using ArcGIS token-based authentication; as a result, every request to a resource must be accompanied by a valid token.

Token Expiry Date Time

Used to store the ESRI token expiry date and time.

The system checks this field for the expiry date/time and if it is expired or if it is expiring in next 10 minutes, the system will update the token before the map is loaded.

Geocode RestURL
Displays if Is Private Server selected

Used to search for an address using the search widget.

Reverse Geocode Rest URL
Displays if Is Private Server selected

Used to determine the return address for a point location on a map

Token URL
Displays if Is Private Server selected

Used to generate the tokens that will be used to validate addresses.

Configuring the ESRI Map

Setting up an ESRI map determines the map that the citizen will see when they log on to the portal. It is the top level of configuration and acts as a container for all map-related settings. There are a couple of points that are helpful when setting up the maps

  • The settings are for the general appearance and feature set of a single map
  • The maps are reusable – can be shared amongst multiple ESRI Settings records
  • While ESRI Settings are the top level for configuration, you must setup the ESRI Server first.

 

To setup the ESRI settings,

  • Navigate to Connect 365 > ESRI Maps.
  • The ESRI Maps form displays.
  • Click New.
  • The New ESRI Map form displays.
  • Complete the fields.

Name

Description

Name

Name of the ESRI map

Description

Description of the ESRI map

Map Features

 

Enable Locate Widget

Determines if the map can find the person’s current location. Determines if the Locate Widget is enabled. Yes = Enabled; No = Not Enabled

The widget will not enable if the client portal is not using a HTTPS website.

Locate Position

The position in the view at which to add the component. If not specified, manual is used by default. Known Values: top-left | top-right | bottom-left | bottom-right | manual

Enable Zoom Widget

Determines if the person may adjust the zoom of the map. Determines if the Zoom Widget is enabled. Yes = Enabled; No = Not Enabled

Zoom Position

The position in the view at which to add the component. If not specified, manual is used by default. Known Values: top-left | top-right | bottom-left | bottom-right | manual

Enable Home Widget

Determines if the person may easily return to the default view of the map. Determines if the Home Widget is enabled. Yes = Enabled; No = Not Enabled

Home Position

The position in the view at which to add the component. If not specified, manual is used by default. Known Values: top-left | top-right | bottom-left | bottom-right | manual

Map Sketch And Search Tools Settings

 

Tool Position

The position in the view at which to add the component. If not specified, manual is used by default. Known Values: top-left | top-right | bottom-left | bottom-right | manual

Enable Search Widget

Determines if the Search Widget is enabled. Yes = Enabled; No = Not Enabled

Search Country Code

Determines the country within which the search will be limited. For example, Canada = CAN or CA, United States = USA or US.

Additional Country codes can be found here, or by searching for ArcGIS Geocode Coverage

Enable Intersections

Determines if the map will support finding an intersection from the clicking on the map. When enabled, the Intersection tool displays. Yes = Enabled; No = Not Enabled

Intersection Button Label

Determines the label associated with the Intersection tool, i.e., Intersect

Intersection Distance (Meter)

Determines the search radius for an intersection, i.e., distance within X meters. Minimum value = 1 and Maximum value = 10

Intersection Tool Information

Determines the guiding text that displays on the map when the Intersection Tool is selected. For example, Click in the map to find the nearest intersection. Cliquez sur la carte pour trouver l'intersection la plus proche.

If the information should display in multiple languages, enter the language versions within the field.
If multiple languages are entered, do not separate the languages by a line break.

Intersection Not Found Message

Determines the text that display on the map when an intersection cannot be found within the parameters set in the Intersection Distance (Metre) field. For example, Intersection not found within 2 meters. Intersection introuvable à moins de 2 mètres

Intersection Button CSS Class

Determines the icon used on the Intersection Tool button.

Additional icons can be found on the ESRI GitHub, here.

If replacing the icon, only replace the content displayed underlined and italicized as shown in the example.

For example, action-button esri-icon-plus-circled esri-component

Clear Button Label

Determines the label associated with the Clear tool, i.e., Clear

Clear Button CSS Class

Determines the icon used on the Clear Tool button. The icon used when delivered is, action-button esri-icon-trash

Additional icons can be found on the ESRI GitHub, here.

If replacing the icon, only replace the content displayed underlined and italicized as shown in the example.
For example, action-button esri-icon-plus-circled esri-component

Enable Push Pins

Determines if the Push Pins are enabled. Yes = Enabled; No = Not Enabled

Push Pin Button Label

Determines the label associated with the Push Pin tool, i.e., Point

Push Pin Tool Information

Determines the guiding text that displays on the map when the Push Pin Tool is selected. For example, Drop the pin in the map.

If the information should display in multiple languages, enter the language versions within the field.
If multiple languages are entered, do not separate the languages by a line break.

Address Not Found Message

Determines the text that display on the map when an address cannot be found in the location where the pin was dropped. For example, Address not found on selected location.

Push Pin Button CSS Class

Determines the icon used on the Clear Tool button.

Additional icons can be found on the ESRI GitHub, here.

If replacing the icon, only replace the content displayed underlined and italicized as shown in the example.
For example, action-button esri-icon-plus-circled esri-component

Enable Polygon

Determines if the Polygon tool is enabled. Yes = Enabled; No = Not Enabled

Polygon Button Label

Determines the label associated with the Polygon tool, i.e., Polygon

Polygon Tool Information

Determines the guiding text that displays on the map when the Polygon Tool is selected. For example, Draw in the map. Double click to finish.

If the information should display in multiple languages, enter the language versions within the field.
If multiple languages are entered, do not separate the languages by a line break

Polygon Out of Boundary

Determines the text that displays on the map when a location is outside the boundaries of the Polygon. For example, This location is outside the city boundary.

If the information should display in multiple languages, enter the language versions within the field.
If multiple languages are entered, do not separate the languages by a line break

Polygon Button CSS Class

Determines the icon used on the Polygon Tool button.

Additional icons can be found on the ESRI GitHub, here.

If replacing the icon, only replace the content displayed underlined and italicized as shown in the example.
For example, action-button esri-icon-plus-circled esri-component

Enable Address Validation

Determines if Address Validation is enabled. Yes = Enabled; No = Not Enabled

Address Validation Message

Determines the text that displays on the map when a location without a known address is entered on the map. For example, You selected a point that does not have an address do you wish to keep the point or select a new address?

If the information should display in multiple languages, enter the language versions within the field.
If multiple languages are entered, do not separate the languages by a line break.

This message will display to citizens if the ArcGIS account has no more tokens. To ensure this does not happen, the ArcGIS account must be maintained.

Consent Title

Determines the label associated with the message that displays when a location without an address is selected for a pin drop, i.e., User Consent.

Accept Button Text

Determines the label associated with the Accept button, i.e., Accept

Decline Button Text

Determines the label associated with the Decline button tool, i.e., Deny

Accept Button Class Name

Determines the icon used on the Accept Button.

Additional icons can be found on the ESRI GitHub, here.

If replacing the icon, only replace the content displayed underlined and italicized as shown in the example.
For example, action-button esri-icon-plus-circled esri-component

Decline Button Class Name

Determines the icon used on the Decline Button.

Additional icons can be found on the ESRI GitHub, here.

If replacing the icon, only replace the content displayed underlined and italicized as shown in the example.
For example, action-button esri-icon-plus-circled esri-component

Show Attribution

Determines is the map detail information displays below the map or not: Yes = Visible; No = Not Visible.

Primary Layer

Determines the map layer on which pins will be dropped, i.e., pins are dropped on layers and not on the actual map. While there can be multiple layers on a map, every map must have a Primary Layer.

Select the Primary Layer to be used on the map from the ESRI Map Layer Lookup.

The names of the map layers have no impact on the functionality of the layer. Ensure that the layers are named intuitively so they may be easily identified.

There is no Administrative configuration needed for this field.

Map Layers sub-grid

Determines all of the map layers that are associated with a map. To add additional map layers, select the Add ESRI Map Layer Record button (+) and select the appropriate layer from the look-up.

Map View Configuration

 

Basemaps

Determines the base map that will be shown to the citizen. A sample value for this field is “streets.” Additional values can be found here.

Center Latitude

Determines the latitudinal center of the map for the citizen. Contact your ArcGIS manager if assistance is needed to determine this value. For example, the latitudinal center of Toronto could be 43.653200

Center Longitude

Determines the longitudinal center of the map for the citizen. Contact your ArcGIS manager if assistance is needed to determine this value. For example, the longitudinal center of Toronto could be -79.383200

Initial Zoom

Determines the how close or far the map displays for the citizen. The size of the area will help to determine this value.

Some trial and error will be needed to determine this value. Typically, however, 10 is a good value.

Min Zoom

Determines the how close a citizen may zoom into the map. The size of the area will help to determine this value.

Some trial and error will be needed to determine this value. Typically, however, 0 is a good value.

Max Zoom

Determines the how far away a citizen may zoom out of the map. The size of the area will help to determine this value.

Some trial and error will be needed to determine this value. Typically, however, 30 is a good value.

Geological Boundary Settings

 

Active Boundary Type

Determines Boundary Type for current map settings.

VeloCITY 365 validates the location details returned from ESRI against the location details configured here. If the details match, a pin drop allowed. The selection options are:

  • Feature Layer – the boundaries are determined based on the map layer identified as the feature layer when determining the map layers
  • Polygon – the boundaries are based on the values entered into the Polygon Boundary field. Enter string values for longitude and latitude “[-79.54388, 43.58759]”. This field displays once Polygon is selected.
  • Area/Region – the boundaries are based on the values entered into the Country Code, State/Province, City, and Neighbourhood fields (in that order). These values are validated with the result set returned from the ESRI ArcGIS server. These fields display once Area/Region is selected

Out of Boundary Message

Determines the text that displays on the map when a location outside of the determined area is entered on the map. For example, Selected location is out of city limits. Please select location within city limits.

If the information should display in multiple languages, enter the language versions within the field.
If multiple languages are entered, do not separate the languages by a line break

Country Code
(displays when Area/Region is selected within the Active Boundary Type field)

Determines the country within which the search will be limited. For example, Canada = CAN or CA, United States = USA or US.

Additional Country codes can be found here, or by searching for ArcGIS Geocode Coverage

State/Province
(displays when Area/Region is selected within the Active Boundary Type field)

Determines the state/province within which the search will be limited. For example, Alberta = AB, Texas = TX.

City
(displays when Area/Region is selected within the Active Boundary Type field)

Determines the city within which the search will be limited. For example, Toronto or Houston.

Neighborhood
(displays when Area/Region is selected within the Active Boundary Type field)

Determines if the neighborhood will be validated when the address is returned from ArcGIS.

Refer to the Active Boundary Type field for more information

Invalid Boundary Config Message
(displays when Area/Region is selected within the Active Boundary Type field)

Determines the text that displays on the boundary has been configured incorrectly. For example, Out of City

If the information should display in multiple languages, enter the language versions within the field.
If multiple languages are entered, do not separate the languages by a line break

Polygon Boundary
(displays when Polygon is selected within the Active Boundary Type field)

Determines the boundaries of the Polygon within which the addresses will be limited.

The coordinates must be within a latitude / longitude format, i.e.,
[-79.54388,43.58759];[-79.54388,43.58957;

The coordinates are generated on the client’s ESRI account and not provided within VeloCITY 365.

Boundary Marker Style

Determines how the line style which will used to identify the boundary.

Boundary Marker Color

Determines how the line colour which will used to identify the boundary.

Boundary Outline Width (px)

Determines how the line width which will used to identify the boundary. The value entered impacts the displays once Polygon is selected from the Active Boundary Type field.

Default Graphic Setting

 

Pushpin Type

Determines if the push pin will display as a Marker or as an image.

Pushpin Image (WebResource/dataUrl)

Determines the image that will be used if Image has been selected in the Pushpin Type field. The URL to Web resource for the image must be entered

Pushpin Height (px)

Determines the height of the pushpin image

Pushpin Width (px)

Determines the width of the pushpin image

Pushpin Marker Style

Determines the style of the pushpin if Marker was selected in the Pushpin Type field

Pushpin Marker Color

Determines the color of the pushpin if Marker was selected in the Pushpin Type field

Pushpin Marker Size (px)

Determines the size of the pushpin if Marker was selected in the Pushpin Type field

Polygon Symbol Style

Determines the symbol style of the polygon if Polygon was selected in the Active Boundary Type field.

Polygon Symbol Color

Determines the symbol color of the polygon if Polygon was selected in the Active Boundary Type field.

Polygon Outline Style

Determines the outline line style of the polygon if Polygon was selected in the Active Boundary Type field.

Polygon Outline Color

Determines the outline line color of the polygon if Polygon was selected in the Active Boundary Type field.

Polygon Outline Width (px)

Determines the outline line width of the polygon if Polygon was selected in the Active Boundary Type field.

Configuring the ESRI Map Layers

Layers are the mechanism used to display geographic datasets in your maps; layers provide the needed detail above and beyond the typical base map. Each layer references a dataset and specifies how that dataset is portrayed using symbols and text labels. Examples of layers: all campgrounds with outlines of individual campgrounds, locations of all known wild fires, park facilities (washrooms, water fountains, benches, etc). When you add a layer to a map, you specify its dataset and set its map symbols and labeling properties.

To setup the ESRI Map Layer setting:

  • Navigate to Connect 365 > ESRI Maps Layers. The ESRI Map Layers form displays.
  • Click New. The New ESRI Map Layer form displays.
  • Complete the fields.

Name

Description

Name

Determines the name of the custom entity.

Title

Determines the title of the layer. The title is used to identify each layer in places such as the Legend and Layer List Widget.

Layer Type

Determines the Layer Type by defining the layer shown on the map. The layer type options are:

  • Feature Layer – Allows client-side processing, popup templates, renderers with 2D and 3D symbols, and querying. . Its limitations include a limited number of features for display; the possibility of large downloads depending on number of features.
  • Graphics Layer – Allows the storing of points, polylines and polygons in a single layer. No geometry schema. . Its limitations include no renderer nor popup templates; visualization and popup templates are handled on a graphic-by-graphic basis.
  • CSV Layer - Allows client-side processing, popup templates, and renderers with 2D and 3D symbols. Its limitations include the possibility of large downloads depending on the number of features
  • Tile Layer – Allows better performance if using large datasets and has querying features. Its limitations include no editing, client-side rendering, or popup templates; some schema limitations in 3D views.
  • Vector Tile Layer – Allows features to be styled client-side and used as a tiled basemap. Its limitations include no editing, client-side rendering, or popup templates.

Data Source

Determines the data source for current layer and is dependent on the value selected within the Layer Type field.

Opacity

Determines if the layer is visible to the citizen or not. This value can range between 1 and 0, where 0 is 100 percent transparent and 1 is completely opaque.

Sort Order

Determines the order in which the layer will be drawn on a particular map. The possible sort order values are between 0 to 10,000

Visible

Determines if the layer is visible or not. Yes = Visible and No = Not Visible.

Set this value to No if you don't want the system to load the layer on the map. If you set the opacity setting, the system will still load the layer.

Entity Field Mapping

Identifies the Form Field Mapping based on the information on the Field Mapping details configuration

Enable Feature Selection
Displays only when Arc GIS Server is selected from the Data Source field.

Determines if the feature selection is enabled or not. Yes = Visible and No = Not Visible

Enable Layer Search
Displays only when Arc GIS Server is selected from the Data Source field.

Determines if the layer search feature is enabled or not. Yes = Visible and No = Not Visible

Enable As Boundary Validation
Displays only when Arc GIS Server is selected from the Data Source field.

Determines if the boundary validation is enabled or not. Yes = Visible and No = Not Visible

Data Source

 

CSV URL
Is unlocked only when CSV File is selected from the Data Source field.

Determines the data sources for the layer.

Unlocked only when CSV File is selected from the Data Source field.

Portal Item

Determines the data sources for the layer.

Unlocked only when Portal Item is selected from the Data Source field

Service URL

Determines the data sources for the layer.

Unlocked only when ArcGIS Server is selected from the Data Source field

Maps

 

Maps Sub-grid

Determines the maps to which the layer is associated.

The layer record must be saved before the association can be completed.

 

 

Configuring the ESRI Entity Field Mappings

Entity field mapping is determining where information will be stored within CRM. For example, citizen input (location of a service request) or data (location of an active case) plotted on the map. The field mapping is referenced by the ESRI Map Layer. In addition, the mapping can be shared amongst multiple ESRI Map Layer records and records types with similar schema, i.e., Interaction Types.

To setup the ESRI Map Layer setting:

  • Navigate to Connect 365 > ESRI Entity Field Mappings. The ESRI Entity Field Mappings form displays.
  • Click New. The New ESRI Entity Field Mappings form displays.
  • Enter an intuitive name for the mapping in the Name field.
  • Select an entity from the right-hand Entity Logical Name lookup field. The left-hand Entity Logical Name text field populates.
  • Select an entity from the right-hand column field. The left-hand text field populates and is editable.
  • input information into the text fields on the left side of the form
  • Select the destination fields from the look-ups on the right side of the form.

 

There are 2 field mapping scenarios with typical settings in the table below

Field Name

Typical Values for
Contact Field Mapping

Typical Values for Case Field Mapping

Location Field

abs_formattedaddress.

abs_location1_address1

Latitude Field

address1_latitude.

abs_location1_address1_latitude

Longitude Field

address1_longitude.

abs_location1_address1_longitude

Street Address Field

address1_line1.

abs_location1_address1_line1

City Field

address1_city.

abs_location1_address1_city

State / Province Field

address1_stateorprovince.

abs_location1_address1_stateorprovince

Postal Code Field

address1_postalcode.

abs_location1_address1_postalcode

County Field

address1_county

abs_location1_address1_county

Neighborhood Field

Not used on Contacts

abs_location1_address1_neighbourhood

Country Field

address1_country

abs_location1_address1_country

Polygon Field

Not used on Contacts

abs_polygonsettings

Configuring Icons

The icons that display on the Interaction Type buttons as well as on the map overlays are completely customizable. There are two recommended open source sites for additional imagery:

  • Bootstrap v3.x or here
  • Font Awesome v4.x or here

Map Settings for Agent Console

The Agent Console contains a map configured to display each service request by Interaction Type. The map settings are hardcoded and no configuration is required.

Map Settings for Portal Service Request Map

The map displays the service requests that have already been submitted. When a request is submitted, it is saved within VeloCITY as a case record. The settings for the map are to display

  • Case records whose Interaction Type is flagged with public visibility
  • Active Cases created within last 7 days

To change the ESRI Map Settings for the Portal Service Request Map,

  • Navigate to Connect 365 > ESRI Servers.
  • The ESRI Servers form displays.
  • Click Email A Link.
  • A new email with the link to the Sample Service Requests Map Settings displays.
  • Copy the portion of the link shown in bold and underlined.

https://adoxio-velocity365-portaltest2.crm.dynamics.com/main.aspx?etc=10010&extraqs=formid%3d6fb393d7-b4a5-49be-b032-a169e8fd9588&id=%7bB021AD4A-3D6B-E811-8128-5065F38A6BF2%7d&pagetype=entityrecord

  • Navigate to Portals > Site Settings > Velocity365/ServiceRequestMap/EsriMapId.
  • Locate the Value field and paste the copied portion of the link.
  • Save

Citizen Engagement Portal Configuration

The Citizen Engagement Portal allows citizens to self-serve both the receiving and the reporting of information. The details of both the push and pull is highly configurable. The configuration of the portal provides the opportunity to decide how, when, and what the citizens will experience when they visit.

  • The how is developed through authentication, and deciding the scope and depth of information available to citizens prior to your knowing who they are. The technical aspects are:
    • Authentication
    • Web Roles
  • The when is deciding the circumstances that will encourage citizens to visit as well as when information that will be provided. The technical aspects are:
    • Service Request Navigation
    • Content Management
  • The what is the content (both text and visual) within the portal. The technical aspects are:
    • Branding and Theming
    • Web Templates
    • Portal Content

Portal Authentication

The portal can be setup to be either anonymous or to require authentication. If authentication is required, note that it is contact-based and so administrators will need to be assigned a web role with permissions to update the portal. While authentication can be either Local Authentication or External Authentication, we strongly recommend the Azure B2C option.
For more information on portal authentication, refer to the Microsoft website and search for “Configure Dynamics 365 portal authentication”, or click here.
For more information on restricting page content to specific citizens, refer to the Microsoft website and search for “Control webpage access for portals”, or click here.

Web Roles

Web roles determine permissions to complete any special actions or access any protected content on the portal. For example, if a page can only be seen if the contact is known, the contact must be assigned to a role allowing access to that page. If the content on a page needs to be updated or a new page created, the contact must be assigned to a role that is given content publishing permissions. There are 3 roles included with an out of the box portal: Administrator, Authenticated Users, and Anonymous Users.
Administrators – The Administrator Role is created for users that should be free from the constraints of either the Authenticated Users Role or the Anonymous Users Role.
Authenticated Users - The “Authenticated Users Role” is the default web role for all authenticated users. This role is commonly used to provide a predetermined access for users that are not associated to any other roles. Keep in mind that users can have multiple web roles, but there can only be one Authenticated Users web role for authenticated users.
Unauthenticated Users - The “Anonymous Users Role” is intended to be used with Entity Permissions. It will not respect any other rules or permissions. By enabling the “Anonymous Users Role” it will become the default web role for all unauthenticated users. There can only be one Anonymous Users web role for unauthenticated users.
To create a new web role:

  • Navigate to Portals > Security > Web Roles. The Web Roles grid displays.
  • Click New. The New Web Role form displays.
  • Specify values for the fields provided. Refer to the table.
  • Click Save.
Name Description
Name The descriptive name of the Web Role
Website The website to which the role is associated.
Description An explanation of the Web Role's purpose. Optional.
Authenticated Users Role

Set to Yes - this will be the default web role for authenticated users. The settings for the 3 typical roles are:

Authenticated User – Yes

Anonymous User – No

Administrators - No

Only one Web Role with the Authenticated Users Role attribute set to true should exist for a given website. This will be the default web role for authenticated users that have not been assigned a web role.

Anonymous Users Role

Set to Yes - this will be the default web role for unauthenticated users. The settings for the 3 typical roles are:

Authenticated User – No

Anonymous User – Yes

Administrators - No

Only one Web Role with the Anonymous Users Role attribute set to true should exist for a given website. This will be the default web role for unauthenticated users. Also note that the Anonymous Users Role will only respect Entity Permissions.


Branding and Theming

The Portal is built using the Bootstrap front-end framework and as a result, you can quickly and easily brand the Portal for your organization. Bootstrap includes CSS and JavaScript components for common web application interface elements and includes styles for navigation elements, forms, buttons, and a responsive grid layout system. The update of the bootstrap file will complete the majority of the branding changes and so updating bootstrap is the place to start.
In addition to the bootstrap CSS there are other web files and templates that will not be identified within the bootstrap framework but can be copied and modified:

  • ‘Velocity365.css’ Web File (+ reference in ‘Header’ or ‘Footer’)
  • ‘Header’ Web Template - must be referenced by the website record
  • ‘Footer’ Web Template - must be referenced by website record
  • ‘Velocity365/General/StylesAndJavaScriptForNoHeaderFooter’ Web Template - affects some content inserted asynchronously via IFRAMEs or Ajax
  • Additional (add your own) CSS/JavaScript/font Web Files (+ reference in ‘Header’ or ‘Footer’)


If you decide to use a custom bootstrap.min.css, you can apply it to your portal by applying the custom Bootstrap theme without modifying the site code by uploading it as a web file
For additional information on customizing your portal search for “Create a theme for your portal” on the Microsoft documentation site or click here.

 

Updating Web Files

To apply a custom CSS file:

  • Sign into the portal as an Administrator.
  • Navigate to the portal’s Home page. The editing dialogue displays.
  • Select Children. The Edit Children dialogue displays.
  • Navigate to the current CSS file and select the Edit this File (pencil and paper) button to the right of the CSS file that is being edited. The Edit this File form displays.
  • Select the Choose File button and navigate to the new CSS file and select Open. The name of the selected file displays to the right of the Choose File button.
  • Enter bootstrap.min.css in the Partial URL field. This value indicates to the Dynamics 365 portal's framework that it should use your custom version of Bootstrap instead of the default version included.

NOTE: Do not replace the velocity365.css file. Rather, copy and deactivate the original file and modify the new file.

  • Select the Hidden from Sitemap check box (selected by default), so that this file doesn't appear to users on the site.
  • Select Save.
  • Refresh the page, and your customized styles will appear immediately.

Updating Web Templates

The web templates within VeloCITY 365 define the reusable content structures. Web templates are used to determine full page layouts, the major boundaries and sections of a page or simple web services/endpoints to small embeddable widgets and contain much of the visual elements and logic that make up Velocity 365. Web Templates can be embedded within one another, for example widgets are small Web Templates containing one or more elements that can be embedded on a page.
VeloCITY 365 integrates an open-source template language called Liquid for templating syntax and HTML, CSS and JavaScript. The use of Liquid allows for server-side logic to determine what is returned to the web browser. Liquid uses a combination of objects, tags, and filters to render dynamic content.

NOTE:
It is very important that you never customize original VeloCITY 365 web templates as this makes upgrades difficult. It is recommended that the templates be copied and then updated so the query functions are available but the page display is updated. Also note that some templates are referenced by name and so the copied templates need to have the same name.

The custom templates and elements can be reused, and so don’t store text directly within them.

To customize web templates:

  • Log into VeloCITY 365 as an Administrator
  • Navigate to Portals > Web Templates. The Web Templates form displays.
  • Open the web template to be modified and copy the source code.
  • Click New. The New Web Template form displays.
  • Enter the required information and paste the code into the Source field. Name the new web template with a similar and easily recognizable name. Note: some web templates are referenced by name.
  • Click Save and Close.
  • Deactivate the original web template.

For more information on portal pages, refer to the Microsoft website and search for “Configure site settings for portals”, or click here.
For more information on widgets within this document, refer to the Widgets section on page 17, or by clicking here


Site Settings


The site settings are configurable records that the portal references to either modify behavior or visual information. There are Global Portal, Portal site and Velocity365 settings. For more information on the Global Portal and Portal site settings, refer to the Microsoft website and search for “Configure site settings for portals”, or click here.
The typical Velocity365 settings are:

Name Value
Velocity365/Alerts/HomePage/Count 2
Velocity365/Alerts/SearchByCreatedOnDaySpan 30
Velocity365/InteractionTypes/TileMenu/DefaultFAicon fa-circle
Velocity365/InteractionTypes/TileMenu/DefaultImage https://via.placeholder.com/200X200
Velocity365/InteractionTypes/TileMenu/NumberOfLevelsToDisplay 2
Velocity365/InteractionTypes/TileMenu/ShowChildTileIcons true
Velocity365/InteractionTypes/TileMenu/UseMasonryJs true
Velocity365/InteractionTypes/TileMenuStyle true
Velocity365/InteractionTypes/TileMenuTitlePosition DOWN
Velocity365/RelatedWidget/NumberOfRecordsToShow 5
Velocity365/ServiceRequestIntake/DuplicateDetection/GridPageSize 6
Velocity365/ServiceRequestIntake/Location/EsriMap/DefaultMapSettingsId 5CAFB1D6-236B-E811-81285065F38A6BF2
Velocity365/ServiceRequestIntake/Location/EsriMap/MapHeightInPixels 600
Velocity365/ServiceRequestMap/EsriMapId B021AD4A-3D6B-E811-81285065F38A6BF2
Velocity365/ServiceRequestMap/Filters/DaysToShowByDefault 7
Velocity365/ServiceRequestMap/InteractionTypeLegend/ListItemClasses fa fa-circle
Velocity365/ServiceRequestMap/MapMarker/DefaultColor black
Velocity365/ServiceRequestMap/OpenServiceRequestDetailsInNewWindow true
Velocity365/ServiceRequestMap/ShowChildIteractionTypes true
Velocity365/Tag/DeflectionColumnPerRow 2
Velocity365/Tag/SearchResultsColumnPerRow 4
Velocity365/Tags/SearchResultsNumberOfRecordsToShow 9

 

Portal Content

The content within the VeloCITY portal is completely customizable by anyone with Administrator-level permissions. These permissions allow every level of the portal to be edited. There are two types of edit interfaces, content and navigation.


Edits should be made to non-production environments and changes should follow the proper change management process.
The level of security access may differ and so refer to your custom security roles.

How to Edit Page Content

  1. To edit content on the portal, login using Administrator permissions and navigate to the area or page requiring the updates.
  2. Hover over the existing content. The Content Edit control displays and click Edit. The Edit secondary window displays.
  3. Edit the content and/or controls and click Save.

How to Edit Navigation

  1. To edit navigation on the portal, login using Administrator permissions and navigate to the area or page requiring the updates.
  2. Hover over the existing content. The Navigation Edit control displays and click Edit. The Edit secondary window displays.
  3. Edit the content and/or controls and click Save.

In this section

Managing Work Order Administration and Automation

VeloCITY uses the workflows included with Dynamics 365 and are a powerful tool that allows for simple, or complex automation of tasks such as work order automation. The work order workflows are unique to each city and situation, and as a result need to be implemented to suit each situation and attached to the appropriate interaction type.

Managing Translations

Providing VeloCITY 365 in the appropriate language for your area is important. Velocity 365 is multi-lingual for both VeloCITY and Portal users. Alerts matching the user’s preferred language are displayed in the Agent Console. Interaction (SR) Types support translations that are common to any custom entity in VeloCITY.

Citizen Engagement PortalConfiguration

The Citizen Engagement Portal allows citizens to self-serve both the receiving and the reporting of information. The details of both the push and pull is highly configurable. The configuration of the portal provides the opportunity to decide how, when, and what the citizens will experience when they visit.

Setting up CRM Security

Authenticated portal users are associated with either a CRM Contact and must have the appropriate security role assigned.

Connect 365 Configuration

There are 5 components for configuring VeloCITY365 to display maps and map information. These components are specific to VeloCITY365 but are closely aligned with ESRI ArcGIS.

VeloCITY 365 Configuration

Setting up Routing and SLAs

Routing is planning which person or team will own the resolution of a specific Interaction Type and the amount of time within which a response and resolution is expected.

Interaction Type (SR) Administration

Interaction Type records hold all the configuration and metadata needed for the creation of a Service Request Intake form. Setting up an Interaction Type enables the creation of a unique service request form for each type by selecting the appropriate checkboxes and option values.

Deployment, Promotions and Hot FIxes

The process for deploying, promoting and applying hot fixes to VeloCITY 365 follows a well-documented path from Development to Production. It is expected this methodology will be followed with separate environments for each phase of the development cycle.