/* DESC: This script extends MIB entries of the SNMP agent * with values from nb_status for temperature, signal level, * transferred data on mobile network and * reset of transferred data counter * Copyright (coffee) 2014 NetModule AG, Switzerland */ if (nb_snmp_register("TEMPERATURE", 1, "s", "ro") == -1) exit(1); if (nb_snmp_register("RSRQ", 2, "s", "ro") == -1) exit(2); if (nb_snmp_register("DOWNLOADED", 3, "s", "ro") == -1)exit(3); if (nb_snmp_register("UPLOADED", 4, "s", "ro") == -1)exit(4); if (nb_snmp_register("RESET_DATA", 5, "s", "rw") == -1)exit(5); if (nb_snmp_link() == -1)exit(6); for(;;) { wwan = nb_status("wwan"); wan = nb_status("wan"); if (nb_snmp_update("TEMPERATURE", struct_get(wwan, "MOBILE1_MODULE_TEMPERATURE")) == -1) exit(7); if (nb_snmp_update("RSRQ", struct_get(wwan, "MOBILE1_RSRQ")) == -1) exit(8); if (nb_snmp_update("DOWNLOADED", struct_get(wan, "WANLINK1_DATA_DOWNLOADED")) == -1) exit(9); if (nb_snmp_update("UPLOADED", struct_get(wan, "WANLINK1_DATA_UPLOADED")) == -1) exit(10); if (s = nb_snmp_listen(5)) if (s.name == "RESET_DATA" && s.value == "reset") { nb_reset_statistics("wanlink0"); if (nb_snmp_update("RESET_DATA", strftime("%d.%m.%Y %H:%M:%S", localtime(time()))) == -1) exit(11); } }