見出し画像

Ciscoのビデオ会議端末にNode-Redを使って発信させてみた


みなさんこんにちは。

今回、Cisco Technology Contestに会社のメンバーと一緒に作品を提出したので、自分が作ったものについて書こうと思います。

Webex TeamsのBotとNode-Redを使って、
Ciscoのビデオ会議端末に発信させてみました。

何となくの流れはこんな感じです。

1.Webex TeamsのBotを作成して会議端末と結びつける。
2.Botにメンションして、発信先の情報(IPアドレス、Webexアドレスなど)を送る。
3.会議端末がその発信先に発信してくれる。


では簡単に、どんな感じで作ったか説明していきたいと思います。


Botのアカウント作成


まずWebex TeamsのBotアカウントを作ります。

Botアカウントの作成ですが、このサイトで簡単に行えます。↓

https://developer.webex.com

画像1

Botの名前やユーザ名を決めるだけで作れちゃいます、簡単!!


Node-Redでメッセージ内容(発信先情報)を取得
→会議端末に発信させる


Node-Redではどんな感じで処理が行われているか簡単に説明していきます。

まず、メンション先やメッセージ内容(発信先情報)は、インターネットからアクセスを受けられる環境の Node-Red を使って取得します。
(Webex Teams Botはインターネットにあるため)


画像4


沢山の情報の中から、メンション先とメッセージ内容(発信先情報)だけを抜き出します。

会議端末への発信指示はLAN 内の Node-Red を使って行うので、先ほど抜き出した情報をwebsocketノードでLAN 内のNode-Red側に送ります。

(Botの環境と会議端末の環境間でデータをやり取り出来るように、2つのNode-Redをwebsocketノードで接続しておくことが必要)

画像3

switchノードを使ってメンション先を判断し、会議端末と結び付けられたBotがメンションされていた場合、その会議端末から発信されるように設定します。

基本的な仕組みはこんな感じです。


発信させてみよう


今回は「ABC」という名前のBotと会議端末を結び付けます。
*会議端末のIPアドレスやログイン情報が手元にあることが条件

結び付けたら、「ABC」をメンションして「1.1.1.1」とメッセージを送る

メンションした画面


するとこんな感じに「ABC」のBotと結び付けておいた会議端末が「1.1.1.1」あてに発信してくれます。

発信中 (2)


今回は1つだけでしたが、他にも何個かBotを作ってそれぞれ違う端末と結び付けておけば、Botにメンションするだけで好きな端末から発信できるようにもなります。


感想・まとめ


今回Ciscoの会議端末に発信させるために色々やってみましたが、

一番衝撃的だったのは、Botのアカウント作成がこんなに簡単だったってことです。

もっと複雑なコードを書かなきゃいけないかと思っていたので、
「あれ、Botの名前決めたりするだけでいいの?」って感じでした。笑


あとはCiscoのドキュメントがとても充実している点に驚きました。
ホント調べれば何でも出てくるんじゃないかってくらい。笑
APIとかがめちゃくちゃ公開されていました。


ただ初心者の自分にとっては、逆に情報量が多すぎて本当に欲しい情報を探し出すのが大変でした…。

同じ動作を行うためにも、いろんな手法があるんですね。
(今回の会議端末の発信だけでもxCommand、HTTPなど複数ある)


あと、ドキュメントが基本的に英語なのが辛かったです。
(少しだけバージョンが古いものになると日本語版が公開されている場合もあります)


ここまで色々書いてきましたが、

Node-Redにきちんと触れたことも、Botを作成して何か他のモノ(今回は会議端末)と連携させることも初めてだったので、自分にとってはとてもいい経験になりました。


きっとNode-Redを使いこなせれば、もっと色んなことが出来るんだろうなと感じたので、Node-Redについてもっと勉強しようと思います!!


最後まで読んでいただきありがとうございました。


この記事が気に入ったらサポートをしてみませんか?