私は仕事で車で出張し、そのまま自宅に直帰することが多いです。
帰宅時間がバラバラになるので、現地を出発する前に「今から帰ります。到着時刻は○○時ごろです。」というようなメールを家族に送るようにしています。
このメール作成をショートカットで自動化してみたのでご紹介します。
このショートカットでできること
出発前にショートカットを実行するだけで、
「今から帰ります。([出発地])。〇時×分ごろ(約△分後)に到着予定です。」
というメールを自動で作成できるようになります。
レシピの全体像

何度試しても画質が低下してしまいます。申し訳ありません。
次に分解した図を載せますのでお許しください。
レシピの説明
ここからは各アクションの説明をしていきます。
※アクションによっては、入力としてマジック変数を指定する必要があります。

現在地の取得
まずは位置情報から現在地を取得します。
そのままでは長ったらしい情報になるので、市区町村と番地だけを抜き出しています。
ここでいう市区町村と番地なのですが、
- X県A市B町C1丁目
- X県A市B町1丁目
- X県A市D1丁目
- X県E町F1丁目
というような地名の場合、1~3の市区町村はA市、4はE町になります。
それより後はすべて番地扱いです。
さて、市区町村と番地を抜き出したら、いったんリストに格納した後に空白で結合しています。
その後、「1丁目」や「1番地」といった部分を削除するため、正規表現を利用しています。
アクション中にある正規表現は、「最初に出てきた数字以降をすべて削除する」といった意味です。
削除している理由は、あまり精度が良くなくて入れる意味が無いのと、プライバシーへの配慮です。
ショートカットで使える正規表現については、下の記事をご覧ください。

ショートカットの正規表現はThe ICU Regular Expressionsに準じているとのことです。

現在時刻の取得
現在の日付を取得し、HH時mm分の形式にフォーマットすることで現在時刻を取り出します。

メール本文の作成
テキストアクションでメール本文を作成しています。
本文中に{}が入っているのは、後で必要な情報を置換で埋め込むための目印です。
書き方に特に決まりはありませんが、私はPythonでの書き方に倣いました。
作成した直後に、置換によって現在地を本文に埋め込んでいます。
移動時間の算出
現在地から目的地(自宅)までの車での移動時間を計算します。
目的地や交通手段は適宜変更してください。

到着時刻の算出
まず移動時間を5桁の小数位にフォーマットすることで、秒数に変換しています。
次に、移動時間(秒)を現在の日付に加算することで、到着時刻を算出します。
最後に、HH時mm分の形式にフォーマットし、メール本文に埋め込みます。

件名の作成
テキストアクションで件名を作成し、現在地と現在時刻を埋め込みます。
入れる情報はお好みで。
メールを送信
作成した本文と件名からメールを作成して終了です。
おわりに
ショートカットを作成するとSiriから実行することもできるので便利です。
ただし、送信ボタンは自分で押す必要があります。
このレシピが参考になれば幸いです。
コメント