WMSI Configuration

This summarizes all of the configurable parameters in WMSI. This same information can be found in the tooltips when you hover over the setting in Solution Center.

Message Parameters

WmsiServiceConfiguration

The Configuration for WMSI

 AgsPassword

The password for the ArcGIS User.

 AgsUser

The login name of an ArcGIS Portal built in user. The user needs read permission to the configured map service and geometry service. The user will also need to be able to write to the work area polygon, if that functionality is configured.

 AllowMultiplePushes

If set to true, WMSI will reset the DXI push flags and send the push command. Features will not be deleted. If some external program, like QAQC, does not delete prior pushes, features will stack on top of each other and potentially cause the push to fail. If set to false, WMSI will still send the push command, but if the design has been pushed before, the Edge Service will not push it again because the push flag is set.

 CeTransactionIdPrefix

This value will be prefixed to the transaction ID, if configured, of the cost estimate message.

 CreateSession

When a 'Complete' WO Status is received create a session first before pushing. This is a legacy config. Newer versions of DXI will create the session, if it does not exist. This should be false for all tenants running a newer version of the Edge Service.

 PushOnComplete

If true, any Complete status will also trigger a push to GIS after the work request is completed

 CircuitSourceIdFields

A comma separated list of the GIS field names that contain the feeder ID. e.g. FEEDERID1,FEEDERID2 This is only used when Feeder manager 1 is configured and Extended Feeder Manager is also configured. This setting is not needed for Feeder Manager 2 or Feeder Manager 1 with Extended Feeder Manager.

 CircuitSourceIDLayerID

The ID of the Circuit Source Table layer in the Map Service. This is only needed for Feeder Manager 1 with Extended Feeder Manager.

 Domain

The default domain to use, Gas or Electric, when a domain is not specified in the message.

 DeleteNullAttributes

If set to true, the Work Order Attribute will be deleted if the value is null. If the attribute is not present, it will not be deleted.

 DeleteAssignment

This is only for testing, as deleting assignments is not supported in DXI. It is not exposed in the config GUI.

 DeleteDSR

If set to true, WMSI will listen for the Design Deleted event and send a command to the Design Storage Service to delete the design data. DXI does not normally delete the data, for archival purposes.

 DefaultWrUser

If the planner is null on the Work Order message, this value is populated. If this is not set and a null planner is sent, the message will fail, if it is an update. Only create message allow a null planner. The main use case for this setting is to unassign a work order. DXI does not support unassigning a work order, so instead it must be assigned to a default user. However, a WMS will typically send a null planner value to unassign a work order.

 DeactivateCus

If set to true, when a delete message is received for a CU or Macro instead of deleting the CU or Macro it will be deactivated by removing its work functions.

 ExtendedFeederManager

Set this to true, if the Electric GIS data uses Extended Feeder Manager.

 EstimateOnPush

If set to true, WMSI will listen for DesignPushedToGis events and create and send a CostEstimate message for the pushed designs.

 EnforceCreate

If set to true and a work order or cu message is received for a work order or cu that does not exist, the message will be rejected. The default behavior is to create the cu or work order, if it does not exist, i.e. an upsert operation.

 ExactFieldNames

If set to true, the configured feeder ID field names must match exactly. For Feeder Manager 2 this typically needs to be false. This is because each layer will have a different field name based on the joins. e.g. transformer_feederid

 FeederManager2

Set this to true, if the Electric GIS data uses Feeder Manager 2.

 FeederLevels

A comma separate list of valid feeder levels. This is only required when using Extended Feeder Manager. The feeder level is defined in the circuit source table. If multiple feeder IDs are found, only ones with levels in this list are used.

 GeometryServiceUrl

The URL to the Geometry Service. This is used to convert coordinates from the WMS spatial reference, which is usually lat/lon, to the spatial reference of the GIS data.

 InSpatialWkid

The well known ID (WKID) of the spatial reference the WMS uses when sending the work order coordinates. This is typically lat/lon WGS84 i.e. 4326

 LogFullMessage

If set to true, the full incoming messages are logged. This is typically just used for debugging and would normally be false.

 MapServiceUrl

The URL of the ArcGIS Map service that contains the electric data. This is used to find Feeder IDs. This only needs to be set if WMSI needs to use a different Map Service than what is configured for the tenant, as is the case for Feeder Manager 2 Electric Map services.

 MaxMessageSize

The maximum size of a message. If a message is larger than this size, it will be split up. This is an internal setting and is not exposed on the config GUI.

 OutSpatialWkid

The well known ID of the spatial reference of the GIS data.

 ParentCircuitSourceIdFields

A comma separated list of the GIS field names that contain the feeder ID. e.g. FEEDERID1,FEEDERID2 In the case of Extended Feeder Manager, this is the names of the fields that have the parent feeder ID.

 RemoveNullFields

If set to true, fields that are null will be removed when formatting the work request Location and Customer. Otherwise, the field name will be included and the value will be blank.

 ReplacePipesWithNewlines

If set to true, pipes, '|', will be replaced with newlines in the work request notes.

 RequireSource

If set to true and no Feeder ID is found, the message will be rejected. Otherwise, the design will be created using the coordinates. This requires Design Regions to be set up.

 SingleDesignsUpdateName

If set to true and if only one design is present for a work-order, the design name will be updated if it was changed in an update message. Otherwise, the design name will only change if the DXI Design ID is sent in the update message.

 SearchBufferDistance

When searching for electric devices in the GIS data, this is the initial distance, in map units, from the input coordinates.

 SendTransactionId

If set to true, a transaction ID will be added to messages. The transaction ID will be a new GUID.

 SearchLoops

If no electric devices are found within the initial search radius, the radius is doubled and the search performed again. This setting is how many times to double the search radius.

 SetWrStatus

If set to true, the status on the work order message will be used to set the status on the work request in DXI. Otherwise, the work request status will not be updated.

 SetSpatialReference

If set true, will populate SpatialReference from config spatialReferenceWkt/outSpatialWkid during WR creation or will be null

 SpatialReferenceWkt

If the GIS data's spatial reference has no well known ID (WKID), then the well known text (WKT) for the spatial reference should be set here.

 TraceFeeders

If true, WMSI will search for feeder IDs to include in the work request. How it searches depends on whether the data is using Feeder Manager 1 or 2 and whether Extended Feeder Manager is being used.

 WrTransactionIdPrefix

This value is prefixed to a new GUID to create the transaction ID on Work Request Notes messages.

 WoStatusPush

When this status is encountered on the Work Order message, a push to GIS command will be sent to the Edge Service.

 WoStatusComplete

A comma separated list of statuses. When any status in the list is encountered on the Work Order message, any draw assignments will be moved to a Complete status. The design will also be pushed to GIS, if the PushOnComplete configuration is set to true.

 WoStatusReOpen

A comma separated list of statuses. When any status in the list is encountered on the Work Order message, any draw assignments will be re-opened. If they can not be re-opened, an error will be logged, but message processing will continue.

 WoStatusClose

A comma separated list of statuses. When any status in the list is encountered on the Work Order message, any draw assignments will be moved to a Closed status.

 WoStatusCancel

A comma separated list of statuses. When any status in the list is encountered on the Work Order message, the work request will be deleted.

 WoStatusVoid

A comma separated list of statuses. When any status in the list is encountered on the Work Order message, the work request will be deleted.

 SendStatusInCe

Include the Work Request Status in the Cost Estimate Message. This is the status that came from WMS, not the DXI assignment status.

 SendNotesInCe

Include the Work Request Notes in the Cost Estimate message

 SendDesignNotesInCe

Include DesignNotes in the Cost Estimate message

 SendComponentIdInCe

Include the Component IDs a CU is related to, if any, in the Cost Estimate message. This allows the related features to be found in GIS. If this information is not needed, it is recommended to set this to false to reduce the message size.

 SendXyInCe

Include the XY coordinates of the Work Locations in the Cost Estimate message. The coordinates will be in the same spatial reference as the DXI data, so they may not be useful to some systems without some kind of transformation.

 ConvertCuLengthInCe

Convert linear measurements in the Cost Estimate Message from feet to meters or meters to feet. The default is None, which does no conversion.

 GisTableName

The Attribute Name in the CU message that contains the type of feature the CU is associated with. This is used for the CU to Spec mapping. The values in the attribute should match up to the values in the Feature Layer of the CU to Spec Mapping Rules.

 CreateDefaultMacro

If set to true and a CU gets a Spec assigned, a Macro will be created for the CU with the same name and a suffix. This will allow the CU to be used in DXI, as certain CU types, e.g. electric bank features, require a Macro to be placed. The CuPhaseCount attribute on the CU Message will determine how many children will be added to the Default Macro.

 EnableSplitMacro

If set to true and a Macro has more than one driving CU, the Macro will be split into multiple Macros. The first Macro will have all of the non-GIS CUs. Additional Macros will just have the extra driving CUs and have their number appended to the Name e.g. (2 of 4). If set to false and a Macro has more than one driving CU, an error will be thrown and the CU message will be rejected.

 AddDefaultDrivingCu

If set to true and a Macro has no driving CU, the configured default driving CU will be added. If set to false and a Macro has no driving CU, an error will be thrown and the CU message will be rejected.

 DefaultDrivingCuGuid

The GUID of the default driving CU that will be added to Macros with no driving CU, if configured.

 NoMacroForTable

A list of the GIS Table Names where default Macros should not be created. This is meant for non-electric CUs that do not need a Macro, such as Poles and Surface Structures. If CreateDefaultMacro is set to false, this setting has no effect.

 CheckUserRole

If set to true, makes sure the user has a DXI role. This would only come in to play if the tenant has multiple products, such as DXI and Mobile. It is safer to set this to false, unless you are having known problems. If this check fails, the Work Order message will be rejected.

 UserQuery

The query used to find the specified planner in DXI. The default is to search for the email address.

 PropagateMacroTagsToCu

When set to true, copies the tags from macros to all of their child CUs. Only applies to the Cost Estimate Integration.

 ExistingTagName

Work locations and CUs that have a Tag with this name will be ignored and not sent in the Cost Estimate Integration.

 DefaultMacroSuffix

If a default Macro is created, this will be appended to the end of the WMSCode. A Macro WMSCode needs to be unique and can not be the same as a CU WMSCode, so something must be appended. Do not leave this blank.

 UseWorkOrderNumberAsName

If set to true, only the work order number is used for the work request name. Otherwise, the standard naming convention will be used e.g. Name={WorkDepot} WO {WoNumber} CSO {CsoNumber}

 AppendStatusToWRName

If set to true, the work order status will be appended to the end of the Work Request Name.

 StatusAppendDelimiter

The delimiter to use when appending the work order status to the end of the work request name e.g. '_'

 PrependAttributesToWorkRequestNotes

If set to true, work order attributes in the work order message are added to the work request notes. This will apply to create and update messages, so external systems will need to include the attributes in all messages.

 MergeTags

If set to true, when CUs are merged on a Work Location, the Tags are also merged. This is the default behavior to keep the message size smaller. If set to false, If two of the same CU on a Work Location have different Tags, the CUs will not be merged.

 SendMacroNameinAttributes

If set to true and a CU is part of a Macro, then the name will be included for that CU when sending a SendDesign/CostEstimate Message.

 SendMacroWmsCodeinAttributes

If set to true, then when a SendDesign/CostEstimateMessage if a CU is part of a macro it will include the macro WMS Code in the attributes of that CU

 StartOnReopen

IF set to true, then when an assignment is reopened, it is automatically started, as well. This immediately enables the workflow buttons in DXI, instead of requiring a modification and save be performed first.

 IsLinearCUAttributename

This is the name of the attribute we will be looking for on a CU (that is part of a macro). If we find it then we will take the driving CU length and put it on the CU. The use case for this is plastic pipe that has a tracer wire and that tracer wire needs to be the same length as the pipe

 GisAttributesToCu

Configurable set of GIS attributes that will be copied to CUs.

 UpdateCuSpecs

If true, CU Specs will be updated, if they have changed. The spec will still be added on an update, if it was not set. This setting is only for changing the spec on an update.

 DeleteCuSpecs

If true, when a CU is updated that is related to a spec and no spec is found via the CU to Spec mapping rules, delete the relationship to the spec.

 AssignmentEventAttributes

A list of attributes to add to assignment events

 DesignEventAttributes

A list of attributes to add to design events

 WorkRequestEventAttributes

A list of attributes to add to work request events

 SubscribeToWmsEvents

Main flag to turn on the WMSI Events Interface

 ErrorAttributeName

The name of the custom property that contains error messages. The error messages will be merged with existing error messages. If the ID is the same, or if the ID is null and the date and message are the same, the new error will overwrite the old one. If the ID is not null and the message is null, the error with that ID will be deleted.

 AssignmentStatusComplete

A comma separated list of statuses. When any status in the list is encountered on the Work Order message, any draw assignments will be moved to a Complete status. The design will also be pushed to GIS.

 AssignmentStatusReOpen

A comma separated list of statuses. When any status in the list is encountered on the Work Order message, any draw assignments will be re-opened. If they can not be re-opened, an error will be logged, but message processing will continue.

 AssignmentStatusClose

A comma separated list of statuses. When any status in the list is encountered on the Work Order message, any draw assignments will be moved to a Closed status.

 ExcludeFromCostEstimateAttributeName

The name of the custom attribute on the CU. When the attribute is set on a CU with the value of True, the CU will not be sent in the cost estimate.

 PushToWorkAreaAttributes

List of Work Order attributes that will be pushed to Work Area fields.

 MergeCuAttributes

Merge CU attributes instead of overwriting.

 DeleteCostEstimateInDB

The cost estimate will be deleted from the DB when the design is deleted.

 SendChoosenDesign

If set to true, cost estimate message will have parameter to indicate if the design is selected or not in DXI.

 EstimateUseKvStorage

Place the Cost Estimate in KvStorage instead of the queue. Include a link in the queue message.

 SendCeDomain

If set to true, cost estimate message properties will include work request domain.

 CeDesignAttributes

List of design attributes that will be copied to the cost estimate message

 CeWorkRequestAttributes

List of work request attributes that will be copied to the cost estimate message

 CeAttachmentContentType

The configurable content-type of the cost estimate attachment that will be stored in KvStorage. Defaults to "application/json".

 PublishStatusUpdates

If set to true, an event will be published on the jobservices Topic when the status of a work order changes. This event is meant to be used by custom dynamic workflows.

 ReceiveSoapMessages

If true, allows the Soap https endpoint to receive messages

 SoapMessageSettings

Configuration for receiving SOAP messages. The default values are for MultiSpeak 3

 AllowUserChangeOnComplete

If set to true, if a work order update changes the user, but the assignment is Completed, WMSI will attempt to reopen the assignment and change the user. Otherwise an error will be logged, if the assignment is complete.

 UpdateCuCategories

If set to true, WMSI will update CU Categories and Non Drawn CU Types based on the values in the CU Message. If the values are not found, an error is logged and the CU, or Macro, is still created, or updated.

 MaxNumberOfCuLoadErrors

Maximum number of CU load failures before the entire bulk CU load process stops. The default value is set to 10. Setting this to 0 will disable this functionality and allow any number of errors.

 AllowCompletionOfAssigned

If set to true, assignments that are only assigned will be moved in to In Progress and Completed when a completed message is received. Otherwise, the assigment will not be changed and an error will be logged, which is the default behavior.

 SortMacroChildren

If true, sorts a macros children so abandon CUs come last. This is mainly for Split Macros so the abandon CUs do not end up on the first macro which has all the non GIS CUs.

 CeDoNotMergeCus

If true, do not merge CUs that are the same in the Cost Estimate/Send Design message. This will make the message larger.

 SplitMacroSuffix

The suffix to add to the WMS Code when splitting a Macro to ensure it is unique. The default is an empty string, for backwards compatibility.

 CePopulateAllCuAttributes

If true, copies GIS attributes to all of the CUs associated to a component i.e. in the Macro, instead of just the driving CU.

 Constants

A mapping that allows some constants to be configurable.