Which ZCampaign function would accomplish the following:

Which ZCampaign function would accomplish the following:

  1. I get a call from someone with interest in my product,
  2. I add them as a Lead into my ZCRM, and I call them,
  3. We talk, I determine they're not quite ready to buy, but I want to stay in touch, so I check a checkbox or pick an item from a pick list on their ZCRM Lead record to add them to start a follow-up campaign, because I want to send a series of emails to increase their interest - a 1st template in one week, a 2nd template two weeks after the 1st, a 3rd template 4 weeks after the 2nd,
  4. Every week I'm adding Leads in similar situations, so ZCampaigns would be sending different email templates to different Leads depending on how much time has elapsed.
  5. Of course, if they buy, I want to halt the Campaign and not send any more of those templates, but I might want to start a different campaign for new customers with different emails on different timelines.
  6. And if they opt out, I want to halt the Campaign, obviously.
Which is the best way in ZCampaigns to accomplish this?

Thanks!