Caso de uso de regla de evento: mostrar activos 'conectados' (basado en proximidad) en la lista de activos

Puede darse el caso de que dos activos estén cerca uno del otro durante un largo período de tiempo, por ejemplo, un camión y un remolque, ambos con su rastreador. Y como usuario, puede que desee ver qué camión está conectado a qué remolque.

Cómo configurar:

1. Plugin Rendezvous

Inicie sesión en Administración del sitio (legacy)> Plugins > Obtener más plugins, descargue e instale el plugin Rendezvous.

2. Variable personalizada

Agregue una variable personalizada con el nombre de su elección (consulte Variables personalizadas para saber cómo agregar una variable personalizada). En este ejemplo, la variable se llama AttachedTo.

Screenshot 2024-10-24 at 12.13.28.png

3. Regla de evento

  1. Cree una nueva regla de evento

    • nómbrela adecuadamente
    • establezca a qué Grupos (Etiquetas) se aplicará
    • defina cuándo la regla estará activa
  2. En Expresiones, agregue una Expresión de Script (asegúrese de tener el privilegio _EditScriptExpression activado, por favor siga esta guía si no es visible) y agregue el siguiente código:
    var st = context.state || { rvz_status: false, rvz_timestamp: null, rvz_name: null};
    var searchtag = 'Trailers'; //Cambiar al nombre del Grupo (Etiqueta) que contiene el/los dispositivo(s) que desea buscar
    var searchtagobj = session.directory.getTag(searchtag);
    var searchtagid = searchtagobj.id;
    var r = rendezvous.findAny(searchtagid,'Enter',10); //Dentro de 10 metros
    if(r != null) {
    st.rvz_name = r.name;
    st.rvz_status = true;
    st.rvz_timestamp = new Date();
    context.setVariable("UnitName", r.name);
    context.setState(st);
    return true;
    }
    else {
    var newdate = new Date();
    var timestamp = new Date(st.rvz_timestamp);
    var time_diff = newdate.getTime() - timestamp.getTime();
    if(st.rvz_status == true && time_diff > 300000) { //En milisegundos
    st.rvz_name = null;
    st.rvz_status = false;
    st.rvz_timestamp = null;
    context.setVariable("UnitName", "");
    }
    else {
    context.setVariable("UnitName", st.rvs_name);
    }
    context.setState(st);
    return false;
    }

  3. En Notificaciones, configure como se ve en la captura de pantalla. Por favor, escriba [UnitName] en el campo 'Fuente'.

mceclip1.png

   4. Guardar

4. Variable personalizada en la lista de activos

Agregue la variable personalizada 'AttachedTo' a la lista de activos. Por favor, vaya a Administrar-columnas-agregar-variables-en-el-panel-de-activos para más información sobre cómo hacerlo.

5. Resultado

Ahora, cuando un activo esté cerca de otro activo y los criterios en el script coincidan, obtendrá un resultado como este:

Nota: Puede probar esta regla creando simuladores y nombrándolos Camiones y Remolques, e incluyendo los Camiones/Remolques (que desea ver en la columna 'AttachedTo') en el Grupo (Etiqueta). Por favor, recuerde cambiar el nombre del Grupo (Etiqueta) en el código (donde tiene el comentario //Cambiar al nombre del Grupo (Etiqueta) que contiene el/los dispositivo(s) que desea buscar) al Grupo (Etiqueta) que creó.