It looks not so neat because we could not handle NonActiveSimCardError right here because we could not get message object for resend in this request error handler. I have to early return to avoid the error prompt here and trigger dialog in message failed callback.