def validate_associate_agent_queue(queue_id, agent_id): if not _queue_exists(queue_id): raise errors.not_found('Queue', queue_id=queue_id) if not _agent_exists(agent_id): raise errors.param_not_found('agent_id', 'Agent') try: queue_members_dao.get_by_queue_id_and_agent_id(queue_id, agent_id) raise errors.resource_associated('Agent', 'Queue', agent_id, queue_id) except NotFoundError: pass
def test_edit_agent_queue_association(self): agent_id = 23 queue_id = 2 penalty = 4 queue_name = 'myqueue' self.add_queuefeatures(id=queue_id, name=queue_name) self.add_agent(id=agent_id, number='1200') self.add_queue_member(queue_name=queue_name, interface='Agent/1200', penalty=penalty, usertype='agent', userid=agent_id, channel='Agent', category='queue') queue_member = QueueMemberAgent(agent_id=agent_id, queue_id=queue_id, penalty=6) queue_members_dao.edit_agent_queue_association(queue_member) assert_that(queue_members_dao.get_by_queue_id_and_agent_id(queue_id, agent_id), has_property('penalty', 6))
def test_get_by_queue_and_agent_id(self): agent_id = 23 queue_id = 2 penalty = 5 queue_name = 'myqueue' self.add_queuefeatures(id=queue_id, name=queue_name) self.add_agent(id=agent_id, number='1200') self.add_queue_member(queue_name=queue_name, interface='Agent/1200', penalty=penalty, usertype='agent', userid=agent_id, channel='Agent', category='queue') result = queue_members_dao.get_by_queue_id_and_agent_id(queue_id, agent_id) assert_that(result, all_of(has_property('penalty', penalty), has_property('agent_id', agent_id), has_property('queue_id', queue_id)))
def validate_remove_agent_from_queue(agent_id, queue_id): if not _queue_exists(queue_id): raise errors.not_found('Queue', queue_id=queue_id) if not _agent_exists(agent_id): raise errors.not_found('Agent', agent_id=agent_id) queue_members_dao.get_by_queue_id_and_agent_id(queue_id, agent_id)
def validate_edit_agent_queue_association(queue_member): if not _queue_exists(queue_member.queue_id): raise errors.not_found('Queue', queue_id=queue_member.queue_id) if not _agent_exists(queue_member.agent_id): raise errors.not_found('Agent', agent_id=queue_member.agent_id) queue_members_dao.get_by_queue_id_and_agent_id(queue_member.queue_id, queue_member.agent_id)