added socket session must be refactored
merged session conflict