def test_devuelve_correctamente_values_campana_dialer_asterisk(self): """ este test testea los values del diccionario de la family de la campana dialer """ servicio = CampanaFamily() dict_campana = servicio._create_dict(self.campana_dialer) nombre_campana = self.campana_dialer.get_queue_id_name() self.assertEqual(dict_campana['QNAME'], nombre_campana) self.assertEqual(dict_campana['TYPE'], self.campana_dialer.type) self.assertEqual(dict_campana['REC'], str(self.campana_dialer.queue_campana.auto_grabacion)) self.assertEqual( dict_campana['AMD'], str(self.campana_dialer.queue_campana.detectar_contestadores)) self.assertEqual(dict_campana['CALLAGENTACTION'], self.campana_dialer.tipo_interaccion) self.assertEqual(dict_campana['RINGTIME'], "") self.assertEqual(dict_campana['QUEUETIME'], self.campana_dialer.queue_campana.wait) self.assertEqual(dict_campana['MAXQCALLS'], self.campana_dialer.queue_campana.maxlen) self.assertEqual(dict_campana['SL'], self.campana_dialer.queue_campana.servicelevel) audio = "{0}{1}".format( settings.OML_AUDIO_FOLDER, self.campana_dialer.queue_campana.audio_para_contestadores. get_filename_audio_asterisk()) self.assertEqual(dict_campana['AMDPLAY'], audio) self.assertEqual(dict_campana['TC'], "") self.assertEqual(dict_campana['IDJSON'], "") self.assertEqual(dict_campana['PERMITOCCULT'], "") self.assertEqual(dict_campana['MAXCALLS'], "") self.assertEqual(dict_campana['FAILOVER'], str(0))
def test_devuelve_diccionario_con_datos_correctos_preview(self): dict = { 'QNAME': self.campana_preview.get_queue_id_name(), 'TYPE': self.campana_preview.type, 'REC': str(self.campana_preview.queue_campana.auto_grabacion), 'AMD': str(self.campana_preview.queue_campana.detectar_contestadores), 'CALLAGENTACTION': self.campana_preview.tipo_interaccion, 'RINGTIME': "", 'QUEUETIME': self.campana_preview.queue_campana.wait, 'MAXQCALLS': self.campana_preview.queue_campana.maxlen, 'SL': self.campana_preview.queue_campana.servicelevel, 'OUTR': "", 'OUTCID': "", 'IDEXTERNALURL': "", 'FAILOVER': "0", 'TC': "", # a partir de esta variable no se usan las siguientes variables: 'IDJSON': "", 'PERMITOCCULT': "", 'MAXCALLS': "", 'VIDEOCALL': 'False', } family = CampanaFamily() self.assertEqual(dict, family._create_dict(self.campana_preview))
class ActivacionQueueService(object): """ Sincronizador de configuracion de Campaña / Queue """ def __init__(self): self.queues_config_creator = QueuesCreator() self.reload_asterisk_config = AsteriskConfigReloader() self.asterisk_database = CampanaFamily() def _generar_y_recargar_configuracion_asterisk(self): proceso_ok = True mensaje_error = "" try: self.queues_config_creator.create_dialplan() except Exception: logger.exception( _("ActivacionQueueService: error al " "intentar queues_config_creator()")) proceso_ok = False mensaje_error += (_("Hubo un inconveniente al crear el archivo de " "configuracion del queues de Asterisk. ")) if not proceso_ok: raise (RestablecerDialplanError(mensaje_error)) else: self.reload_asterisk_config.reload_asterisk() self.asterisk_database.regenerar_families() def activar(self): self._generar_y_recargar_configuracion_asterisk()
def test_falla_key_dict_campana_asterisk(self): """ este test testea el diccionario de la family de la campana y no encuentra key """ servicio = CampanaFamily() dict_campana = servicio._create_dict(self.campana_entrante) self.assertNotIn('WAITTIME', dict_campana.keys()) self.assertNotIn('DELAY', dict_campana.keys())
def test_values_de_configuraciones_de_agentes_no_seteadas_dialer(self): ConfiguracionDeAgentesDeCampanaFactory(campana=self.campana_dialer, set_auto_attend_inbound=False, set_auto_attend_dialer=False, set_auto_unpause=False, set_obligar_calificacion=False) servicio = CampanaFamily() dict_campana = servicio._create_dict(self.campana_dialer) self.assertNotIn('AUTO_ATTEND_INBOUND', dict_campana) self.assertNotIn('AUTO_ATTEND_DIALER', dict_campana) self.assertNotIn('FORCE_DISPOSITION', dict_campana) self.assertNotIn('AUTO_UNPAUSE', dict_campana)
def test_devuelve_correctamente_dict_campana_asterisk(self): """ este test testea el diccionario de la family de la campana """ servicio = CampanaFamily() dict_campana = servicio._create_dict(self.campana_entrante) keys_asterisk = ['QNAME', 'TYPE', 'REC', 'AMD', 'CALLAGENTACTION', 'RINGTIME', 'QUEUETIME', 'MAXQCALLS', 'SL', 'TC', 'IDJSON', 'PERMITOCCULT', 'MAXCALLS', 'FAILOVER'] for key in keys_asterisk: self.assertIn(key, dict_campana.keys())
def form_valid(self, form): configuracion = form.save(commit=False) configuracion.campana = self.campana configuracion.save() url_por_tipo = { Campana.TYPE_MANUAL: 'campana_manual_list', Campana.TYPE_DIALER: 'campana_dialer_list', Campana.TYPE_ENTRANTE: 'campana_list', Campana.TYPE_PREVIEW: 'campana_preview_list' } campana_service = CampanaFamily() campana_service.regenerar_family(self.campana) return redirect(url_por_tipo[self.campana.type])
def test_devuelve_correctamente_value_MOH_campana_entrante_asterisk(self): playlist = PlaylistFactory() self.campana_entrante.queue_campana.musiconhold = playlist servicio = CampanaFamily() dict_campana = servicio._create_dict(self.campana_entrante) self.assertEqual(dict_campana['MOH'], playlist.nombre)
def __init__(self): self.queues_config_creator = QueuesCreator() self.reload_asterisk_config = AsteriskConfigReloader() self.asterisk_database = CampanaFamily()