the customer's session,a worker's session and Application["supportWorker"].
Sessions are user specific. Application variable is across all users.
If worker session is tied to a customer then as soon you logout customer and clear sessions, worker session will also get cleared. It's the ASP.NET design, the way it works clears all session specific to a user. If you want to keep something alive use application variable.
Read about state managment here:
MSDN: ASP.NET State Management Overview[
^]
State management in ASP.NET - 1[
^]
ASP.Net State Management Techniques - 2[
^]