2024 如何配置Cisco Embedded Event Manager(EEM)以自動重置卡住的FXO端口

2024 Cisco IOS Embedded Event Manager(EEM)

Cisco IOS Embedded Event Manager (EEM) 是一種強大的和高度靈活的自動化能力,內建於Cisco的IOS軟件中。EEM允許網絡管理員編寫和部署小型腳本或應用程序(稱為applets或腳本),這些腳本可以在設備上基於特定事件自動執行。這為自動化網絡配置、故障排除、日誌記錄、通知發送以及許多其他任務提供了極大的便利和靈活性。
利用EMM可以自訂腳本的方式來解決ISR4321透過FXO介接進行廣播後咬線的問題。
咬線的問題會造成下次進行廣播時會無法廣播。




閱讀全文: 2024 如何配置Cisco Embedded Event Manager(EEM)以自動重置卡住的FXO端口

架構圖

簡易架構圖如下,話機透過Cisco isr4321的fxo port與廣播系統介接再送到使用者場域中當FXO咬線時,會造成下次要進行廣播時會有問題。

eem

解決方式

假設端口為0/2/0,編寫一個EEM applet來實現0/2/0 Port Reset功能。
每60秒去檢查一次,如果0/2/0 port的狀態為off-hook(表示通話中)
等待30秒之後(廣播通常不會太久),再將0/2/0 port Reset
最後加入了一個syslog動作,在端口被重置時記錄。這有助於日後檢視和Trouble Shooting。
以下是一個針對0/2/0 port重置操作的EEM applet範例:

!
event manager applet check-off-hook-0-2-0
event timer watchdog time 60
action 001 cli command "enable"
action 002 cli command "show voice port summary | include 0/2/0"
action 003 regexp "off-hook" "$_cli_result"
action 004 if $_regexp_result eq 1
action 005 syslog msg "Port 0/2/0 detected off-hook, waiting 30 seconds before resetting."
action 006 wait 30
action 007 cli command "config t"
action 008 cli command "voice-port 0/2/0"
action 009 cli command "shutdown"
action 010 cli command "no shutdown"
action 011 cli command "end"
action 012 syslog msg "Port 0/2/0 was reset after off-hook status."
action 013 end
!

EEM補充說明

Cisco IOS Embedded Event Manager (EEM) 支援多種不同的事件類型,可以觸發EEM applets或scripts的執行。以下是一些常見的EEM事件類型,這些事件可以用於條件觸發:

  1. 計時器事件(Timer Events):
    • event timer countdown: 在指定的時間過後觸發。
    • event timer watchdog: 每當指定的時間間隔到達時觸發。
    • event timer cron: 根據cron語法指定的計劃任務時間觸發。
  2. 環境事件(Environmental Events):
    • event environmental: 基於設備的溫度、風扇狀態等環境條件觸發。
  3. 資源事件(Resource Events):
    • event resource policy: 當系統資源(如CPU利用率、記憶體使用等)達到某個閾值時觸發。
  4. 接口事件(Interface Events):
    • event interface: 監聽網絡接口的狀態變化(如接口上線或下線)。
  5. 系統事件(System Events):
    • event syslog: 根據syslog消息的內容觸發。
    • event track: 與追蹤物件的狀態變化相關。
  6. 命令事件(CLI Events):
    • event cli: 在CLI命令執行時觸發,可以設置在特定命令執行前或執行後觸發。
  7. SNMP事件(SNMP Events):
    • event snmp-notification: 當接收到特定的SNMP通知時觸發。
  8. None事件:
    • event none: 這種類型的事件不會自動觸發。它通常用於創建一個需要手動或由其他applet調用的applet。

延伸閱讀

365 Views