roSnmpAgent
Cuando se crea este objeto, inicia un proceso SNMP que maneja algunos MIB SNMP estándar, como el tiempo de actividad del sistema. Antes de iniciar el agente SNMP, puede registrar otros OID para su manejo. Puede establecerlos y recuperarlos tanto mediante un cliente SNMP como mediante el script.
Los valores OID son recuperados por un cliente SNMP sin interacción del script. Establecer valores OID generará un objeto roSnmpEvent que indica que han sido modificados. El controlador de eventos del script puede entonces recuperar nuevos valores y realizar la acción apropiada.
Establecer un valor OID desde un cliente SNMP no bloquea al cliente esperando alguna acción del script; hay un retraso corto, pero indeterminado, para que los scripts actúen sobre un cambio de valor. Esto generalmente no es un problema debido a la forma en que están diseñados los MIB SNMP. Si desea proporcionar valores OID que se actualicen constantemente, puede actualizarlos utilizando un temporizador o cambios de estado.
El equivalente en JavaScript es net-snmp.
El objeto roSnmpAgent se crea con un roAssociativeArray opcional:
agent = CreateObject("roSnmpAgent")
A partir de BrightSignOS 8.3.20, los parámetros predeterminados a continuación se pueden proporcionar durante la construcción del objeto. Tenga en cuenta que cuando tanto ro_community como rw_community están establecidos, deben ser valores únicos. De lo contrario, simplemente proporcione rw_community:
- ro_community string optional: Establece la cadena de comunidad de lectura.
- rw_community string optional: Establece la cadena de comunidad de escritura.
ifSnmpAgent
AddOidHandler(oid_string As String, writable_flag As Boolean, initial_value As Object) As Boolean
Agrega un controlador OID con los siguientes parámetros al agente SNMP:
- oid_string: La cadena OID (p. ej., "1.3.6.1.4.1.26095.1.1.1.4.4.0"). Todas las cadenas OID deben ser numéricas.
- writable_flag: Un valor Boolean que indica si el valor puede ser cambiado por un cliente SNMP.
- valor_inicial: El valor inicial, que puede ser un roString o roInt. El OID reflejará el tipo elegido aquí.
GetOidValue(oid_string As String) As Object
Devuelve el valor actual (como roString o roInt) para un OID dado.
SetOidValue(oid_string As String, new_value As Object) As Boolean
Cambia el valor actual para un OID dado. El valor pasado puede ser un roString o roInt.
Start() como booleano
Inicia el agente SNMP. Llame a este método una vez que todos los controladores OID hayan sido registrados.
Ejemplo
agent = CreateObject("roSnmpAgent")
agent.AddOidHandler("1.3.6.1.4.1.26095.1.1.1.4.4.0", false, "ValueOfOid")
agent.AddOidHandler("1.3.6.1.4.1.26095.1.1.1.4.5.0", true, 10)
agent.Start() ifUserData
SetUserData(user_data As Object)
Establece los datos de usuario que se devolverán cuando se generen eventos.
GetUserData() como objeto
Devuelve los datos de usuario que se establecieron previamente mediante SetUserData(). Devolverá Invalid si no se ha establecido ningún dato.
ifMessagePort
SetPort(port As roMessagePort)
Publica mensajes de tipo roSnmpEvent en el puerto de mensajes adjunto.