add record callback