FessでSlackへの通知

現在のFessでは、クロール完了やElasticsearchの状態検知の通知はメールでしかおこなえないけど、最近だとメールサーバを用意したりするのも面倒だったりするので、メール以外の手段として、Slackへの通知機能を追加しました。

13.6では管理画面からは編集できないので、system.propertiesに

slack.webhook.urls=https\://hooks.slack.com/services/...

という感じで指定する感じ。SlackのIncoming Webhookの作り方はここなどを参照してください。文面的なのを個別に用意するのも、ちょっと手間なので、現状のメールの仕組みを使って、送信しています。

NotificationHelperで実装しているので、興味があれば別の送信先とか追加してプルリクでも送っていただければと。

JavaでAirPlayサーバ

ZOOMやGoogle Hangoutsでのミーティングが増える今日この頃だけど、今までのようにホワイトボードでささっと書いて済ませたいときも多い。さて、どうするかと思ったときに思いつくのが、iPadとかで書いてそれを画面共有とかできればなという感じかと思う。Macを使っていれば、AirPlayで送れば良いので話が早いのだが、WindowsやLinuxのときにはどうしたものかとなる。ググって調べると、古い情報が多く、試しても動かないものも多いし…。

ということで、今回試したのはjava-airplay-serverというもの。ただ、これだと、自分で実装しないといけないので、試すのはjava-airplay-server-examplesの方です。動かすには、Gradle 6くらいが必要らしい(Gralde 4だとコンパイルできなかった…) いくつかサンプルがあるけど、tcp-forwarderを動かします。

$ git clone https://github.com/serezhka/java-airplay-server-examples.git
$ cd java-airplay-server-examples/tcp-forwarder/
$ gradle bootRun

として、別なターミナルを開いて、

$ ffplay -f h264 -codec:v h264 -i tcp://localhost:5002

とすれば、準備完了です。あとは、iPadから画面ミラーリングを選択するとsrzhkaと表示されるので、それを選択すれば表示される。(一応表示されるけど、iPad Proを使って試した私の環境だと、そこそこ遅延がある感じでした…使えなくはないと思うけど)