Class AsteriskSIPPeerMonitor

  • All Implemented Interfaces:
    ServiceMonitor

    public class AsteriskSIPPeerMonitor
    extends AbstractServiceMonitor

    This class is designed to be used by the service poller framework to test the availability of Asterisk SIP Peers by executing a "sip show peers" over AMI. It gets the AMI parameters from the AMI configuration and needs the parameter sip-peer to be set in the poller configuration.

    Author:
    Michael Batz, OpenNMS
    • Constructor Detail

      • AsteriskSIPPeerMonitor

        public AsteriskSIPPeerMonitor()
    • Method Detail

      • initialize

        public void initialize​(Map<String,​Object> parameters)

        Initialize the service monitor.

        Throws:
        RuntimeException - Thrown if an unrecoverable error occurs that prevents the plug-in from functioning.
      • poll

        public PollStatus poll​(MonitoredService svc,
                               Map<String,​Object> parameters)

        This method is the heart of the plug-in monitor. Each time an interface requires a check to be performed as defined by the scheduler the poll method is invoked. The poll is passed the service to check.

        By default when the status transition from up to down or vice versa the framework will generate an event. Additionally, if the polling interval changes due to an extended unavailability, the framework will generate an additional down event. The plug-in can suppress the generation of the default events by setting the suppress event bit in the returned integer.

        NOTE: This method may be invoked on a Minion, in which case certain bean and facilities will not be available. If any state related information is required such as agent related configuration, it should retrieved by the ServiceMonitor.getRuntimeAttributes(MonitoredService, Map).

        Run the service monitor and return the poll status

        Parameters:
        svc - Includes details about to the service being monitored.
        parameters - Includes the service parameters defined in poller-configuration.xml and those returned by ServiceMonitor.getRuntimeAttributes(MonitoredService, Map).
        Returns:
        The availability of the interface and if a transition event should be suppressed.
        See Also:
        PollStatus.SERVICE_AVAILABLE, PollStatus.SERVICE_UNAVAILABLE, PollStatus.SERVICE_AVAILABLE, PollStatus.SERVICE_UNAVAILABLE