シスコサポートコミュニティ
キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

TelePresence EP: Catalyst POE を使った室内制御(In Room Control)

はじめに

Touch 10 - CE8.2 および DX70/DX80-CE8.3 では In Room Control機能 (室内制御機能)が追加されました。 これにより、会議室の照明・空調・ブラインド・各種ディスプレイの入力ソースなどを Touch 10 や DX からコントロールすることができます。連携のためには、

  • ビデオ会議システム: DX/MX/SX/Room Kit
  • 会議室制御システム: Crestron社製 AMX社製など

この2点が必要となります。ただ、会議室制御システムについてはラズペリーパイやPCを使って自作をしたりすでにあるものを利用してインテグレーションすることもできます。

今回このポストでは In Room ControlのAPI の理解と、シスコ製品で完結できるデモを目的に DX70 と Catalyst 3560CX のEEM 機能を使った POE コントロール デモを作成します。

デモビデオ

https://supportforums.cisco.com/ja/video/13276686

利用したもの

  • DX70 - CE9.0.1 を利用 (CE8.3以降必要)
  • Catalyst 3560CX (多少古めのCatalystでもOK)
  • IP Phone (PoE 動作確認用)

DX70 In Room Control エディタ

TelePresence 端末の Web 管理画面から In Room Control エディタを起動します。

Integration > In-Room Control

Launch Editor をクリックします。なお、Launch Simulator (CE9, CE8.3の場合Editor から呼び出し)を利用するとより実践的な「会議室」をシミュレーションすることができます。Chromeブラウザが必須です、。 

Panels 横の + をクリックします。

会議室制御画面の呼び出し方を選びます。通話中、アイドルにかかわらず、いつでも呼び出せる「Globally」、アイドル時に呼び出せる「Home Screen」、通話中に呼び出せる「In Call」の3つが選べますが今回は Home Screenを利用します。

編集画面となります。

Pane Name を "IP Phone" にします。ホームスクリーンのアイコン下に表示されます。アイコンはそのまま照明にします。

Page と Row のそれぞれ Name をIP Phone / Gi0/1 (スイッチのポート番号) と編集します。ここはラベルとしての役割だけですので、自由な名前が使えます。次に WidgetsからToggle On/Off を Gi0/1 列に配置します。

Toggle On/Off のWidget ID を ipphone にします。この ID は、利用者がオン・オフを設定した際のイベント検知で利用します。

Export Configuration アイコンで、DX にエディタで編集した内容を読み込ませます。

作成したアイコンが表示され、タップするとトグルが出てきます。

TelePresence 動作確認

TelePresence 側の動作を確認します。SSH/Telnet またはmicro USBポートを使ったシリアル接続でログインします。

コマンド

xfeedback register event/UserInterface/Extensions/Event

を入力します。

次に、先ほど作成したトグルをオンオフし、下記のような出力が出ることを確認します。

*e UserInterface Extensions Event Changed Signal: "ipphone:off"

** end

*e UserInterface Extensions Event Changed Signal: "ipphone:on"

** end

In Room Control の API ではこの xfeedback コマンドによって得られるテキストのイベント出力をモニタし、その文字列に合わせて会議室制御装置が動作をします。

SSH/Telnet/シリアルによるテキストの他に XML/JSON を利用した HTTP Post も利用可能です。

EEM 設定

Catalyst 側の設定を実施します。TelePresence 端末への IP 疎通が必要です。

interface Vlan1

ip address 192.168.1.254 255.255.255.0

また、逆引きによる時間ロスを防ぐために DNS 引きをしないようにします。

no ip domain-lookup

EEM のコマンドを入力します。大まかな処理は下記の通りです。

  1. Cron で毎分0秒に呼び出し
  2. SSH でDX にログイン
  3. xfeedback コマンドでイベントをモニタ
  4. widget id "ipphone" を検知し、 "ipphone:on" なのか "ipphone:off" なのかを変数 $result に入れる。
  5. 出力に合わせ、POE On/Off の処理を実施(別アプレット呼び出し)

メインアプレット

event manager applet room_control

event timer cron name EVERY_MINUTE cron-entry "0-59/1 * * * *" maxrun 60

action 010 cli command "enable"

action 020 cli command "ssh -l admin 192.168.1.2 " pattern "assword:"

action 030 cli command "cisco" pattern "OK"

action 035 set result "none"

action 040 cli command "xfeedback register event/UserInterface/Extensions/Event" pattern "ipphone"

action 050 regexp "ipphone:on" "$_cli_result" result

action 060 regexp "ipphone:off" "$_cli_result" result

action 070 syslog msg "$result"

action 071 cli command "bye" pattern "#"

action 080 if $result eq "ipphone:on"

action 081  cli command "event manager run poe_noshut"

action 082 else

action 083  cli command "event manager run poe_shut"

action 084 end

action 100 if $result ne "none" goto 010

action 101 if $result eq "none" goto 010

POE On のアプレット

event manager applet poe_shut

event none default 0

action 005 syslog msg "### PoE off###"

action 010 cli command "enable"

action 020 cli command "cisco"

action 030 cli command "conf t"

action 040 cli command "int gi0/1"

action 050 cli command "shutdown"

POE Off のアプレット

event manager applet poe_noshut

event none default 0

action 005 syslog msg "### PoE On###"

action 010 cli command "enable"

action 020 cli command "cisco"

action 030 cli command "conf t"

action 040 cli command "int gi0/1"

action 050 cli command "no shutdown"

いかがでしょうか。手動でのコマンド入力をEEMでは自動化することができます。また、コマンドそのものですので、特別な知識は必要ありません。

なお、デバッグ目的で Syslog 出力をわざと出しています。

86
閲覧回数
10
いいね!
0
コメント