invoke callback function with scope of router if no scope if provided