def test_devuelve_correctamente_values_campana_entrante_asterisk(self): """ este test testea los values del diccionario de la family de la campana entrante """ servicio = CampanaFamily() dict_campana = servicio._create_dict(self.campana_entrante) nombre_campana = "{0}_{1}".format(self.campana_entrante.id, self.campana_entrante.nombre) self.assertEqual(dict_campana['QNAME'], nombre_campana) self.assertEqual(dict_campana['TYPE'], self.campana_entrante.type) self.assertEqual(dict_campana['REC'], self.campana_entrante.queue_campana.auto_grabacion) self.assertEqual(dict_campana['AMD'], self.campana_entrante.queue_campana.detectar_contestadores) self.assertEqual(dict_campana['CALLAGENTACTION'], self.campana_entrante.tipo_interaccion) self.assertEqual(dict_campana['RINGTIME'], self.campana_entrante.queue_campana.timeout) self.assertEqual(dict_campana['QUEUETIME'], self.campana_entrante.queue_campana.wait) self.assertEqual(dict_campana['MAXQCALLS'], self.campana_entrante.queue_campana.maxlen) self.assertEqual(dict_campana['SL'], self.campana_entrante.queue_campana.servicelevel) audio = "{0}{1}".format( settings.OML_AUDIO_FOLDER, self.campana_entrante.queue_campana.audio_de_ingreso.get_filename_audio_asterisk()) self.assertEqual(dict_campana['WELCOMEPLAY'], 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)) self.assertNotIn('MOH', dict_campana['FAILOVER'])
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_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 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()