Integrating kBridge visualization
Summarize
Summary of Integrating kBridge visualization
ServiceNow CPQ supports integration with kBridge to enable real-time 3D visualization in the configuration experience. This integration enhances user interaction by synchronizing configuration inputs with dynamic visual updates in the ServiceNow CPQ UI. The communication can be one-way—from ServiceNow CPQ to kBridge—or bidirectional, allowing user manipulations in the 3D visualization to update CPQ configuration fields.
Show less
Integration Setup
The kBridge visualization component is configured within the ServiceNow CPQ blueprint layout definition. This layout:
- Defines the rendering location of the kBridge visualization in the CPQ UI
- Specifies the kBridge connection parameters
- Maps ServiceNow CPQ fields and sets to be synchronized with the visualization
To add the kBridge component, include the kbridge layout component type in the layout CSV file’s "type" column and set integration properties in the "value" column using a JSON template.
Key Configuration Parameters
- Connection Settings:
scriptUrl,appUrl, andtokendefine the URLs and authentication needed to connect to kBridge. - Session Startup: Parameters configured with kBridge administrators specify the initial visualization state.
- Data Mappings:
eventFields: Map CPQ fields to kBridge fields for data synchronization.eventSetsandeventProductPickers: Map CPQ sets and product pickers to kBridge.setActiveTriggers: Define triggers for set activation in CPQ.listenerFields: Enable two-way communication by specifying CPQ fields to receive JSON data from kBridge manipulations.
- Layout Size: Customize the visualization component’s height and width in pixels to fit the UI layout.
Communication Behavior
If listenerFields are not defined, all eventFields support two-way communication. When listenerFields are included, communication for eventFields is one-way from CPQ to kBridge, while eventSets and eventProductPickers always transmit data one-way from CPQ to kBridge.
Practical Benefits for ServiceNow Customers
- Provides interactive 3D visualization that updates instantly as users configure products.
- Allows users to manipulate 3D models directly, with changes reflected back in CPQ configurations when two-way communication is enabled.
- Improves user experience and accuracy in complex product configurations.
Implementing this integration requires collaboration with kBridge administrators to define appropriate session startup parameters and mapping configurations.
Integrate kBridge for real-time 3D visualization. Sync configuration inputs with visual updates to enhance user experience.
ServiceNow CPQ supports several different 3D visualization options in the end-user configuration experience. ServiceNow CPQ can be implemented to use kBridge as a visualization component that is updated in real time in the ServiceNow CPQ UI as the user changes configuration inputs (one-way communication). In addition, bidirectional (two-way) communication may be defined so that user manipulations of the graphic update ServiceNow CPQ configuration fields.
The following video shows how to integrate ServiceNow CPQ with kBridge for real-time updates:
KBridge Integration Setup Demo
The integration between ServiceNow CPQ and kBridge is set up in the ServiceNow CPQ blueprint layout definition. The layout definition:
- defines where the kBridge visualization component will be rendered on the ServiceNow CPQ UI
- specifies the kBridge connection
- identifies the ServiceNow CPQ field or set data to be sent
To create a kBridge component, the kbridge layout component type can be added in the “type” column of the layout CSV file. Additional properties for the integration are set in the “value” column.
This sample layout CSV file demonstrates the use of the kBridge component and parameter inputs. See row 12.
JSON value template
scriptUrl: string,
appUrl: string,
token: string,
sessionStartup: object
eventFields: object
eventSets: object
eventProductPickers: object
setActiveTriggers: array
listenerFields: object
height: number
width: number
kBridge connection
- scriptUrl: URL for kBridge script
- appUrl: URL for kBridge app
- token: Auth token from kBridge
- sessionStartup: Additional kBridge startup information; work with kBridge, your implementer or kBridge administrator to determine the appropriate values to pass in this parameter for your kBridge setup
ServiceNow CPQ data
eventFields: Mapping of ServiceNow CPQ fields to kBridgeeventSets: Mapping of ServiceNow CPQ sets to kBridgeeventProductPickers: Mapping of ServiceNow CPQ product pickers to kBridgesetActiveTriggers: ServiceNow CPQ set triggerslistenerFields: For two-way data communication involving one or more ServiceNow CPQ sets, this object specifies the ServiceNow CPQ text field variable name to which a JSON representation of the set(s), manipulated in the kBridge visualization by the user, will be returned to ServiceNow CPQ. The Admin must define a rule that parses the content of the listenerFields and populates the appropriate set inputs.Note:- If a blueprint/layout has
eventFieldsbut notlistenerFields, every event field has two-way communication. - If a listener field is added to the blueprint or layout, all event fields will communicate only from ServiceNow CPQ to kBridge.
- Event sets and event product pickers pass information only from ServiceNow CPQ to kBridge, and not from kBridge to ServiceNow CPQ.
- From a data standpoint, event sets and event product pickers data are passed the same way to kBridge (in an array of objects).
- If a blueprint/layout has
Layout size
height: element height in layout, value is in pixelswidth: element width in layout, value is in pixels
Example JSON values
{
scriptUrl: 'http://script.location';,
appUrl: 'http://app.script.location';,
token: 'abc-123-def-456',
sessionStartup: {
type: 'model',
revisionId: '1234-5678-90'
},
eventFields: {
field1: { name: 'field-1', refChain: 'world.application.model' },
field2: { name: 'field-2', refChain: 'world.application.model' },
field3: { name: 'field-3', refChain: 'world.application.model' }
},
eventSets: {
set1: { name: 'set-1', refChain: 'world.application.model' },
},
eventProductPickers: {
picker1: { name: 'picker-1', refChain: 'world.application.model' },
},
setActiveTriggers: ['set.set2.triggerBoolean'],
listenerFields: {
listenerFieldName: { name: 'ServiceNow CPQTestSet', refChain: 'world.application.model' }
},
height: 800,
width: 1200,
}
namecorresponds to the field or rule name in kBridge.refChaincorresponds to the model path of this object in kBridge.
Reference
For a discussion of features available among supported visualization applications in integration with ServiceNow CPQ, see Visualization Integrations: An Overview.