protected Dictionary <string, string> desasociaAgente(string numeroAgente, string numeroExtension, string direccionIP) { Dictionary <string, string> respuesta = new Dictionary <string, string>(); try { errMsg = ""; // Se marca la operación solicitada logger.Trace(string.Format("desasociaAgente agente:{0} extension:{1} ip:{2}", numeroAgente, numeroExtension, direccionIP)); if (clienteHuawey.desasociarAgente() != 0) { // Se detecto un error en la operación errMsg = "Error al intentar desasociar el agente. " + clienteHuawey.errMsg; logger.Error(errMsg); respuesta.Add("errCode", "0040"); respuesta.Add("errMsg", errMsg); return(respuesta); } // Se devuelve la respuesta a la operación respuesta.Add("errCode", "0000"); respuesta.Add("errMsg", "OK"); return(respuesta); } catch (Exception err) { // Se detecto un error en el procedimiento errMsg = "EXCEPCION: " + err.Message; logger.Error("Error en la operacion " + err.Message); respuesta.Add("errCode", "1002"); respuesta.Add("errMsg", errMsg); return(respuesta); } }
private void OnButtonAsociar(object sender, EventArgs e) { try { // Se valida el status del cliente if (!cliente.statusAsociacion) { OperacionActiva("Intentando asociar al agente."); textIDAgente.ReadOnly = true; textExtension.ReadOnly = true; AgregarMensajeBitacora(string.Format("Intentando asociar al agente {0} con la extensión {1}", textIDAgente.Text, textExtension.Text)); // Se invoca en segundo plano la operación new Thread(() => { try { logger.Trace("Invocacion en segundo plano de la asociacion agente. {0}-{1}", textIDAgente.Text, textExtension.Text); if (cliente.asociarAgente(textIDAgente.Text, textExtension.Text, "", "") == 0) { logger.Trace("Se logro asociar al agente con la extensión."); CierreOperacionActiva(CAMPOS_AGENTE_INACTIVOS | CAMPOS_TELEFONIA_ACTIVOS); } else { logger.Error("Error en la asociación del agente con la extensión. {0}", cliente.errMsg); CierreOperacionActiva(CAMPOS_AGENTE_ACTIVOS | CAMPOS_TELEFONIA_INACTIVOS); MessageBox.Show(string.Format("Error en la asociación del agente con la " + "extensión. {0}", cliente.errMsg), "Asociar Agente", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { // Se detecto un error en el procedimiento logger.Error("Se detecto un error en la asociacion del agente segundo plano. {0}", ex.Message, ex); } }).Start(); } else { OperacionActiva("Intentando desasociar al agente."); textIDAgente.ReadOnly = true; textExtension.ReadOnly = true; AgregarMensajeBitacora(string.Format("Intentando desasociar al agente {0}", textIDAgente.Text)); // Se invoca en segundo plano la operación new Thread(() => { try { logger.Trace("Invocacion en segundo plano de la desasociacion agente. {0}", textIDAgente.Text); if (cliente.desasociarAgente() == 0) { logger.Trace("Se logro desasociar al agente con la extensión."); CierreOperacionActiva(CAMPOS_AGENTE_ACTIVOS | CAMPOS_TELEFONIA_INACTIVOS); } else { logger.Error("Error en la desasociación del agente con la extensión. {0}", cliente.errMsg); CierreOperacionActiva(CAMPOS_AGENTE_ACTIVOS | CAMPOS_TELEFONIA_INACTIVOS); MessageBox.Show(string.Format("Error en la desasociación del agente con la " + "extensión. {0}", cliente.errMsg), "Desasociar Agente", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { // Se detecto un error en el procedimiento logger.Error("Se detecto un error en la desasociacion del agente segundo plano. {0}", ex.Message, ex); } }).Start(); } } catch (Exception ex) { // Se detecto un error en el procedimiento logger.Error("Error en el intento de asociacion/desasociación al IPCC.{0}", ex.Message, ex); } }