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 customer_service_detail(sms_dict, phone_number): customer_id = sms_dict.get('sap_customer_id', None) message = None try: customer_product_data = models.CouponData.objects.select_related('product').\ filter(product__customer_phone_number=phone_number, \ product__customer_id=customer_id).\ order_by('product', 'valid_days') if customer_id else \ models.CouponData.objects.select_related('product').\ filter(product__customer_phone_number=phone_number).\ order_by('product', 'valid_days') LOG.info(customer_product_data) valid_product_data = [] for data in customer_product_data: if data.status == 1 or data.status == 4: valid_product_data.append(data) valdata = [valid_product_data[0]] service_list = map(lambda object: {'vin': object.product.product_id, 'usc': object.unique_service_coupon, 'valid_days': object.valid_days, 'valid_kms':object.valid_kms}, valdata) template = templates.get_template('SEND_CUSTOMER_SERVICE_DETAIL') msg_list = [template.format(**key_args) for key_args in service_list] if not msg_list: raise Exception() message = ', '.join(msg_list) except Exception as ex: message = sms_parser.render_sms_template(status='invalid', keyword=sms_dict['keyword'], sap_customer_id=customer_id) LOG.info("Send Service detail %s" % message) phone_number = utils.get_phone_number_format(phone_number) sms_log(settings.BRAND, receiver=phone_number, action=AUDIT_ACTION, message=message) send_job_to_queue(send_service_detail, {"phone_number":phone_number, "message":message, "sms_client":settings.SMS_CLIENT}) return {'status': True, 'message': message}