入口と接続のしくみ
接続の流れ
fuga-api は、起動中の Fuga の窓口へ、次の順で接続します。
~/.kamui-arena/eb/<scope>/current.jsonから、起動中の Fuga を探す。current.jsonが指す場所のendpoint.jsonを読み、接続先と token を得る。- 同じパソコンの UNIX ソケットへ、1 行 1 JSON の形で要求を送り、返事を受け取る。
Fuga が起動していないと、status、receipt、submit などは、BACKEND_NOT_FOUND か BACKEND_NOT_RUNNING を返します。goals は保存されたゴールを表示しますが、実行中のタスクの情報は空になります。
token について
endpoint.json には、接続に使う token(秘密の値)が入っています。
token は人に渡さず、貼り付けもしないでください。
fuga-api は、endpoint.json が本人だけに読めるファイルであることを確かめてから使います。
Fuga が正常に終了すると、endpoint.json は消えます。
見つからないときの表示
| code | 意味 | 次にすること |
|---|---|---|
BACKEND_NOT_FOUND |
接続情報の置き場(~/.kamui-arena/eb)が無い、または指定した --scope が無い |
Fuga を起動してから、もう一度実行する |
BACKEND_NOT_RUNNING |
接続情報はあるが、起動中の Fuga が無い | Fuga を起動してから、もう一度実行する |
AMBIGUOUS_BACKEND_SCOPE |
起動中の Fuga が 2 つ以上ある | --scope <scope> で接続先を選ぶ |
RESULT_UNKNOWN |
submit の後、結果が分からない |
表示された receipt のコマンドで確かめる。確かめるまで送り直さない |
INVALID_CLI_ARGUMENT |
引数の形が正しくない | fuga-api help で書き方を確かめる |
--arena-root <dir> は Fuga の保存先(既定は ~/.kamui-arena)を、--scope <scope> は接続先を指定します。