いままでFileMakerを使っていた家のサーバを強化しようと思います。

『グーグルホームミニに何かを言うと、IFTTT(トリガーはGoogleAssistant、アクションはWebHook)に行き、GoogleSpleadSheet経由でサーバのFilemakerのWebCompanionに来た後、Filemakerで検索して結果をGoogleHomeNotifier経由で、グーグルホームミニに答をしゃべらせる。』
という仕組みでした。

今まではFilemakerのWebCompanionを使っていて、若干非力でした。
『サーバのFilemakerのWebCompanionに来た後、Filemakerで検索して』のところを
『サーバのIISに来た後、ColdFusion経由でSQL Serverで検索して』にします。

サーバーサイドスクリプトはColdFusionの代わりにASPでもできます
Dreamweverを使えばColdFusionもASPもほとんどソースを書かないでほぼ同じ手順でできます。
でもソースを書かないと自分で書いた気がしません。というか言語を覚えない・・・。
しかもそのスクリプトは、やはり機械が作っただけあって、妙に複雑でまどろっこしいというのもあります。
今回はColdFusionは手書きで書き、ASPはDreamweverを使いました。
タグベースのCFの方がスクリプトのASPより行が短いです。
また今までFMのCDMLに慣れているので、CFMLの方がなじみやすいです。

まず、SQL Serverをインストールします。booksDBというデータベース内にbooksというテーブルを作り、ID、title、placeというフィールドを作ります。
そしてColdFusionをインストールします
ColdFusionは普通、FormPage.cfmでtitleフィールドに本のタイトルを入れると、ActionPage.cfmで変数をFORM.titleで受け取り、本の場所を検索してお知らせするわけです。検索はActionPage.cfm中のcfqueryタグ中のSQL文でwhere title='#FORM.title#'とやればいいわけです。
ですが今回はURLパラメータでtitle変数を渡しますのでFormPage.cfmは使わずActionPage.cfmだけでやります。where title='#FORM.title#'のかわりにWHERE title='#URL.title#'とやります。
IFTTTからActionPage.cfm?title=チャート式化学
と送られてくると
http://192.168.1124/?ja=チャート式化学は机の上にあります
とGHNに送りますのでグーグルホームミニが『チャート式化学は机の上にあります』と言ってくれます。

 

コメント

コメントフォーム
記事の評価
  • リセット
  • リセット