On Fri, 2006-01-27 at 16:09 +0100, Thomas Nilsen wrote:
Hello!
Two cases of beer or two bottles of whiskey to first developer that release a simple snmp module that provide equal status equal to the info accessible through the fifo.
Deadline for first sneak preview is next Friday! J
Hello!
Generous offer Thomas ;)
Since I have not much time now to develop things related to SIP Express Router, I will say my opinion regarding this issue, based on my experience with SNMP, hoping it will be a good start for anyone who wants to win your drinks. The easiest way to get info from SER via SNMP, is actually using the fifo mechanism. The module that should be developed should be for the snmpd daemon not for SER. Check the Net-Snmp project, and you will see that there are all the needed tools for playing with SNMP: http://www.net-snmp.org . After you get familiar with the project you will understand better what I will explain now. The SNMP module should provide some information about SER via Simple network management protocol, so you need 3 (three) things: - an interface to get whatever you like from SER, via fifo by example - a module that knows to query for this information - a SNMP server that integrates your module and response to remote SNMP client queries (Management Stations: Tivoli, OpenNMS by example) The interface is there, you will use the fifo interface to link the snmp module with SER. You got also the server, snmpd from net-snmp package. All you need to do is to build the snmpd module. http://www.net-snmp.org/tutorial/tutorial-5/toolkit/index.html Is a useful link to get started. First you have to write a txt file that contains the mib part for SER. As I know there is no such mib. The mib file will contain in ASN syntax the information you want to retrieve from SER. You will compile the mib file with mib2c using the needed templates, for scalars, tables etc. The result of the compilation are some C code files which should be completed with the reading from the fifo for the needed information. As I said at the beginning this are only some hints. For more details follow the above links, and check for the definition of a MIB file for SIP, or SER, and if all the stuff there can be queried out from SER through the FIFO. Otherwise the core developers should provide an interface to query the needed information. Check this scheme for the big picture:
Management SNMP query snmpd read SER console --------> !!your module!!| <------> | fifo
Your module should know to handle GET/SET queries from the Management console. That is, for a specific resource queried by the console, the module should interpret the SNMP packet and then do the query to SER. Don't worry. You don't need to parse the packet , you will register the callbacks for the OID you implement, snmpd will trace the OID and pass the query to your module, and of course it will wait for an answer. For more information, just ask. I think this is a good start to do a snmp module that works with SER!
Best Regards,