# ショートカット活用. 前後のツイートを検索

# やりたいこと

ツイッターの「該当ツイートの前後のツイート」を見たい。

# やってみたこと

iOS の最近のバージョンから使えるようになった「ショートカット」を活用してみることにした。

※ もともと見たかったのは RT 前後のツイートだから、これだと目的に達してないけど

  1. Twitter アプリの「共有」から URL を取得
  2. URL から ツイートのID と、アカウントID を取得
  3. ツイートのID からツイート時刻を取得 (たぶん非推奨)
  4. 前後 N 時間を計算
  5. Twitter で、from:<ユーザ名> since:YYYY-MM-DD until:YYYY-MM-DD で検索
    • (Twitter アプリに戻ってくる)

# 感想

  • めんどくさすぎた。もうやらない。
  • この UI だと、変数名アルファベットにこだわることがない、というのは体感としては少し新鮮だったかも

# スクショ

動画にして あげておいた。

https://twitter.com/takaaki024app/status/1439495039554490368?s=20 (opens new window)

# 設定

# 1. URLの分割

  • 1-1. URL
    • ショートカットの入力 から パス を取得
    • ※ 「共有」で送られてくる文字列
  • 1-2. テキスト
    • URLのコンポーネントカスタム / で分割
    • ※ split している
  • 1-3. 変数
    • 変数 パス要素テキストを分割 に設定
    • ※ split したものを変数に入れている

# 2. ツイートIDとアカウントIDの取得

# ツイートID取得

  • 2-1. スクリプティング
    • パス要素 から 最後の項目 を取得
    • ※ これはツイートのID
  • 2-2. 変数
    • 変数 ツイートIDリストからの項目 に設定
  • 2-3. ショートカット
    • TweetIDから時刻 を実行
    • ※ これは 予めつくっておいたショートカット(後述)
  • 2-4. 変数
    • ツイート時刻ショートカットの結果 に設定

# アカウントID取得

  • 2-5. スクリプティング
    • パス要素 から 項目のインデックス2 を取得
    • ※ これは ツイートした人のID
  • 2-6. 変数
    • 変数 アカウントIDリストからの項目 に設定

# 3. ツイート時刻取得

これは別ショートカットとして分けて作った。

理屈は下記の Qiita を参考にした。

https://qiita.com/riocampos/items/e5544325211976f2cfc1 (opens new window)

  • 3-1. 計算
    • ショートカットの入力 % 4194304
    • ※ 上記 URL の N >> 22 がやりたくて 2 の 22 乗 で割った
  • 3-2. 計算
    • 計算結果 + 1288834974657
    • ※ この数字も上記URLのもの
  • 3-3. 計算
    • 計算結果 % 1000.0
  • 3-4. カレンダー
    • 1970/01/01計算結果 加算

# 4. 前後 N 時間の計算

# 何時間かを指定

  • 4-1. スクリプティング
    • 前後何時間?数字 を要求
      • デフォルト: 1
      • 小数点以下の数字を許可: No
      • 負の数字を許可: No
    • ※ これは、プロンプトを出して、何時間かを選べるようにしている
  • 4-2. 変数
    • 変数 前後N時間指定入力 に設定

# 時刻の計算

  • 4-4. カレンダー
    • ツイート時刻前後N時間 時間加算
    • ※ 時間計算は カレンダーでやる
    • ※ 注:もとの変数の値が変わる? ・・だけではなさそうなズレ方をする
      • 気が向いたらあとで調べる。
  • 4-5. カレンダー
    • 調整済みの日付 をフォーマット
      • yyyy-MM-dd_HH:mm:ss_zzz
  • 4-6. 変数
    • 変数 N時間後フォーマット済の日付 に設定

N時間前 についても同様に

# 5. Twitter 検索

Twitter検索 というアクションが選べるが、
これは 文字列を渡しても検索はしてくれず、検索画面を出すだけなので、
URL スキーム twitter://search?query= を使うことにする。

  • 5-1. テキスト
    • テキストリスト(下記)カスタム (空欄) で結合
      • from:
      • アカウントID
      • +since:
      • N時間前
      • +until:
      • N時間後
      • ※ つなげて書くだけだとスペースが間に挟まるので、リストにして (空欄) で結合している
      • ※ スペースが入ると、検索に反応しないので、URLEncode して + をつける
  • 5-2. テキスト
    • テキストリスト(下記)カスタム (空欄) で結合
      • twitter://search?query=
      • 結合済みのテキスト
  • 5-3. Safari
    • 結合済みのテキスト を開く

[ 📩 ご意見 ]