TRAP/INFORM notification

async pysnmp.hlapi.asyncio.send_notification(snmpEngine: Any, authData: Any, transportTarget: Any, contextData: Any, notifyType: str, varBinds: Any, **options: Any) → SnmpResponse

Send SNMP notification.

Parameters:
  • snmpEngine (SnmpEngine) – Class instance representing SNMP engine.

  • authData (CommunityData or UsmUserData) – Class instance representing SNMP credentials.

  • transportTarget (UdpTransportTarget or Udp6TransportTarget) – Class instance representing transport type along with SNMP peer address.

  • contextData (ContextData) – Class instance representing SNMP ContextEngineId and ContextName values.

  • notifyType (str) – Indicates type of notification to be sent. Recognized literal values are trap or inform.

  • varBinds (tuple) – Single NotificationType class instance representing a minimum sequence of MIB variables required for particular notification type. Alternatively, a sequence of ObjectType objects could be passed instead. In the latter case it is up to the user to ensure proper Notification PDU contents.

Other Parameters:
  • **options –

    Request options:

    • lookupMib - load MIB and resolve response MIB variables at the cost of slightly reduced performance. Default is True.

    • ignoreValueErrors - what to do about a response value that will not cast to the syntax its MIB object declares. Default is None, which tolerates it and hands back the uncast value. False reports it as SmiError instead.

      A name the peer answered under a MIB this side has not loaded is a different matter and stays tolerated either way: it comes back as a bare OID, because raising would end a walk at the first such binding. Only lookupMib turns resolution off altogether.

  • Result

  • ——

  • errorIndication (str) – True value indicates SNMP engine error.

  • errorStatus (str) – True value indicates SNMP PDU error.

  • errorIndex (int) – Non-zero value refers to varBinds[errorIndex-1]

  • varBinds (tuple) – A sequence of ObjectType class instances representing MIB variables returned in SNMP response.

Raises:

pysnmp.error.PySnmpError – Or its derivative indicating that an error occurred while performing SNMP operation.

Examples

>>> import asyncio
>>> from pysnmp.hlapi.asyncio import *
>>>
>>> async def run():
...     send_result = await send_notification(
...         SnmpEngine(),
...         CommunityData('public'),
...         UdpTransportTarget(('localhost', 162)),
...         ContextData(),
...         'trap',
...         NotificationType(ObjectIdentity('IF-MIB', 'linkDown')))
...     errorIndication, errorStatus, errorIndex, varBinds = send_result
...     print(errorIndication, errorStatus, errorIndex, varBinds)
...
>>> # Run the coroutine against a live agent, for example:
>>> # asyncio.run(run())