mirror of
https://github.com/zulip/zulip.git
synced 2025-11-09 16:37:23 +00:00
This creates a new management command, subscribe_new_users, which should be run as a daemon process. When new users are created, an event is passed to RabbitMQ including the following data: * Email * Full name * IP address of the person who confirmed registration * Time of registration confirmation MailChimp strongly encourages the collection of the last two to enable responses to abuse requests, and providing more data lowers the chance that we could get banned from their service if complaints do occur. To use this commit, you need to install the "postmonkey" module from PyPI. (imported from commit 20c628c3fa8bb985aaead85a80ad3b38bf94b9dc)
23 lines
738 B
Python
23 lines
738 B
Python
import simplejson
|
|
from postmonkey import PostMonkey
|
|
from django.core.management.base import BaseCommand
|
|
from django.conf import settings
|
|
|
|
from zephyr.lib.queue import SimpleQueueClient
|
|
|
|
class Command(BaseCommand):
|
|
pm = PostMonkey(settings.MAILCHIMP_API_KEY, timeout=10)
|
|
|
|
def subscribe(self, ch, method, properties, data):
|
|
self.pm.listSubscribe(
|
|
id=settings.HUMBUG_FRIENDS_LIST_ID,
|
|
email_address=data['EMAIL'],
|
|
merge_vars=data['merge_vars'],
|
|
double_optin=False,
|
|
send_welcome=False)
|
|
|
|
def handle(self, *args, **options):
|
|
q = SimpleQueueClient()
|
|
q.register_json_consumer("signups", self.subscribe)
|
|
q.start_consuming()
|