今回は少し難し目の記事となります
Xコールバック
そもそもコールバックって何なんって話ですよね
コールバック
コールバックとは、コール=呼ぶ バック=戻る ってことで、「呼んだ後に戻ってくる」処理の事を言います
プログラミングにおいては、関数Aをある式で計算したいとします
その式の途中で、関数Bを使って計算する必要があった場合、式の途中で関数Bを呼び出します
この一連の処理をコールバックとか言ったりするらしい
ちなみに呼び出された側の関数Bのことをコールバック関数って言ったりもするらしい
コールバックURL
コールバックの中身がほんの少しわかった所で、今回のアクションは「コールバックURL」ですね
URLがつくと何が変わるのかというと、関数=サイトになる点ぐらいです
例えばグーグルでアカウントを作成し、ポケモンGOに新規登録したとします
このときグーグルアカウントで登録することができますが、操作としてはポケモンGOで新規登録→グーグルアカウントの認証→ポケモンGOに戻るという処理がなされます
このように「一旦別のサイトの認証を得るために別のサイトを開くが、処理が正常に終わったら元のサイトに戻る」っていう一連の処理をするための機能が、コールバックURLです
特にこのXコールバックはアプリ間連携においてよく使われるそうです
具体的にはショートカットを別アプリから起動させたりとか
そういった特殊な使い方になるため、軽い使い方をされている方にはほぼ無縁と言っていいでしょう
アクションの解説
ここまで読んだら大体分かるんでは?って感じですが、実際に追加してみると中々です
以下が実際のアクション画面
X-Callback URL
ここにURLなりスキームなりを入力します
ショートカットを別アプリから起動するためのスキームを張っておきます
shortcuts://run-shortcut?name=
name=の後にショートカットの名前を入れますが、URLエンコードで日本語→%エンコーディングしないと使用出来ません
URLエンコードについては以下

カスタムコールバック
「xコールバックURLに準拠せず、成功/エラー/キャンセル以外のキーが使用されるURLを開きたい場合はチェックを入れる」
とのことですが、正直良くわかりませんね
要するにxコールバックの形式じゃないけど処理する?みたいな感じです
カスタムx-success URL
ONにするとコールバックの値を任意に設定出来ます
OFFの場合、デフォルトの値が使用されます デフォルトはshortcuts://callbackです
X-Success URL
コールバックの値を指定出来ます
とのことですが、説明欄にはこう書かれています
たとえば、shortcuts://callback?result=[output]を使用出来ます
これはショートカットを呼び出し、結果を出力すると書かれています
これ以上でも無く以下でも無く、これだけなので正確な使い方とかは不明でした
使用例
理解度が浅いなりに上記までの内容でお試し例
アクションは
- URL
- XコールバックURLを開く
の順に配置
事前準備として、このコールバックとは別のショートカットを作り、通知を表示するだけを入れておきます 通知内容に関しては何でも良いです
通知を表示するだけのショートカットができたら、通知ショートカットの名前をURLエンコードでエンコードしてもらいます
結果が出たら全部選択→コピーしておきます
コールバックのショートカットに戻り、URLを弄ります
以下のショートカットスキームを入力し、末尾にエンコードした文字列を貼り付けます
shortcuts://run-shortcut?name=
XコールバックURLの詳細設定は全部スルーし、再生ボタンを押してみてください
コールバックのショートカットが終了し、通知用のショートカットが実行されるはずです
ちなみに、ショートカット(Xコールバック使用)→Xコールバックで呼ばれたショートカット内にXコールバックを入れてショートカットを呼び出し→っていうループは出来ませんでした
その他のアクション
その他のアクションに関しては以下からどうぞ
