示例#1
0
def convert_agent_numbers(agent_numbers):
    agent_ids = []
    agent_number_list = agent_numbers.split(',')
    for agent_number in agent_number_list:
        agent_id = agent_helper.find_agent_id_with_number(agent_number.strip())
        agent_ids.append(agent_id)
    return agent_ids
示例#2
0
def convert_agent_numbers(agent_numbers):
    agent_ids = []
    agent_number_list = agent_numbers.split(',')
    for agent_number in agent_number_list:
        agent_id = agent_helper.find_agent_id_with_number(agent_number.strip())
        agent_ids.append(agent_id)
    return agent_ids
示例#3
0
def add_configuration_with_agent(config_name, work_start, work_end, agent_number):
    delete_confs_with_name(config_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)

    conf = _build_base_configuration(config_name, work_start, work_end)
    conf.agent = [agent_id]

    world.ws.statconfs.add(conf)
示例#4
0
def add_configuration_with_agent(config_name, work_start, work_end,
                                 agent_number):
    delete_confs_with_name(config_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)

    conf = _build_base_configuration(config_name, work_start, work_end)
    conf.agent = [agent_id]

    world.ws.statconfs.add(conf)
def then_i_receive_a_message_on_the_queue_with_data(step, expected_message, queue):
    events = bus_helper.get_messages_from_bus(queue)
    local_xivo_uuid = xivo_helper.get_uuid()

    for expected_event in step.hashes:
        raw_expected_event = {'name': expected_message,
                              'data': {}}

        if 'status' in expected_event:
            raw_expected_event['data']['status'] = expected_event['status']
        if 'to' in expected_event:
            raw_expected_event['data']['to'] = json.loads(expected_event['to'])
        if 'alias' in expected_event:
            raw_expected_event['data']['alias'] = expected_event['alias']
        if 'msg' in expected_event:
            raw_expected_event['data']['msg'] = expected_event['msg']

        if expected_event.get('origin_uuid', 'no') == 'yes':
            raw_expected_event['origin_uuid'] = local_xivo_uuid

        if expected_event.get('user_id', 'no') == 'yes':
            user = user_helper.get_by_firstname_lastname(expected_event['firstname'],
                                                         expected_event['lastname'])
            raw_expected_event['data']['user_id'] = user['id']

        if expected_event.get('user_uuid', 'no') == 'yes':
            user = user_helper.get_by_firstname_lastname(expected_event['firstname'],
                                                         expected_event['lastname'])
            raw_expected_event['data']['user_uuid'] = user['uuid']

        if expected_event.get('id', 'no') == 'ANY':
            raw_expected_event['data']['id'] = ANY

        if expected_event.get('uuid', 'no') == 'ANY':
            raw_expected_event['data']['uuid'] = ANY

        if expected_event.get('endpoint_id', 'no') == 'yes':
            line = line_read_helper.get_with_exten_context(expected_event['number'],
                                                           expected_event['context'])
            raw_expected_event['data']['endpoint_id'] = line['id']
            raw_expected_event['data']['status'] = int(expected_event['status'])

        if expected_event.get('agent_id', 'no') == 'yes':
            agent_id = agent_helper.find_agent_id_with_number(expected_event['agent_number'])
            raw_expected_event['data']['agent_id'] = agent_id

        if expected_event.get('from', 'no') == 'yes':
            user = user_helper.get_by_firstname_lastname(expected_event['firstname'],
                                                         expected_event['lastname'])
            from_ = [local_xivo_uuid, user['uuid']]
            raw_expected_event['data']['from'] = from_

        if expected_event.get('call_id') == 'ANY':
            raw_expected_event['data']['call_id'] = ANY

        assert_that(events, has_item(has_entries(raw_expected_event)))
示例#6
0
def add_configuration_with_queue_and_agent(config_name, work_start, work_end, queue_name, agent_number):
    delete_confs_with_name(config_name)
    queue_id = queue_helper.find_queue_id_with_name(queue_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)

    conf = _build_base_configuration(config_name, work_start, work_end)
    conf.queue = [queue_id]
    conf.queue_qos = {queue_id: 10}
    conf.agent = [agent_id]

    world.ws.statconfs.add(conf)
示例#7
0
def open_agent_stat_page_on_day(agent_number, day, config_name):
    conf_id = stat_helper.find_conf_id_with_name(config_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    host = world.config.xivo_host

    uri = '''https://%s/statistics/call_center/index.php/data/stats2''' % host
    qry = '''confid=%s&key=agent-%s&axetype=day&dbeg=%s&dend=%s&dday=%s&dweek=2012-08-17&dmonth=2012-08&dyear=2012''' % (conf_id, agent_id, day, day, day)

    url = '%s?%s' % (uri, qry)

    world.browser.get(url)
示例#8
0
def open_agent_stat_page_on_day(agent_number, day, config_name):
    conf_id = stat_helper.find_conf_id_with_name(config_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    host = world.config.xivo_host

    uri = '''https://%s/statistics/call_center/index.php/data/stats2''' % host
    qry = '''confid=%s&key=agent-%s&axetype=day&dbeg=%s&dend=%s&dday=%s&dweek=2012-08-17&dmonth=2012-08&dyear=2012''' % (conf_id, agent_id, day, day, day)

    url = '%s?%s' % (uri, qry)

    world.browser.get(url)
示例#9
0
def add_configuration_with_queue_and_agent(config_name, work_start, work_end,
                                           queue_name, agent_number):
    delete_confs_with_name(config_name)
    queue_id = queue_helper.find_queue_id_with_name(queue_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)

    conf = _build_base_configuration(config_name, work_start, work_end)
    conf.queue = [queue_id]
    conf.queue_qos = {queue_id: 10}
    conf.agent = [agent_id]

    world.ws.statconfs.add(conf)
def complete_queue_member_infos(infos):
    result = {}
    if 'queue_name' in infos:
        result['queue_id'] = queue_helper.find_queue_id_with_name(infos['queue_name'])
    else:
        result['queue_id'] = infos['queue_id']
    if 'agent_number' in infos:
        result['agent_id'] = agent_helper.find_agent_id_with_number(infos['agent_number'])
    else:
        result['agent_id'] = int(infos['agent_id'])
    if 'penalty' in infos:
        result['penalty'] = int(infos['penalty'])
    return result
示例#11
0
def add_configuration_with_infos(config_name, work_start, work_end, data):
    delete_confs_with_name(config_name)

    list_queue_id = []
    dict_queue_id_qos = {}
    for q in data['queues']:
        queue_id = queue_helper.find_queue_id_with_name(q['name'])
        list_queue_id.append(queue_id)
        dict_queue_id_qos[queue_id] = q['qos']

    list_agent_id = []
    for agent_number in data['agents']:
        agent_id = agent_helper.find_agent_id_with_number(agent_number)
        list_agent_id.append(agent_id)

    conf = _build_base_configuration(config_name, work_start, work_end)
    conf.queue = list_queue_id
    conf.queue_qos = dict_queue_id_qos
    conf.agent = list_agent_id

    world.ws.statconfs.add(conf)
示例#12
0
def add_configuration_with_infos(config_name, work_start, work_end, data):
    delete_confs_with_name(config_name)

    list_queue_id = []
    dict_queue_id_qos = {}
    for q in data['queues']:
        queue_id = queue_helper.find_queue_id_with_name(q['name'])
        list_queue_id.append(queue_id)
        dict_queue_id_qos[queue_id] = q['qos']

    list_agent_id = []
    for agent_number in data['agents']:
        agent_id = agent_helper.find_agent_id_with_number(agent_number)
        list_agent_id.append(agent_id)

    conf = _build_base_configuration(config_name, work_start, work_end)
    conf.queue = list_queue_id
    conf.queue_qos = dict_queue_id_qos
    conf.agent = list_agent_id

    world.ws.statconfs.add(conf)
示例#13
0
def add_configuration_with_queue_and_agents(config_name, work_start, work_end, queues, agents):
    delete_confs_with_name(config_name)

    queue_names = queues.split(',')
    queue_ids = []
    queue_qos = {}
    for queue_name in queue_names:
        queue_id = queue_helper.find_queue_id_with_name(queue_name.strip())
        queue_ids.append(queue_id)
        queue_qos[queue_id] = 10

    agent_numbers = agents.split(',')
    agent_ids = []
    for agent_number in agent_numbers:
        agent_ids.append(agent_helper.find_agent_id_with_number(agent_number.strip()))

    conf = _build_base_configuration(config_name, work_start, work_end)
    conf.queue = queue_ids
    conf.queue_qos = queue_qos
    conf.agent = agent_ids

    world.ws.statconfs.add(conf)
示例#14
0
def add_configuration_with_queue_and_agents(config_name, work_start, work_end,
                                            queues, agents):
    delete_confs_with_name(config_name)

    queue_names = queues.split(',')
    queue_ids = []
    queue_qos = {}
    for queue_name in queue_names:
        queue_id = queue_helper.find_queue_id_with_name(queue_name.strip())
        queue_ids.append(queue_id)
        queue_qos[queue_id] = 10

    agent_numbers = agents.split(',')
    agent_ids = []
    for agent_number in agent_numbers:
        agent_ids.append(
            agent_helper.find_agent_id_with_number(agent_number.strip()))

    conf = _build_base_configuration(config_name, work_start, work_end)
    conf.queue = queue_ids
    conf.queue_qos = queue_qos
    conf.agent = agent_ids

    world.ws.statconfs.add(conf)
示例#15
0
def when_i_change_the_agent_password_to_group1(step, number, password):
    agent_id = agent_helper.find_agent_id_with_number(number)
    common.open_url('agent', 'editagent', {'group': '1', 'id': agent_id})
    agent_action_webi.change_password(password)
    form.submit.submit_form()
示例#16
0
def when_i_remove_agent_1_from_2(step, agent_number, queue_name):
    queue = queue_helper.get_queue_with_name(queue_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    queue.agents.remove(agent_id)
    world.ws.queues.edit(queue)
    time.sleep(10)
示例#17
0
def when_i_remove_agent_1_from_2(step, agent_number, queue_name):
    queue = queue_helper.get_queue_with_name(queue_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    queue.agents.remove(agent_id)
    world.ws.queues.edit(queue)
    time.sleep(10)
示例#18
0
def given_the_agent_group1_has_the_penalty_group2_for_the_queue_group3(step, agent_number, penalty, queue_name):
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    queue_helper.set_penalty_for_agent(queue_name, agent_id, int(penalty))
示例#19
0
def when_i_add_agent_1_to_2(step, agent_number, queue_name):
    queue = queue_helper.get_queue_with_name(queue_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    queue.agents.append(agent_id)
    world.ws.queues.edit(queue)
    time.sleep(5)
示例#20
0
def then_the_agent_group1_is_not_associated_to_queue_group2(step, agent_number, queue_name):
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    assert queue_helper.get_queue_member(queue_name, agent_id) is None
示例#21
0
def then_the_penalty_is_group1_for_queue_group2_and_agent_group3(step, penalty, queue_name, agent_number):
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    assert_that(queue_helper.get_penalty_for_agent(queue_name, agent_id), equal_to(int(penalty)))
示例#22
0
def when_10_simultaneous_agi_requests_are_done_to_get_the_status_of_agent_1001(step, nb_request, agent_number):
    nb_request = int(nb_request)

    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    agi.do_simultaneous_requests(nb_request, 'agent_get_status', [agent_id])
示例#23
0
def when_i_change_the_agent_password_to_group1(step, number, password):
    agent_id = agent_helper.find_agent_id_with_number(number)
    common.open_url('agent', 'editagent', {'group': '1', 'id': agent_id})
    agent_action_webi.change_password(password)
    form.submit.submit_form()
示例#24
0
def when_i_add_agent_1_to_2(step, agent_number, queue_name):
    queue = queue_helper.get_queue_with_name(queue_name)
    agent_id = agent_helper.find_agent_id_with_number(agent_number)
    queue.agents.append(agent_id)
    world.ws.queues.edit(queue)
    time.sleep(5)