if a users unsubscribes form a channel, currently the subscription is simply deleted.
some users (so one of our clients) is importing a fresh list of recipients (export of a crm tool) each time before he sends out a new newsletter.
this way he might re-import already unsubscribed adresses.
one possible solution would be to notify the portal's admin, or the channel administrator (which would be a new property on the channel) that email xy has unsubscribed from a certain channel.
another way would be to add subscription data to the subscriber-export. and add a new property unsubscribed=True/False there. when sending out newsletters, this flag gets respected.
currently i'm using this snippet (self.context is a newsletter channel) to get a list of all subscriptions including their pending state, last send time and their secret
subs = [item for item in self.context.subscriptions.query(format='html')]
info = [(sub.composer_data['email'], sub.metadata.get('pending','imported'), sub.metadata.get('cue', 'never-received-newsletter'), sub) for sub in subs]
from collective.dancing.composer import HTMLComposer
for i in info: print "%s;%s;%s;%s" % (i[0], i[1], i[2], HTMLComposer.secret(i[3].composer_data) )
if a users unsubscribes form a channel, currently the subscription is simply deleted.
some users (so one of our clients) is importing a fresh list of recipients (export of a crm tool) each time before he sends out a new newsletter.
this way he might re-import already unsubscribed adresses.
one possible solution would be to notify the portal's admin, or the channel administrator (which would be a new property on the channel) that email xy has unsubscribed from a certain channel.
another way would be to add subscription data to the subscriber-export. and add a new property
unsubscribed=True/Falsethere. when sending out newsletters, this flag gets respected.currently i'm using this snippet (
self.contextis a newsletter channel) to get a list of all subscriptions including their pending state, last send time and their secret