Como ser notificado sobre o final da sessão?

Eu estou querendo saber se eu posso lidar com um evento de tempo limite de sessão. Eu preciso fazer uma chamada de função para a minha função antes do tempo limite da sessão ou o usuário saiu da minha página, ou a janela do navegador fechado. A parte mais importante aqui é ter acesso a tudo armazenado durante a sessão, variáveis ​​de sessão.