はじめに
こんにちは。事業開発部のにしむらです。システム&セキュリティチーム(現在は兼任)でSST内のコンシェルジュを目指しています。今回エンジニアブログには初投稿です。
ところで、さきほど新元号「令和」が発表されました。みなさん、どう感じましたか? 私は、少し予想外で正直なところまだ違和感ありありですが、思い起こせば30年前の「平成」が発表された時も、しっくり来ていなかったように記憶しています。。。 が、30年も経つと、その違和感もなくなり、あとひと月で「平成」が終わりと思うと、むしろさみしささえ感じてしまうほどに馴染んでいることにびっくりしています。
また、本日はSSTでも入社式が行われ、フレッシュな新卒3名が元気に入社しました。 私自身はSSTに中途入社して、そろそろ3年ですが、新元号も決まり、新人のように新鮮な気持ちで新年度を迎えられたような気がしています。
と、前置きが少し長くなりましたが、本題のIFTTTの紹介に入りたいと思います。 IFTTTをすでにお使いの方も多いと思いますが、今回は使ったことがない方を対象に簡単な使用例を含めて紹介します。
IFTTTの紹介
まずはIFTTT自体の紹介です。
IFTTTとは
IFTTTは、日本語では「イフト」と読みます。簡単にいうと、世の中にあるWebサービスとWebサービスを簡単に連携できるサービスです。 実は、今回のブログ記事のネタを考えるまで実際に使ったことはありませんでした。ので、今回試しに使って記事書いてみました、というほど、本当に簡単に使えました。
何ができるのか?を一番表現しているのが、アプレット作成画面の以下の表現だと思っています。
「IF This Then That」で、「I F T T T」です。雑ですが、「もし、これ、だったら、あれ」と、でも訳しましょうか。さすがに雑すぎるので、例えで表現すると、、、
もし、「雨が降りそう」だったら「Slackに通知する」
という感じのことをWebサービス(この例ではお天気サービス)とWebサービス(この例ではSlack)を連携させてできてしまいます。(ちなみにSST社内では、このようなbotが有志にて日々開発されたりしています。)
これをWeb画面(もしくは、スマホアプリ)でポチポチするだけで実現できたりします。利用するだけならAPIやプログラミングのことを気にすることなく、世の中のWebサービス同士を連携させることができる、非エンジニアにとって夢のような(?)サービスです。
なお、現状では、SST社内で自由にIFTTTを使える状態ではない(これについても、後ほど簡単に説明します)ため、個人のアカウント+個人の範囲で使ってみたので、例としてご紹介します。
使ってみたその① 体重計との連携
1つ目の例として、私が自宅で使っているスマート体重計(Withings)とSlack(個人で利用しているもの)を連携してみます。 Withings自体に測定結果をクラウド上に蓄積する機能があり、Web画面でグラフ等も見れる機能があります。 ただ、体重を測定した時にSlack通知するという機能はなかったので、IFTTTを使ってSlackに通知させるという機能(アプレット)を作ってみました。
step1/6 Thisのサービスの選択
新規アプレット作成画面で、+thisを選択すると以下の画面に進みます。
聞いたことのあるサービス名もいくつか並んでいますが、今回は検索窓に「Withings」を入れて探してみます。
いくつか候補が出てきました。一番左の「Withings」を選択し、次に進みます。 初めて使うサービスの場合、Webサービスと接続します。
Connectを押すと別画面(ここでは省略します)でWithings側でIFTTTとの接続を使用するか確認が出ます。 内容をよく理解して、「認証する」を押すと、次のstepに進みます。
step2/6 トリガーの選択
トリガーはthisが発動するタイミングです。Withingsにはいくつかのトリガーが準備されていますが、今回は体重を測定したら(以下の左)というのを選択しました。
step3/6 Thatのサービスを選択
次にthatのサービス選択をします。thisの部分にはWithingsのアイコンが設定されているので、青の+thatを選択します。
そうするとstep1同様にサービス選択の画面になるので、Slackを検索して選択します。
選択するとSlackとの接続を求められます。
Connectを押すと別画面(省略)でSlackとIFTTTの接続を許可するかの確認が出るので、ここでも内容をよく理解して「許可する」を押すと、次のstepに進みます。
step4/6 Thatのサービスでのアクションを選択
選択したSlackで選択できるアクションはシンプルに「チャンネルへのPost」ですので、これを選択します。
step5/6 アクションの細かい設定を選択
ここではSlackのどのチャンネル/DMにPostするか、メッセージに何の情報を含めるかなどの細かい設定を実施します。
今回は、DMで自分宛て(@nishi6ra)に体重(kg)と体脂肪率(%)をタイトルに測定日時を含めてPostするようにしてみました。
Create actionを押して最後のstepに進みます。
step6/6 最後の確認
Finishボタンを押せば完了です。
結果の確認
ここまでの設定が完了した後に、実際に体重計に乗ると、、、
といった感じでSlackに通知が届くようになりました。(隠すほどでもないのですが、通知された私の体重と体脂肪率は、個人情報のため念のためマスクしています)
使ってみたその② 位置情報の通知
2つ目の例は、スマホの位置情報との連携を紹介します。例えば、どこどこに近づいたら or 離れたら、Slackに通知するといった使い方ができます。 スマホにIFTTTアプリを入れると使えるLocationというサービスがあるので、これを使って実現してみました。
こちらは細かい設定手順は省略しますが、例えば会社を登録してみると、以下のような感じで出入りの記録がSlackに通知されるようになりました。
この応用として、Slackへの通知の代わりに、自宅に最近導入した家電リモコン(ラトックシステム スマート家電リモコン RS-WFIREX4)とも連携させてみましたが、もちろんこれもとても簡単に実現できました。 例えば、一人暮らしの方でも、自宅に着く直前に照明を付けて、エアコンが事前にONされた快適な部屋に帰宅するといったことも簡単に実現できそうです。 すでに似たようなサービスが世の中に存在しますが、子供の見守りなどにも応用できそうです。
ここまでに紹介した2つの例以外にも、いろいろなサービスと連携できるので、少しでも興味を持たれた方は、ぜひお試しいただければと思います。
Gmailのサポート終了?
本ブログ記事を構想中にIFTTTがGmailのサポートを終了する?という私にとっては少しタイムリーなニュースが入ってきました。 以下の発表を詳しく読むと現時点で完全に使えなくなるわけではなさそうですが、メールも連携先として考えることもまだまだ多いと思いますので完全復活を期待します。
Important update about the Gmail service – IFTTT Help Center
社内導入に向けて!?……
ここまでIFTTTの紹介が長くなりましたが、ここからは次の観点です。
このブログで紹介したIFTTTを社内導入するとしたら?何を考える必要があるか、SSTのシステム&セキュリティ担当の観点で考えてみました。
クラウドサービス利用、データの扱い
SSTでは利用する外部サービスは、会社として許可したものに限定しています。日頃業務に利用しているSlackやGoogleについては、もちろん事前に調査した上で会社として業務に利用するということを認めています。
今回紹介したIFTTTですが、正式には未調査の状況で現時点では利用不可です。(ですが、この記事作成で事前の調査を少し兼ねることができた気がしています。)
またIFTTTに限った話ではありませんが、外部サービスを使う場合、使い方次第では業務上の情報を自社以外に預けることになりますので、データの取扱いやセキュリティ面で不安があるようなサービスや運営会社だった場合は、もちろん利用しないという判断をする時もあります。
クラウドサービスの利用に関しては、経済産業省やIPAからもガイドラインが出ています。
これらのガイドラインに沿った内容や、その他最新の情報も確認し、自社として利用するかどうかを最終的に判断することが必要です。
利用規約への同意
IFTTTを利用する場合は、利用規約の内容に同意する必要があります。 IFTTTに限らず、外部のサービスを法人として利用する場合、会社を代表して利用規約へ同意することになる場合があることにも注意が必要です。
ご参考までにIFTTTの利用規約のリンクを載せておきます。
今回は、IFTTTを利用するにあたり、この利用規約に私自身が個人として同意した上で利用しています。
可用性、サービス継続観点
会社で業務に利用するサービスは、社内業務向け、社外サービス向けに関わらず、安定して稼働している必要もあります。 便利なものを業務に取り入れ、そこに完全に業務を依存させた場合、万が一そのサービスが止まると業務が止まってしまうという可能性も事前に考慮しておきます。
また、外部のサービスは、将来的にサービス自体がなくなってしまうという可能性も視野に入れておく必要があります。 サービス自体はなくならないまでも、当初想定していなかった仕様変更(上記のGmailの例のような)が未来に発生するということもありえます。 そうなった場合でも、代替の手段で業務ができるように準備しておくとより安心です。
おわりに
IFTTTの紹介いかがでしたか?
まだ個人的な範囲でしか使っていませんが、それでも気がついたらいろいろなWebサービスを連携させて楽しむことができています。さらにとても便利です。
私は社内のシステム&セキュリティ担当として、社員のみなさんが安心して安全に効率よく業務を進められる環境作りもミッションとしています。
今回紹介したIFTTTに限らず、生産性の向上(エンジニアだけでなく、SSTで働く全員の)を目指せそうなサービスをスピード感を持って導入していけるように日々仕組みを考えていきたいと思います。