# Changing Perspective Project from Session

**URL:** <https://forum.inductiveautomation.com/t/changing-perspective-project-from-session/54879>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [January 11, 2022, 2:55pm UTC](https://forum.inductiveautomation.com/t/changing-perspective-project-from-session/54879 "2022-01-11T14:55:48Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![cmallonee](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/cmallonee/32/6416_2.png) [@cmallonee](https://forum.inductiveautomation.com/u/cmallonee)\
**Post date:** [January 11, 2022, 3:17pm UTC](https://forum.inductiveautomation.com/t/changing-perspective-project-from-session/54879/2 "2022-01-11T15:17:32Z")

</div>

Navigating in and out between projects is always going to be difficult - even more so when you need ot maintain control over authentication status.

As you move from one project to another (let’s say A to B), a new session is created. The user still has a session open in Project A which will timeout based on the settings for the Project (these can be set within the Designer under the “Project” menu bar option).

What I recommend is logging the user out asynchronously:

```auto
def log_out_session(sessionId = self.session.props.id):
    import system
    system.perspective.logout(sessionId)

system.util.invokeAsynchronous(log_out_session)
# it is important to do the navigation LAST because the session will not execute any code AFTER the navigation
system.perspective.navigate(url=<destination>)

```

---

_[View the full topic](https://forum.inductiveautomation.com/t/changing-perspective-project-from-session/54879)._
