add user rpc callback