Exemple #1
0
def _sendMail(to,
              message_subject,
              message_body,
              cc='',
              reply_to='',
              is_html=False):

    # check to
    if to is None or str(to).strip() == '':
        logging.error('to is None')
        return False, 'invalid_to'
    if not mail.IsEmailValid(to):
        logging.error('invalid to=' + str(to))
        return False, 'invalid_to'
    # check cc
    if cc is not None and str(cc).strip() != '':
        if not mail.IsEmailValid(cc):
            logging.error('invalid cc=' + str(cc))
            return False, 'invalid_cc'
    # check reply_to
    if reply_to is not None and str(reply_to) != '':
        if not mail.IsEmailValid(reply_to):
            logging.error('invalid reply_to=' + str(reply_to))
            return False, 'invalid_reply_to'
    # calc check_key
    now = UcfUtil.getNow()  # 標準時
    check_key = UcfUtil.md5(
        now.strftime('%Y%m%d%H%M') + MD5_SUFFIX_KEY_MAIL_SERVER +
        SENDER_ADDON_PROJECT_ID)
    # post data
    url = SATERAITO_MAIL_SERVER_URL + '/api/sendmail'
    values = {
        'addon_project_id': SENDER_ADDON_PROJECT_ID,
        'sender_email': MESSAGE_SENDER_EMAIL,
        'to': to,
        'cc': cc,
        'reply_to': reply_to,
        'message_subject': message_subject,
        'message_body': message_body,
        'is_html': str(is_html),
        'check_key': check_key,
    }
    headers = {}
    response = HttpPostAccess(url, values, headers)
    logging.info('response=' + str(response))
    try:
        response_dict = json.JSONDecoder().decode(response)
        if response_dict.get('status') != 'ok':
            return False, response_dict.get('error_code')
    except BaseException, e:
        logging.error('error: class name:' + e.__class__.__name__ +
                      ' message=' + str(e))
        return False, 'unexpected_error'
Exemple #2
0
	def createAccessKey(cls, helper, useragent_id, operator_unique_id):
		return UcfUtil.md5(useragent_id + '|' + operator_unique_id)
Exemple #3
0
	def createCookieKeyForAccessKey(cls, helper, operator_unique_id):
		return 'ACSDID' + UcfUtil.md5(helper.getDeptInfo()['unique_id'] + '|' + operator_unique_id)