16.12.2023, 20:51
(27.11.2023, 08:37)admin Wrote: See this thread for examples: https://forum.logicmachine.net/showthrea...6#pid13456I can't get it to work, I send it 1 and it gives me an error
Look for "et" function calls.
snmp set to 192,168,1,33 1.3.6.1.4.1.41809.2.52.0 failed: snmp bad type(2) prim=0 in index 1
thank you
Code:
require('snmp')
function setSNMPValue(ip, oid, value, type)
type = type or snmp.INTEGER -- Valor predeterminado: snmp.INTEGER si no se especifica el tipo
local conn, err = snmp.open({
version = snmp.SNMPv1,
community = 'public',
peer = ip,
})
if conn then
local res, err = conn:set({
{
oid = oid,
value = value,
type = type,
}
})
if err then
alert('snmp set to ' .. ip .. ' ' .. oid .. ' failed: ' .. tostring(err))
else
alert('snmp set to ' .. ip .. ' ' .. oid .. ' ok')
-- Realizar una operación GET para verificar si el valor se ha establecido correctamente
local res_get, err_get = conn:get(oid)
if res_get and res_get.value == value then
alert('Verification: snmp get for ' .. ip .. ' ' .. oid .. ' successful')
else
alert('Verification: snmp get for ' .. ip .. ' ' .. oid .. ' failed')
end
end
conn:close()
else
alert('snmp connection to ' .. ip .. ' failed: ' .. tostring(err))
end
end
-- Ejemplos de uso con valores enteros
setSNMPValue('192.168.1.33', '1.3.6.1.4.1.41809.2.52.0', 1, snmp.INTEGER)
setSNMPValue('192.168.1.33', '1.3.6.1.4.1.41809.2.53.0', 3, snmp.INTEGER)
-- Agrega más llamadas según sea necesario para otros dispositivos o parámetros SNMP