コード例 #1
0
ファイル: OM2MC.py プロジェクト: JohannMG/OM2MC-Python
def printSurveyNameList(): 
    today = datetime.now()

    #no gap, just to get list info
    res = ommc.getSurveyAllData(today, today)
    resObject = res.json()

    for survey in resObject: 
        print '{} {}'.format(survey['Name'], survey['Id'])
コード例 #2
0
ファイル: tests.py プロジェクト: JohannMG/OM2MC-Python
def TESTextractFieldsFromResponses():
    surveySample = {
    "Id" : 48688, 
    "SurveyResponses": [
        {
            "SurveyResponseID": 1618161487,
            "Responses": [
                { "QId": 01561156, "Res": "dGVzdEB0ZXN0dHQuY29t"},
                { "QId": 1564, "Res": "0000"},
                { "QId": 456, "Res": "NDMyODc="}
            ]
        }, 
        {
            "SurveyResponseID": 4878456,
            "Responses": [
                { "QId": 445, "Res": "dGhpc0B0aGlzLmNvbQ=="},
                { "QId": 111222, "Res": "4444"},
                { "QId": 78, "Res": ""}
            ]
        }
    ]
}

    results = OMdata.extractFieldsFromResponses(surveySample, 0, {2:'ZIP'})


    '''should return:
    [
        {
            'merge_vars': {
                'LOCATION': 'Baltimore', 
                'zip': '43287'
            }, 

            'email': {'email': '*****@*****.**'}, 
            'email_type': 'html'
        }, 
        {
            'merge_vars': {
                'LOCATION': 'Baltimore', 
                'zip': ''
            }, 

            'email': {'email': '*****@*****.**'}, 
            'email_type': 'html'
        }
    ]
    '''

    if ( results[0]['merge_vars']['ZIP'] == '43287' and 
            results[1]['email']['email'] == '*****@*****.**'):
        print 'OMdata.extractFieldsFromResponses() [PASSES]'
    else: 
        print 'OMdata.extractFieldsFromResponses() [FAILS]'
コード例 #3
0
ファイル: OM2MC.py プロジェクト: JohannMG/OM2MC-Python
def runEmailLink(startDate, endDate):
    

    res = ommc.getSurveyAllData(startDate, endDate)
    resObject = res.json()

    mergevars = dex.getMailchimpOtherMergeVars() 
    ''' e.g.: {  'POSTAL': ['zip', 'zipcode', 'postal']  }'''
    
    mailchimpBatch = []

    for survey in resObject: 
        emailIndex = ommc.getEmailQuestionIndex(survey)
        if emailIndex == None:
            continue; 

        mergedict = {}
        for m in mergevars.keys():
            mmIndex = ommc.getQuestionIndexFromStrings(survey, mergevars[m])
            if mmIndex != None: 
                mergedict[mmIndex] = m
        
        
        extracted = ommc.extractFieldsFromResponses(survey, emailIndex, mergedict) 
        mailchimpBatch = mailchimpBatch + extracted

    ommc.subcribeNewUsers( mailchimpBatch )
コード例 #4
0
ファイル: tests.py プロジェクト: JohannMG/OM2MC-Python
def TESTgetQuestionIndexFromStrings():
    sur = {
        'LNGS': [
            {'QUES' : [
                    {'Id': 'wrong', 'Type': 7, 'Text': 'lorem ip', 'IsHiddenQues': False},
                    {'Id': 'wrong 2', 'Type': 5, 'Text': 'ringd zip dingding', 'IsHiddenQues': False},
                    {'Id': 'correct', 'Type': 7, 'Text': 'I want fjksd please', 'IsHiddenQues': False}
                ]
            }
        ]    
    }

    results = OMdata.getQuestionIndexFromStrings(sur, ['hnksf', 'zip'])

    if (results == 1): 
        print 'getQuestionIndexFromStrings() [PASSES]'
    else:  
        print 'getQuestionIndexFromStrings() [FAILS]'
コード例 #5
0
ファイル: tests.py プロジェクト: JohannMG/OM2MC-Python
def TESTgetEmailQuestionIndex():
    sur = {
        'LNGS': [
            {'QUES' : [
                    {'Id': 'wrong', 'Type': 7, 'Text': 'lorem ip', 'IsHiddenQues': False},
                    {'Id': 'wrong 2', 'Type': 5, 'Text': 'ringdingdingding', 'IsHiddenQues': False},
                    {'Id': 'correct', 'Type': 7, 'Text': 'I want email please', 'IsHiddenQues': False}
                ]
            }
        ]    
    }

    results = OMdata.getEmailQuestionIndex(sur)

    if (results == 2): 
        print 'getEmailQuestionIndex() [PASSES]'
    else:
        print 'getEmailQuestionIndex() [FAILS]'
コード例 #6
0
ファイル: tests.py プロジェクト: JohannMG/OM2MC-Python
def TESTgetQuestionIdFromStrings(): 
    sur = {
        'LNGS': [
            {'QUES' : [
                    {'Id': 'wrong', 'Type': 7, 'Text': 'lorem ip', 'IsHiddenQues': False},
                    {'Id': 'wrong 2', 'Type': 5, 'Text': 'ringdingdi email ngding', 'IsHiddenQues': False},
                    {'Id': 'correct', 'Type': 7, 'Text': 'I want zip please', 'IsHiddenQues': False}
                ]
            }
        ]    
    }

    results = OMdata.getQuestionIdFromStrings(sur, 'zip', 'postal')

    if (results == 'correct'): 
        print 'getQuestionIdFromStrings() [PASSES]'
    else:
        print 'getQuestionIdFromStrings() [FAILS]'