add socket handler