added socket delegate