Almost finished, still some little bug to fix, but the whole ping thing work well