Session properties are available for use throughout Perspective Sessions. Sessions of a given project will have the same list of properties, however, the actual values are unique and independent for each running Session.

Each Session creates its own instance of these properties. This makes them very useful as in-project variables for passing information between views or browser tabs, and between other parts of the Session, such as scripting.

The Property Editor displays Session properties when viewed from the Perspective Start screen. Each Session contains a series of properties with unique values. These properties provide some useful information about where the Session is running. Additionally, custom properties may be added, providing a way for a Session to store additional values that can be used in bindings and scripts, and are also important for passing parameters from one view to another.

Restrictions from System Properties

Some Session props are intentionally restricted with a System property and cannot be changed or removed. These properties have a System  icon displayed next to them in the Property Editor.  

On this page ...

IULocgo


Session Props



Session Properties Table

Name

Description

Property Type

idUnique Session identifier.value: string
host

Reflects the connecting system's IP address or hostname.

This feature was changed in Ignition version 8.1.10:
The value of this property is impacted by the gateway's Resolve Client Hostname setting. While Resolve Client Hostname is enabled, the gateway will attempt a reverse DNS hostname lookup. Whatever is returned by this lookup will be set as the value for host.

value: string
themeThe theme to use in the Session. The default theme is light. Writing a theme name to this property will change the theme for the Session. value: string
localeThe current locale of this Session.value: string
timeZoneId

Timezone identification code, for example America/Los_Angeles.

This sessionProps.timeZoneId is the root property. The other timezone.id properties you may see are gateway.timezone.id and device.timezone.id. These are both read-only representations of what the Gateway and user agent (mobile device, browser, workstation, etc.) report back to the session. You can bind either of these properties to override the sessionProps.timeZoneId by setting the project property Timezone Behavior for Perspective to Gateway or Client. This will update the timeZoneId session property on session startup to the reported value. 

Beyond manually updating in Session Props or binding the property, you can also update the timeZoneId session property so Perspective will react to updates dynamically. 

value: string
lastActivity

The following feature is new in Ignition version 8.1.8
Click here to check out the other new features

A readonly that represents the last time the session was interacted with, such as a user clicking within the session. The time reported by this property is based off of the gateway's time. 

value: string
auth

Represents the user's authentication and authorization for this Session. 

NameDescriptionProperty Type
authenticatedTrue if the user is authenticated. False if the user is unauthenticated. Null if the user's authentication status is unknown.value: boolean
user

Contains information about the user, if they are authenticated.

NameDescriptionProperty Type
id

The IdP's unique identifier for this user. Null if the user is not authenticated.

value: string
userNameThe user's username. Null if the user is not authenticated.value: string
firstNameThe user's first name. Null if the user is not authenticated, if the IdP did not provide this attribute, or if no mapping was configured for this attribute.value: string
lastNameThe user's last name. Null if the user is not authenticated, if the IdP did not provide this attribute, or if no mapping was configured for this attribute.value: string
email

The user's email address. Null if the user is not authenticated, if the IdP did not provide this attribute, or if no mapping was configured for this attribute.

value: string
roles

The roles that the IdP assigned this user. Null if the user is not authenticated, if the IdP did not provide this attribute, or if no mapping was configured for this attribute.

value: string
timestamp

A timestamp representing the last time the current user authenticated against the Identity Provider. 

value: timestamp
object
securityLevels

The deepest security levels in the tree granted to the current user, starting with the children of the Public security level. The Public security level is never shown since all Sessions include Public.

NameDescriptionProperty Type
nameThe name for this security level. Must be unique among its siblings.value: string
childrenSecurity levels which descend from this security level.array
array
idpId

The identity provider's ID. Replaced by the idp property

value: string
idpThe name of the Identity Provider configuration set on the project. value: string
idpAttributes

Represents the JSON object returned by the identity provider after logging in. The structure of this object will match that of the JSON provided by the Test Login Identity Provider page. 

Note: The Designer does not authenticate against identity providers in Ignition 8.0, so this object will always appear empty in the designer. Use the Test Login page to determine the shape of this property, or use a simple binding to something visual (i.e. a label) display and parse the results while developing your project. 
Note: Ignition currently supports the Ignition and OpenID Connect (OIDC) Response Documents, but not SAML. Attempting to use a SAML IdP will result in the idpAttributes property containing an empty string. This note will be updated once support for SAML Response Documents has been implemented.

object
object
gateway

Properties for the Gateway that this Session is running on. The value of this property will not be saved with the view. Does not persist by default.

NameDescriptionProperty Type
addressRemote host address of the connected Gateway.value: string
timezone

Document providing time zone information.

NameDescriptionProperty Type
idTime zone identification code, for example America/Los_Angeles.value: string
nameName of the timezone.value: string
utcOffsetOffset of the current timezone relative to UTC, in hours.value: numeric
object
connected

True when connected to a websocket. All tabs in the Session must have a connected websocket to become true. If a Session disconnects but is still open in the browser, the property will not change, as the property write from the Gateway can't write to the disconnected Session.

value: boolean

object
device

Properties for the device that is running the Session. 

NameDescriptionProperty Type
typeType of device that created this Session. Read only. Options are ios, android, designer, browser, and workstation. Empty string if device is unknown during loading. value: string
identifierUnique ID representing this device. This is a convenience property not intended/suited for security purposes. May change via device/application re-installs or browser cache clears.value: string
timezone

Document providing time zone information. 

NameDescriptionProperty Type
idTime zone identification code, for example America/Los_Angeles.value: string
utcOffsetOffset of the current timezone relative to UTC, in hours.value: numeric
object
userAgentUser agent string of the connected device. value: string

settings

Array of settings for the device.

NameDescriptionProperty Type
pullToRefresh

The following feature is new in Ignition version 8.1.5
Click here to check out the other new features
If true, swiping down from the top of page and holding for two seconds will refresh the project in the mobile Perspective App.  If false, swiping down will scroll the screen. Default is true. 


value: boolean

preventSleep


Prevents the device from sleeping while viewing project in the mobile Perspective App. Default is false.


value: boolean


object

accelerometer

When continuous read mode is active, represents values retrieved from the accelerometer. 

NameDescriptionProperty Type
timestampTimestamp represented as standard 'milliseconds since unix epoch'.value: string
xAcceleration force (in m/s2) along the x axis (including gravity).value: numeric
yAcceleration force (in m/s2) along the y axis (including gravity).value: numeric
zAcceleration force (in m/s2) along the z axis (including gravity).value: numeric
object
object
bluetooth

Options and data provided by device Bluetooth services.

NameDescriptionProperty Type
enabledIf true, enables bluetooth capability.value: boolean
options

Bluetooth options.

NameDescriptionProperty Type
updateIntervalHow often should the Session check for new data packets. Duration in ms to buffer Bluetooth data before sending to Perspective.value: numeric
limitMaximum number of packets to display. The order of packets is strongest RSSI (Received Signal Strength Indicator) to weakest.value: numeric
filter

Bluetooth filtering options.

NameDescriptionProperty Type
enabledIf true, will enable filtering on the packets.value: boolean
minimumRSSIMinimum strength of RSSI to return. Enter 0 to ignore.value: numeric
altBeacon

AltBeacon format.

NameDescriptionProperty Type
exclusiveExclude other beacon types that are not altBeacon.value: boolean
uuidThe 16 byte beacon identifier. Ignores packets that don't match the value specified.value: string
object
eddystone

Eddystone open beacon format.

NameDescriptionProperty Type
exclusiveExclude other beacon types that are not eddystone.value: boolean
nameSpaceIDNamespace identifier. Ignores packets that don't match the value specified.value: string
object
iBeacon

iBeacon format.

NameDescriptionProperty Type
exclusiveExclude other beacon types.value: boolean
uuid16 byte proximity uuid of iBeacon. On iOS this must be specified in order to receive iBeacon data.value: string
object

object
dataWill populate with most recent packets from any detected beacons.array
object
geolocation

Options and data provided by web or native device geolocation services.

NameDescriptionProperty Type
enabledIf true, will attempt to populate location data into the 'data' property.value: boolean
permissionGranted

If geolocation is enabled and a geolocation permission prompt is requested, this field populates true if the user allowed permission. Otherwise, it is false. Read only.

value: boolean
options
NameDescriptionProperty Type
accuracy

Indicates the mode of accuracy the application uses to receive results: max, balanced, and low.

NameDescriptionProperty Type
maxMaximum accuracy (and highest battery use). Accurate to the level allowed by the environment/device.value: string
balancedBalanced accuracy - accuracy resolves ~100m (about a city block) using a more efficient poll rate and supplementing with device data. Balanced is the default value.value: string
lowLow accuracy typically does not use a GPS sensor, but relies on environmental meta data (such as cell tower information, Wi-Fi connectivity, etc.). Most efficient, accurate to approximately town/3 kilometers.value: string
value: boolean
maximumAgeA positive long value indicating the maximum age in milliseconds of a possible cached position that is acceptable to return. If set to 0, it means that the device cannot use a cached position and must attempt to retrieve the real current position. If set to infinity, the device must return a cached position regardless of its age. Default is 0.value: numeric

data

If geolocation is enabled and the device can provide geolocation data, this will hold information about location. 

NameDescriptionProperty Type
latitudeA floating point value representing the position's latitude in decimal degrees. Null if location is disabled.value: float
longitudeA floating point value representing the position's longitude in decimal degrees. Null if location is disabled.value: float
altitudeA double representing the position's altitude in meters, relative to sea level. This value can be null if the implementation cannot provide the data.value: double
accuracyA double representing the accuracy of the latitude and longitude properties, expressed in meters.value: double
altitudeAccuracyA double representing the accuracy of the altitude expressed in meters. May be null if device fails to provide or if geolocation is disabled.value: double
headingReturns a double representing the direction in which the device is traveling. This value, specified in degrees, indicates how far off the device is from heading true north. 0 degrees represents true north, and the direction is determined clockwise (which means that east is 90 degrees and west is 270 degrees). If speed is 0, heading is NaN. If the device is unable to provide heading information, this value is null.value: double
speedReturns a double representing the velocity of the device in meters per second. This value can be null.value: double
timestampTime the last location update was received.value: string
object
object
appBar

Settings relevant to the bottom-docked App Bar, which lists Gateway information.

NameDescriptionProperty Type
togglePositionThe position of the overlaid toggle button that shows the app bar: right, left or hidden.value: string
about

The following feature is new in Ignition version 8.1.20
Click here to check out the other new features
Settings allowing for more customization of the bottom-docked App Bar.

NameDescriptionProperty Type
showDetermine if a custom about page should be shown.value: boolean
iconThe path of the about button icon.value: string
pathPath of the view to display in the about modal.value: string
titleThe title of the about modal.value: string
object



object

pipes

The following feature is new in Ignition version 8.1.10
Click here to check out the other new features
An object containing properties that pertain to pipes.

NameDescriptionProperty Type
autoAppearanceThe styling to use when a set of pipes is set to an "auto" style. value: string
overlapGap

The following feature is new in Ignition version 8.1.18
Click here to check out the other new features
The width of the gap to draw when P&ID pipes overlap. When this property is set to 0 or a negative number, no overlap is rendered. This may result in a rendering performance boost when using complex P&ID pipes. Default is 4.

value: numeric
object
symbols

The following feature is new in Ignition version 8.1.0
Click here to check out the other new features
Settings relevant to the components on the Perspective Symbols Palette.

NameDescriptionProperty Type
autoAnimationSpeed

Sets the animation speed for any Perspective symbol components that have their animationSpeed property set to auto. 

value: string
autoAppearance

Sets the appearance for any Perspective symbol components who have their appearance property set to auto. Options are auto, p&id, mimic, and simple. 

value: string
object
googleMapsApiKey

The following feature is new in Ignition version 8.1.33
Click here to check out the other new features
Google Maps API Key. This key is required to use a functional version of the Google Map component. 

value: string
address

The following feature is new in Ignition version 8.1.10
Click here to check out the other new features

Represents the IP address of the Session as the gateway sees it.


value: string


  • No labels