Claris Connect を初めて使ってみる～時間をトリガーにFileMakerファイルへレコード作成

# はじめに
## 対象読者
* [Claris FileMaker](https://www.claris.com/ja/filemaker/) ユーザー
* [Claris Connect](https://www.claris.com/ja/connect/) 使ってみようかなと思っている人
* 何となくワークフローツールを探している人

## 検証環境
* FileMaker Server 19
  * CentOS Linux 7.9
  * GCP 上の GCE インスタンス

## Claris Connect とは
### 概要
* [公式サイト](https://www.claris.com/ja/connect/)
  * [料金体系](https://www.claris.com/ja/pricing/connect)
* [IFTTT](https://ifttt.com/) や [Zapier](https://zapier.com/) や [n8n](https://n8n.io/) のようなワークフローツール
* 特徴として Claris 謹製なだけあって Claris FileMaker との連携ができるのが強み
  * なお n8n も Claris FileMaker と連携できてフリーだったりする……

### 無料試用版
* 以下 URL より入手可能
  * https://www.claris.com/ja/trial/connect
* Claris ID を作成しておく必要がある


# 初期設定
## 管理画面 URL
* https://connect.claris.com/

## Claris ID でログイン
* ログインが求められるので素直にログイン

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/8a4c3fd0-98bf-d3ee-2d0e-8aecd3ac3d01.png)

## ダッシュボード表示
* 初期状態としてこのような感じの画面。もう少し飾り気あってもよいのでは……！？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/79560710-7e28-724f-2ad8-d2d331f57f78.png)

## プロジェクト作成
* `Create New` してみる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/5544c858-7f99-1751-5b23-1885905bb03d.png)

* プロジェクト画面に入れた

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/9ffe64ea-ac24-d059-05c5-b413dd9b38fd.png)

## フロー作成
*`Create New Flow` してみる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/a5bc8140-dfc1-c805-d985-7bc87bf3d5d9.png)

### トリガー設定
* トリガーを選べと言われる
* かなり判読しづらいけれど（アクセシビリティの規定から外れているのでは？）薄くなっているのが指定できないものということらしい。おそらくトリガになりえないものということと思われるが、そもそも表示させないで欲しい

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/d02f81ef-63d4-de46-eca9-05ce3def4ff9.png)

* FileMaker 関連を発見。`Claris FileMaker Server` と `Claris FileMaker Server On-Premise` の違いがすぐにはよく分からなかったけれど、どうやら、以下のようなことらしい
  * Claris FileMaker Server : インターネット環境からアクセス可能
  * Claris FileMaker Server On-Premise : インターネット環境からアクセス不可能

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/1124220d-a19c-0600-06d7-16e4c836fda1.png)

* twitter もあったので見てみると、トリガには指定できないらしい。たいへん残念。特定のキーワードのツイートが呟かれたら、それを拾って FileMaker ファイルへ書き込む……とかそんなことが簡単にできたら良かったのに
  * もちろん工夫して組み合わせればできることは分かっているのだけれど、あまり他のシステムを組み込みたくないじゃないですか

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/29a3d4c8-a1d5-78fa-4dcf-b10daeffea9c.png)

* メールは…… Gmail がない……！？　かなり致命的なような🤔　Outlook はあるのに……

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/0ea69c3b-8ff1-aa8d-6e61-6615393d4d4e.png)

* ひとまずスケジュールをトリガーにしてみよう

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/e17d7f0a-1219-ab6f-8b47-724c3f7ab039.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/ae27a916-100e-c73a-df01-13a198e17db9.png)

* カスタム設定を選ぶといきなり初心者お断り感が出てくる。cron 使ってる人ならすぐに分かるけれども……

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/60756fb8-ee48-0f78-33ef-3ff49eec5caa.png)

* いちおう、ここの `more` をクリックすると、以下の cron サポートページへ飛んでくれる。親切といえば親切か……！？
  * https://crontab.guru/

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/177ffc15-0e30-9119-92c2-44def158313f.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/7f7ab2d4-baa9-bfa7-5e34-8f1d209763f6.png)

* トリガーはひとまずできた

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/51488f4d-f9e3-2b4b-1124-8ab75a6eeb34.png)

## アクションの作成
* 上記で作成されたトリガーの右端 + マークを押して `Action` を作成開始
* 今度は Action で選べるものの色が濃くなっている

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/a683711b-fa91-d075-d78a-6888a2b83b41.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/c05ee9e0-d697-2b68-dad4-5a190a68d6f5.png)

* せっかくなので Claris FileMaker Server を選ぶと以下のように

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/7bcabc98-8abc-ad7c-5977-3ce6764fce87.png)

* スクリプト実行などあるけれど、ひとまずレコード作成で進むと、FileMaker Server へのログインが求められる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/8c1ab73e-acd7-2abc-b146-ecd020a540ce.png)

* ログインしようとすると小窓が開いて以下のような入力フォームが出現
  * `username`, `password`, `database` って何を入力すればよいの……
  * 入力すべき項目についてのドキュメントはこちら
    * https://help.claris.com/en/connect-help/content/connect-to-filemaker-apps.html
  * 上記読んでもやっぱりよくわからないけれど `Database name (with optional extension)` とあるのでおそらく AdminConsole の `username`, `password` でよいのかな……？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/1269c360-4903-26ab-62bb-1d1168239a8f.png)

* `Database name (with optional extension)` とあるのに、値が入っていないと先へ進むボタンが効かない
  * ということはこの `database` はファイル名のことでよいかな……だとすると `username`, `password` はファイルに対するもの？🤔

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/bf71ea30-b1a7-3bb5-8529-18ccfc29f8c0.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/9d29a8ec-51d5-c87d-a45f-4316caf74590.png)

* ……とまあ、初見だと完全に悩みますが、正解は以下の通りでした！
  * User : ファイル内ユーザー名。たとえば `admin` など
  * Password : 上記ユーザーのパスワード
  * Database : ファイル名（ .fmp12 は除く）
* 要注意点としては、アクセス権設定で以下の許可をしておくこと
  * FileMaker Data API でのアクセス (fmrest)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/cfbd804a-2df8-f597-c092-584a13f9c5c9.png)

* 認証が通ると以下の画面が表示されるので次へ続ける
  * なお FileMaker Server 19 であっても `FileMaker Server 18v3 account` と表示されているもよう

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/7de87019-3bfa-7ac1-31b9-541bd81782e8.png)

* 新規レコードを作成したいレイアウトがプルダウンで選べるようになるので選ぶ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/d3626904-e751-2add-24bd-c758a8df7960.png)

* テスト実行と結果。右上の `Review and Test` からテスト実行ができる。うまくいけば実際にレコードが作成される。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/e0846467-1177-cb64-594f-9790039eb363.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/513953d6-8550-3cde-ec04-ebcc98d00b3c.png)


* これにて完了

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/7393fa1e-dabb-0f18-5bd5-1f201ec81127.png)

## 動作確認を見届ける
* Claris Connect 管理画面上で実行ログが確認できるが、初期状態だと無効化されている

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/189e50d6-61a9-d23a-a3c4-0e1c48abaa6f.png)

* 有効化しておく

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/35e9cc70-9f05-625f-a335-9495ce8afdae.png)

* ……しかし待てど暮らせど、実行されない。cron の設定は正しいし timezone も合っているはずなのに。どうして！？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/bcd3f167-4698-d4f1-b75b-dcd38ffb79d0.png)

* チョット理由は分からないけれど、週末の土曜日曜を放置してみて、どのような時間帯に実行されるか／されないかを、経過観察してみようと思う。歯切れの悪い記事の終わり方になっていますが、後日追記します。

### 追記 2021/05/14 22:26
* 分かった！　[フリップフロップ問題](https://www.sociomedia.co.jp/9502) だ！
* 右上のトグルが青い状態になっている必要があります。はい。これで実行を待てばヨシ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/49757cc5-dcb9-7e44-1c32-ca0ffcd1280e.png)

### 追記 2021/05/17 09:22
* 土曜日曜に二度実行され、しっかりレコードが追加されていました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/8320fcc7-c430-5bfb-9d0f-fc542b864fe4.png)

* ただし 2021/05/15 の実行日時が異なっている……？　schedule のトリガーはやや不安定という話を聴いたりもしたので、少し様子見してみます🤔

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/29003017-6881-18f6-e1ae-478ebcb8459c.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/2a381864-4026-d5b9-3a30-c68526fcea47.png)

## 追記 2021/05/24 19:32
* 一週間、経過観察していましたが、最初で時刻がズレた以外は、安定して同じ時刻に動作しているもよう。大丈夫そう？🤔

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/37739/c67f7712-02e0-3088-67fe-7f26d1a5dabb.png)



# おわりに
## 雑感
* やっぱりドキュメントが貧弱で、ノーコード初心者向けにもう少し手厚いフォローをしてくれていてもよいのではないかなあと思いました。これではユーザー増えづらいのでは……
* たとえば IFTTT や Zapier であれば利用者も多く、ユーザーによる記事発信も豊富なので、よし自分でやってみよう、となるけれど、まだまだ Claris Connect はユーザーからの発信も少ないので、公式がもっと気合入れて頑張ってくれないといけないと思いました。
* ひとまず自分が記事を発信していってみようかなとは思う……

## 続編記事
* [Claris Connect は FileMaker の日本語ファイル名に対応しているか検証](https://qiita.com/Hi_Noguchi/items/6ee9013710da37ab03a1)