def register_customer(sms_dict, phone_number):
    customer_name = sms_dict['name']
    email_id = sms_dict['email_id']
    try:
        object = models.UserProfile.objects.get(phone_number=phone_number)
        gladmind_customer_id = object.gladmind_customer_id
        customer_name = object.customer_name
    except ObjectDoesNotExist as odne:
        gladmind_customer_id = utils.generate_unique_customer_id()
        registration_date = datetime.now()
        user_feed = BaseFeed()
        user = user_feed.register_user('customer', username=gladmind_customer_id)

#             FIXME: Check this code is getting used or not
#             customer = models.UserProfile(
#                 user=user, gladmind_customer_id=gladmind_customer_id, phone_number=phone_number,
#                 customer_name=customer_name, email_id=email_id,
#                 registration_date=registration_date)
#             customer.save()

    # Please update the template variable before updating the keyword-argument
    message = sms_parser.render_sms_template(status='send', keyword=sms_dict['keyword'], customer_id=gladmind_customer_id)
    phone_number = utils.get_phone_number_format(phone_number)
    LOG.info("customer is registered with message %s" % message)
    sms_log(settings.BRAND, receiver=phone_number, action=AUDIT_ACTION, message=message)
    send_job_to_queue(send_registration_detail, {"phone_number":phone_number, "message":message, "sms_client":settings.SMS_CLIENT})
    return True
 def create_user(self, is_active, phone_number, email=None):
     consumer_id = generate_unique_customer_id()
     password = consumer_id+settings.PASSWORD_POSTFIX
     user_obj = User.objects.using(settings.BRAND).create(username=consumer_id)
     user_obj.set_password(password)
     user_obj.is_active = is_active
     if email:
         user_obj.email=email
     user_obj.save(using=settings.BRAND)
     consumer_obj = get_model('Consumer', settings.BRAND)(user=user_obj, phone_number=phone_number,
                                                           consumer_id=consumer_id)
     consumer_obj.save(using=settings.BRAND)
     return {'consumer_obj': consumer_obj}