implement server side dissconect using threading.Timer (there are still bugs)