working on socket io