色々あってある研究棟の玄関のデジタルサイネージシステムに関わった話
この記事は Muroran Institute of Technology Advent Calendar 2018 7日目として捧げます.
2本連続デジタルサイネージのお話です,ゆっくりしていってね.
こんなものを作りました
具体的には左半分に予定,右半分が自由文のお知らせです.そのほか,土足禁止の案内と,天気予報を載せてあります.
どうして制作に関わるようになったのか
詳細は知りませんが,デジタルサイネージを設置することになった際,別の方が市販されているデバイスとアプリストアで公開されているアプリを組み合わせてデジタルサイネージを実現していましたが,アプリの公開が突然終了.
少しして, Raspberry Pi で似たようなことができないかとなった時に苦しんでいたある方のために,研究室のサイネージをチューニングして提供したのが始まりでした.
技術的な紹介
例のごとく,予定は Google Calendar から,お知らせは Google docs から JavaScript API により取得し,表示しています.(エコシステム!)
予定は,ある決められた期間内にある,設定した上限数までの予定を表示しています.
なお,直近に Google Calendar に予定が登録されていないものは空白になります.
これは,少し見た目が残念なので改善の余地があると思います.
実装は Qiita: Google Calendar APIをJavaScriptで使う を参考にしました.
カレンダーのIDは事前に決め打ちしてあります.
お知らせは, Google docs から Google Drive の API で HTML の状態で取ってこれるのでそのまま表示しています.
キモとなるのは Google Developers: Drive REST API: Files: export です.
</p>
gapi.client.drive.files.export({
'fileId': "",
'mimeType': "text/html"
})
<p>
HTML 形式で取得してきた中身を, iframe
の srcdoc
に流し込んで表示しています.
天気予報は,Dark Sky の API より取得しています.
Qiita: 気象情報API比較してみた の情報を元に Dark Sky API を選択しました.
Dark Sky API は商用利用可能です!(ただし,要クレジット)
アイコンは Weather Icons を使用しています.
こちらは SIL Open Font License 1.1 ライセンスです.
SIL Open Font License 1.1:
多くのフリーフォントで使用されているライセンスです。フォント単体での販売を除き、商用・非商用に関わらず、あらゆる用途に無料で使用することができます。クレジット表記などの使用条件は一切ありません。
nakoのITノート: 素材やフォントのラインセンスを要約してみた https://nako-itnote.com/license-summary/
ついでに,このサイネージのアップデートは,git を用いています.
GitLab では,Deploy Keys や Deploy Tokens の機能が提供されており,読み込み権限のみでユーザの追加など無しに git pull 一発で更新できるようにすることが可能です.
制作にあたり…
デザインや機能について,数人から助言をいただきました.
aruneko さん,M.UEMR さん,T.AKYM さんありがとうございました.