public async Task JoinSession(Guid sessionId)
        {
            await LeaveCurrentSession();

            // TODO: permission check
            _session = GrainFactory.GetGrain <ISession>(sessionId);
            await _session.AddParticipant(this);
        }