PowerSNMP for .NET
GetMessage Class
Members  Example 




Used to request IID values from SNMP agents. Serializable using BinaryFormatter and XmlSerializer.
Object Model
GetMessage ClassDecodingException ClassVariableCollection ClassVariable Class
Syntax
<SerializableAttribute()>
Public Class GetMessage 
   Inherits RequestMessage
Dim instance As GetMessage
[Serializable()]
public class GetMessage : RequestMessage 
[Serializable()]
public __gc class GetMessage : public RequestMessage 
[Serializable()]
public ref class GetMessage : public RequestMessage 
Remarks

Specializes RequestMessage. Used by an SNMP manager to request information from an SNMP agent. The agent responds by constructing and sending the manager a ResponseMessage that contains the requested IIDs and values.

Example
The following example demonstrates sending an SNMPv1 Get request to an agent and receiving the response.
private void button1_Click(object sender, EventArgs e)
{
    //Create and send request on a worker thread
    manager1.Start(manager1_SendGetRequest, manager1.Mib.CreateVariable(NodeName.sysContact));
}

private void button2_Click(object sender, EventArgs e)
{
    //If you don't have the MIB, retrieve the value by IID:
    manager1.Start(manager1_SendGetRequest, new Variable("1.3.6.1.2.1.1.4.0"));
}

private void manager1_SendGetRequest(SnmpSocket managerSocket, object state)
{
    //Create Get Request
    GetMessage request = new GetMessage();
    request.Variables.Add(state as Variable);

    //Send request and get response
    ResponseMessage response = managerSocket.GetResponse(request, myAgentAddress);

    //Marshal response to the UI thread using the Message event
    manager1.Marshal(new ResponseMessage[] { response }, "", null);
}

private void manager1_Message(object sender, MessageEventArgs e)
{
    //Display info about the first variable in the response, and its value
    Variable vari = e.Messages[0].Variables[0];
    label1.Text += vari.Definition.ToString() + vari.Value.ToString() + "\r\n";
}
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
    'Create and send request on a worker thread
    manager1.Start(AddressOf manager1_SendGetRequest, manager1.Mib.CreateVariable(NodeName.sysContact))
End Sub

Private Sub button2_Click(ByVal sender As Object, ByVal e As EventArgs)
    'If you don't have the MIB, retrieve the value by IID:
    manager1.Start(AddressOf manager1_SendGetRequest, New Variable("1.3.6.1.2.1.1.4.0"))
End Sub

Private Sub manager1_SendGetRequest(ByVal managerSocket As SnmpSocket, ByVal state As Object)
    'Create Get Request
    Dim request As New GetMessage()
    request.Variables.Add(TryCast(state, Variable))

    'Send request and get response
    Dim response As ResponseMessage = managerSocket.GetResponse(request, myAgentAddress)

    'Marshal response to the UI thread using the Message event
    manager1.Marshal(New ResponseMessage() { response }, "", Nothing)
End Sub

Private Sub manager1_Message(ByVal sender As Object, ByVal e As MessageEventArgs)
    'Display info about the first variable in the response, and its value
    Dim vari As Variable = e.Messages(0).Variables(0)
    label1.Text &= vari.Definition.ToString() & vari.Value.ToString() & vbCrLf
End Sub
Inheritance Hierarchy

System.Object
   Dart.Snmp.MessageBase
      Dart.Snmp.StandardMessage
         Dart.Snmp.RequestMessage
            Dart.Snmp.GetMessage

See Also

Reference

GetMessage Members
Dart.Snmp Namespace


Documentation Version 4.9
© 2016 Dart Communications. All Rights Reserved.
Send comments on this topic