def simulate_user()

in code/utility/get_fms_waf_policy.py [0:0]


def simulate_user(requestTimeStamp, args, country, headers = [], userAgents=[], method = 'GET', labels=[], ipName = 'user', initialURLList = [], minInitial = -1, maxInitial = -1, randomURLList= [], minRandom = 0, maxrandom = 0,finalURLList = [], minFinal = -1, maxFinal = -1):
    requests = []
    l = len(initialURLList)
    if userAgents == []:
        uAgent = ""
    else:
        uAgent = userAgents[random.randrange(0,len(userAgents)-1)]
    if not args == []:
        queryString = random.choice(args)
    else:
        queryString = ""
    ipDetails = source_ip_calculate(ipName, country)
    if minInitial == -1:
        minInitial = l
        maxInitial = l
    if maxInitial == -1:
        maxInitial = l
    if minFinal == -1:
        minFinal == l
        maxFinal == l
    if maxFinal == -1:
        maxFinal == l
    if maxInitial > l:
        maxInitial = l
    if minInitial > l:
        minInitial = l
    if not minInitial == maxInitial:
        y = random.randrange(minInitial,maxInitial)
    else:
        y = maxInitial
    #Make the initial Requests
    if not initialURLList == []:
        for x in range(0,y):
            #Go the general stuff
            request = fake_request(requestTimeStamp, method, headers, uAgent, queryString, ipDetails, country)
            request['httpRequest']['uri'] = rootURL + initialURLList[x]
            #print (request)
            requests.append(copy.deepcopy(request))
        #Make middle random requests
    if not minRandom == maxrandom:
        y = random.randrange(minRandom,maxrandom)
    else:
        y = maxInitial
    if not randomURLList == []:
        for x in range(0,y):
            #Go the general stuff
            request = fake_request(requestTimeStamp, method, headers, uAgent, queryString, ipDetails, country)
            request['httpRequest']['uri'] = random.choice(randomURLList)
            requests.append(copy.deepcopy(request))
    #Make final Requests
    if not minFinal == maxFinal:
        y = random.randrange(minFinal,maxFinal)
    else:
        y = maxFinal
    if not finalURLList == []:
        for x in range(0,y):
            #Go the general stuff
            request = fake_request(requestTimeStamp, method, headers, uAgent, queryString, ipDetails, country)
            request['httpRequest']['uri'] = finalURLList[x]
            requests.append(copy.deepcopy(request))
    return (requests)