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
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)))
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 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)
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
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)
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)
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)
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()
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)
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))
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)
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
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)))
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])