def setUp(self): super(APITest, self).setUp() self.factory = RequestFactory() self.supervisor_admin = self.crear_supervisor_profile( rol=User.ADMINISTRADOR) self.supervisor = self.crear_supervisor_profile(rol=User.SUPERVISOR) self.agente_profile = self.crear_agente_profile() self.campana_activa = CampanaFactory.create( estado=Campana.ESTADO_ACTIVA) self.campana_activa_supervisor = CampanaFactory.create( estado=Campana.ESTADO_ACTIVA) self.campana_activa_supervisor.supervisors.add(self.supervisor.user) self.campana_finalizada = CampanaFactory( estado=Campana.ESTADO_FINALIZADA) self.queue = QueueFactory.create(campana=self.campana_activa) self.queue2 = QueueFactory.create( campana=self.campana_activa_supervisor) self.queue3 = QueueFactory.create(campana=self.campana_finalizada) QueueMemberFactory.create(member=self.agente_profile, queue_name=self.queue) self.sistema_externo = SistemaExternoFactory() self.opcion_calificacion = OpcionCalificacionFactory( campana=self.campana_activa) self.calificacion_cliente = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion, agente=self.agente_profile) for user in User.objects.all(): Token.objects.create(user=user)
def setUp(self): self.agente_1 = self.crear_agente_profile() self.agente_2 = self.crear_agente_profile() self.supervisor = self.crear_supervisor_profile() self.campana_preview = CampanaFactory.create( type=Campana.TYPE_PREVIEW, tiempo_desconexion=2, estado=Campana.ESTADO_ACTIVA) QueueFactory.create(campana=self.campana_preview) self._hacer_miembro(self.agente_1, self.campana_preview) self._hacer_miembro(self.agente_2, self.campana_preview) self.contacto_1 = ContactoFactory.create(bd_contacto=self.campana_preview.bd_contacto) self.contacto_2 = ContactoFactory.create(bd_contacto=self.campana_preview.bd_contacto) self.campana_preview.establecer_valores_iniciales_agente_contacto(False, False) self.client.login(username=self.agente_1.user.username, password=PASSWORD)
def setUp(self): super(CalificacionTests, self).setUp() self.agente_profile = self.crear_agente_profile() self.usuario_agente = self.agente_profile.user self.campana = CampanaFactory.create() self.nombre_opcion_gestion = NombreCalificacionFactory.create() self.nombre_calificacion_agenda = NombreCalificacion.objects.get( nombre=settings.CALIFICACION_REAGENDA) self.formulario = FormularioFactory() self.campo_formulario = FieldFormularioFactory(formulario=self.formulario) self.opcion_calificacion_gestion = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_opcion_gestion.nombre, tipo=OpcionCalificacion.GESTION, formulario=self.formulario) self.opcion_calificacion_agenda = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_calificacion_agenda.nombre, tipo=OpcionCalificacion.AGENDA) self.opcion_calificacion_camp_manual = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_opcion_gestion.nombre) self.opcion_calificacion_no_accion = OpcionCalificacionFactory.create( campana=self.campana, tipo=OpcionCalificacion.NO_ACCION) self.contacto = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto) self.queue = QueueFactory.create(campana=self.campana) self.calificacion_cliente = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_camp_manual, agente=self.agente_profile, contacto=self.contacto) QueueMemberFactory.create(member=self.agente_profile, queue_name=self.queue) self.client.login(username=self.usuario_agente.username, password=PASSWORD)
def _hacer_miembro(self, usuario_agente, campana): agente = usuario_agente.get_agente_profile() queue = QueueFactory.create(campana=campana) QueueMemberFactory.create(member=agente, queue_name=queue, id_campana='{0}_{1}'.format( campana.pk, campana.nombre))
def setUp(self): super(APITest, self).setUp() self.factory = RequestFactory() self.supervisor_admin = self.crear_supervisor_profile( rol=User.ADMINISTRADOR) self.supervisor = self.crear_supervisor_profile(rol=User.SUPERVISOR) self.agente_profile = self.crear_agente_profile() self.campana_activa = CampanaFactory.create( estado=Campana.ESTADO_ACTIVA, type=Campana.TYPE_MANUAL, nombre='activa uno') self.campana_activa_2 = CampanaFactory.create( estado=Campana.ESTADO_ACTIVA, type=Campana.TYPE_PREVIEW, nombre='activa dos') self.campana_activa_supervisor = CampanaFactory.create( estado=Campana.ESTADO_ACTIVA, type=Campana.TYPE_ENTRANTE, nombre='activa supervisor uno') self.campana_activa_supervisor.supervisors.add(self.supervisor.user) self.campana_finalizada = CampanaFactory( estado=Campana.ESTADO_FINALIZADA) self.queue = QueueFactory.create(campana=self.campana_activa) self.queue1 = QueueFactory.create(campana=self.campana_activa_2) self.queue2 = QueueFactory.create( campana=self.campana_activa_supervisor) self.queue3 = QueueFactory.create(campana=self.campana_finalizada) QueueMemberFactory.create(member=self.agente_profile, queue_name=self.queue) self.sistema_externo = SistemaExternoFactory() self.opcion_calificacion = OpcionCalificacionFactory( campana=self.campana_activa) self.contacto = ContactoFactory( bd_contacto=self.campana_activa.bd_contacto) self.calificacion_cliente = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion, agente=self.agente_profile, contacto=self.contacto) for user in User.objects.all(): Token.objects.create(user=user)
def _setUp_campana_dialer(self): self.campana_dialer = CampanaFactory.create(type=Campana.TYPE_DIALER) self.campana_dialer.opciones_calificacion.add(self.opcion_calificacion_gestion) self.campana_dialer.opciones_calificacion.add(self.opcion_calificacion_agenda) self.contacto_dialer = ContactoFactory.create() self.campana_dialer.bd_contacto.contactos.add(self.contacto_dialer) self.queue_dialer = QueueFactory.create(campana=self.campana_dialer) QueueMemberFactory.create(member=self.agente_profile, queue_name=self.queue_dialer)
def setUp(self): super(CalificacionTests, self).setUp() self.agente_1 = self.crear_agente_profile() self.agente_2 = self.crear_agente_profile() self.agente_3 = self.crear_agente_profile() self.supervisor = self.crear_supervisor_profile() self.campana = CampanaFactory.create(estado=Campana.ESTADO_ACTIVA, type=Campana.TYPE_MANUAL) self.campana.supervisors.add(self.supervisor.user) self.nombre_calificacion_agenda = NombreCalificacion.objects.get( nombre=settings.CALIFICACION_REAGENDA) self.opcion_calificacion_agenda = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_calificacion_agenda.nombre, tipo=OpcionCalificacion.AGENDA) self.contacto_1 = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto_1) self.contacto_2 = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto_2) self.calificacion_1 = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_agenda, agente=self.agente_1, contacto=self.contacto_1) self.agenda_1 = AgendaContactoFactory( agente=self.agente_1, contacto=self.contacto_1, campana=self.campana, tipo_agenda=AgendaContacto.TYPE_PERSONAL) self.calificacion_2 = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_agenda, agente=self.agente_2, contacto=self.contacto_2) self.agenda_2 = AgendaContactoFactory( agente=self.agente_2, contacto=self.contacto_2, campana=self.campana, tipo_agenda=AgendaContacto.TYPE_PERSONAL) self.queue = QueueFactory.create(campana=self.campana) QueueMemberFactory.create(member=self.agente_1, queue_name=self.queue) QueueMemberFactory.create(member=self.agente_2, queue_name=self.queue) self.client.login(username=self.supervisor.user.username, password=PASSWORD)
def setUp(self): super(ReporteDeLLamadasEntrantesDeSupervisionTest, self).setUp() self.generador = GeneradorDeLlamadaLogs() self.agente1 = self.crear_agente_profile() self.agente2 = self.crear_agente_profile() self.entrante1 = CampanaFactory.create(type=Campana.TYPE_ENTRANTE, nombre='camp-entrante-1', estado=Campana.ESTADO_ACTIVA) self.opcion_calificacion = OpcionCalificacionFactory(campana=self.entrante1, tipo=OpcionCalificacion.GESTION) # Campaña que no debe estar en los reportes por no ser del supervisor self.entrante2 = CampanaFactory.create(type=Campana.TYPE_ENTRANTE, nombre='camp-entrante-2', estado=Campana.ESTADO_ACTIVA) self.queue = QueueFactory.create(campana=self.entrante1)
def test_calificar_usando_opcion_con_regla_de_incidencia_impacta_wombat( self, set_call_ext_status): agente = self.crear_agente_profile() self.client.logout() self.client.login(username=agente.user.username, password=PASSWORD) queue = QueueFactory.create(campana=self.campana) QueueMemberFactory.create(member=agente, queue_name=queue) dialer_call_id = '12345' regla = ReglaIncidenciaPorCalificacion( opcion_calificacion=self.opcion_calificacion_1, intento_max=5, reintentar_tarde=60, en_modo=ReglaIncidenciaPorCalificacion.FIXED) regla.save() call_data = { "id_campana": self.campana.id, "campana_type": self.campana.type, "telefono": "3512349992", "call_id": '123456789', "call_type": "1", "id_contacto": self.contacto.id, "rec_filename": "", "call_wait_duration": "", 'dialer_id': dialer_call_id, } url = reverse('calificar_llamada', kwargs={'call_data_json': json.dumps(call_data)}) post_data = { 'opcion_calificacion': self.opcion_calificacion_1.id, 'contacto_form-telefono': self.contacto.telefono, } response = self.client.post(url, post_data, follow=True) self.assertEqual(response.status_code, 200) url_notify = '/api/calls/?op=extstatus&wombatid={0}&status={1}'.format( dialer_call_id, regla.wombat_id) set_call_ext_status.assert_called_with(url_notify)
def setUp(self): self.factory = RequestFactory() self.supervisor_admin = SupervisorProfileFactory(is_administrador=True) self.supervisor_admin.user.set_password(self.PWD) self.supervisor_admin.user.save() self.supervisor = SupervisorProfileFactory(is_administrador=False) self.supervisor.user.set_password(self.PWD) self.supervisor.user.save() self.agente_profile = AgenteProfileFactory() self.agente_profile.user.set_password(self.PWD) self.agente_profile.user.is_agente = True self.agente_profile.user.save() self.campana_activa = CampanaFactory.create( estado=Campana.ESTADO_ACTIVA) self.campana_activa_supervisor = CampanaFactory.create( estado=Campana.ESTADO_ACTIVA) self.campana_activa_supervisor.supervisors.add(self.supervisor.user) self.campana_finalizada = CampanaFactory( estado=Campana.ESTADO_FINALIZADA) self.queue = QueueFactory.create(campana=self.campana_activa) QueueMemberFactory.create(member=self.agente_profile, queue_name=self.queue) self.sistema_externo = SistemaExternoFactory() self.opcion_calificacion = OpcionCalificacionFactory( campana=self.campana_activa) self.calificacion_cliente = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion, agente=self.agente_profile) for user in User.objects.all(): Token.objects.create(user=user)
def _hacer_miembro(self, usuario_agente, campana): agente = usuario_agente.get_agente_profile() queue = QueueFactory.create(campana=campana) QueueMemberFactory.create( member=agente, queue_name=queue, id_campana=campana.get_queue_id_name())