add ring-async