Perspective Sessions
A Perspective Session represents one instance of a project running on a web browser or mobile app. The term "session" might be new to some users, where "client" or "runtime" may sound more familiar. So anytime we refer to a session, we are talking about a runtime application in Perspective.
Now that you know that a session is effectively running an instance of the application, it can have multiple Pages in the same web browser. Perspective Sessions work the same way as web pages do on your favorite website on the internet. You can log into your favorite shopping website and then open several new tabs, where each tab is aware of your user credentials without having to retype them.
A session appears fairly simplistic, but there is actually a rich hierarchy of elements to be aware of. This page details the various moving pieces that comprise a session.
Perspective Project Elements
Watch the videoSession Anatomy
A Perspective Session contains a hierarchy of logical elements, as shown in the example below.
A session can have any number of pages at a time, pages can have any number of views, and containers can have any number of components, including other containers as children, which can also be nested to support multiple layout strategies. In this section, we discuss each building block of this hierarchy, starting at the bottom and working our way up. When describing each element, it helps to understand the smallest piece first which is a component, and then move up the hierarchy simply because that's where the design process begins in Perspective.
Component
Components are elements that you can select from to design your project. Perspective has a host of built-in components such as displays, buttons, charts, and other elements that display information to the user viewing a session. There is also an Embedded View component that allows you to include a view in the place of any component in the above structure.
Container
Containers are elements that contain components. You can nest one container inside of another container. It is important to note that containers do more than simply contain components, they also define a layout strategy of how components inside a container resize and reposition. Because of this, there are several different types of containers and each behave differently, and support different layout strategies.
View
Views are the primary unit of design in Perspective. Views are unique in that they can act as both a top level screen (a whole page in your session) or a component (embedded in another view). Each View is a project resource, which are named and organized into folders in the Ignition Designer’s Project Browser tree. These folders/paths are important not only for organization and referencing, but also because these paths uniquely identify each view, and are used in the session (runtime) for navigation. Each View has a container type that decides how the components inside it will behave. Multiple Views can be present within the same page, and views can also be nested. Parameters can be passed into a view from an external source.
Page
A Page represents a collection of views that are displayed in a single space such as a browser window or tab, and is the main navigation element in a session. Each page consists of a primary view, but multiple views can be defined from within a single page. Some views can be docked to specific edges of the page, or “popups” floating on top of the other views. Multiple pages can be open as part of the same session, but can show different information. A URL is defined for a page, which means the Forward and Back buttons in a web browser can be used to navigate to pages that have already been visited.
Properties
A session has its own properties that can be customized. For information, see Session Properties.
A Simple Example
If you are just starting to explore Perspective, you will most likely create a single view, add a few components (no containers), and then launch a session. In this case, our structure seems much simpler than the diagram above, but your session has one page, which is displaying one view, which has a few components. As you add to your project, it will become more complex and start to resemble the image above.
Launching a Perspective Session
Launching a Session
Watch the videoThere are three ways to launch a Perspective Session:
- From the Designer
- From the Gateway Webpage
- By entering the web address of the project in your web browser
- Through Perspective Workstation
For more information on accessing Perspective projects remotely, refer to the Accessing Projects Remotely section.
Launching a Session from the Designer
Launching a Perspective Session from the Designer is a great method if you're testing your changes. When you're in the Designer, simply click the Tools > Launch Perspective > Launch Session from the top menubar. This opens a session for the project you are working on directly from the Designer.
Launching a Session from the Gateway Webpage
On the Gateway Webpage, you'll notice the Get Started page is the home page. Under the Perspective logo, click View Projects.
The window will refresh with a list of Perspective projects. Find your project and click the Launch Project button. This opens your project in a browser tab.
Session App Bar
Session App Bar
Watch the videoAt the bottom of every Perspective Session, there is an expandable app bar with a few options that provide information about Ignition and the current session. To display the app bar, click the Maximize icon in the lower right corner of the screen.
If you are using Trial Mode, there will also be a Timer icon that when clicked displays the Trial Period timer in the Session Status Popup.
Once expanded, the app bar is displayed at the bottom of the screen.
You can change the location of the Maximize/Minimize icon on the app bar in the Property Editor. Scroll down the list of properties in the Perspective Property Editor and expand the appBar property. Right-click on the togglePosition property and select one of the three options: left, right or hidden.
About Ignition Information Popup
On the lower left of the app bar, click the Ignition icon to open the About Ignition information popup. This screen has a short introduction to Ignition and a link to the Inductive Automation website. Use the scroll bar on the right to scroll down.
Here you'll see the number of modules installed on the Gateway, along with a list of those a modules, their version numbers, and whether they are currently running.
Session Status Popup
In the middle of the app bar at the bottom of the window, the current Gateway ID is displayed. Click on this for additional information. The pop-up screen shows the current user and connected Gateway. If no user is signed in, a Sign In button is displayed in the upper right corner.
Click on the right arrow or anywhere on the Gateway name to open the Session Status popup.
The Session Status popup has two tabs: Gateway and Project. Under the Gateway tab, you can see the connection status, Gateway URL, Session ID, and Page ID. The Visit Gateway button is a shortcut to the Gateway Homepage.
Under the Project tab, you see the name of the project, the last modified date for the project, and whether the project is up to date.
Project Updates
Session Update Notifications
Watch the videoIf you have a Perspective Session open and a change was made in the Designer that was saved and published, one of two things may happen. Either the project will silently update, or an Update Notification window will appear in your session. Your session will automatically update in 30 seconds or you can click Update Now.
In order to receive update notifications in a Perspective Session the Update Notification option must be enabled. To access the Project Properties, in the Designer, click on Project tab on the menu bar. Then select Project Properties. Scroll down to Perspective > General and then check Enable Update Notification.
Page URLs
Because Perspective is designed to operate in a web browser, each page must be “mounted” at a given URL. The URL setting of the page will be reflected in the browser’s URL bar if the session is running in a consumer web browser. To learn more, refer to the section on Page URLs in Pages in Perspective.
Pages can be mounted at URLs that also include parameters. These parameters are used to allow a page to be mounted at a dynamic URL, allowing information in the URL to be interpreted as input parameters to the page’s primary view. Go to the section on Passing Parameters to get more detailed information on passing URL parameters.
Browser Version Requirements
Browser version requirements are hard to define since each major or minor browser versions may introduce new CSS specifications which are leveraged by individual features in Perspective. For example, a container component built around a relatively new and exciting CSS layout system will likely require a more recent browser version. In general however, the supported browser listed below do a good job at staying up to date with implementation and support of these new specifications.
Our general policy is to only use features that have been supported for some time, whenever possible. We are currently using features that have been standardized for a few years before Perspective was even released. Overall, we will always recommend that you keep your browser up to date to take advantage of browser features, fixes, and most importantly for security updates.
Ignition (as well as browsers) is constantly evolving and leveraging new APIs to provide you with the best experience possible, so it's difficult to pin down minimum versions for 100% of Perspective's functionality. We do take care to ensure Perspective sessions will always work on the browsers and versions listed below. Perspective sessions may very likely work for some browsers that are not even listed below, but we do not test against them, and thus cannot guarantee their behavior.
Some browsers that are not listed below may also work, but we cannot guarantee them.
Basic Session Functionality Requirements for Ignition 8.1.0
Browser | Minimum Version Required |
---|---|
Chrome | 57 |
Firefox | 52 |
Safari | 11 |
Edge | 16 |
Session Disconnections
If a Perspective Session loses its connection to the Ignition Gateway, a message will immediately display on the upper right-hand corner of the Session to inform a user of the lost connection status and the time of connection loss.
The Session itself will continuously attempt to reconnect to the Gateway. When the connection between the Session and the Gateway is re-established, your Session will resume its normal operation. If the project associated with the Session is somehow deleted, the Session will fail to reconnect because its source project is missing. A project can be manually deleted or overwritten by a Gateway restore.