Skip to content

Instantly share code, notes, and snippets.

@noellabo
Last active September 5, 2018 01:26
Show Gist options
  • Save noellabo/85f2235cef7e051f3314f48c91c6ac74 to your computer and use it in GitHub Desktop.
Save noellabo/85f2235cef7e051f3314f48c91c6ac74 to your computer and use it in GitHub Desktop.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="https://cdnjs.cloudflare.com/ajax/libs/raphael/2.2.7/raphael.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/js-sequence-diagrams/1.0.6/sequence-diagram-min.js"></script>
</head>
<body>
<div id="diagram"></div>
<script>
var request = new XMLHttpRequest();
request.open('GET', 'sequence.txt', false);
request.send();
var sequence = request.responseText;
var diagram = Diagram.parse(sequence);
diagram.drawSVG("diagram", {theme: 'simple'});
</script>
</html>
Title:インスタンスをリレーに新規登録するシーケンス図
Note left of インスタンス:【WebUIリレー新規登録】\nリレーサーバの\ninbox urlを指定
Note left of インスタンス:所属ユーザーを一人選定\n(使い切りなので誰でもOK)\n@user
Note over インスタンス:Webfingerで\n@relayの問い合わせ先を取得
インスタンス->リレーサーバ: GET /.well-known/webfinger
リレーサーバ--インスタンス:(JSON: @relayなら/actorだよ)
Note over インスタンス:@relayの情報を取得
インスタンス-リレーサーバ: GET /actor
リレーサーバ--インスタンス:(JSON: @relayの情報)
Note left of インスタンス:「リレーサーバの承認待ち」
Note over インスタンス:@relayをフォローする
インスタンス-リレーサーバ:POST /inbox(AP: Follow[])
Note over リレーサーバ:@userの情報を取得
リレーサーバ-インスタンス:GET /users/user(@userの情報くれ)
インスタンス--リレーサーバ:(JSON: @userの情報)
Note right of リレーサーバ:インスタンスのドメインと\n共有inboxのurlを記録
Note over リレーサーバ:フォロー受領を通知する
リレーサーバ-インスタンス:POST /inbox(AP: Accept[Follow])
インスタンス--リレーサーバ:(了解)
Note left of インスタンス:リモートユーザー登録\n@relay
Note left of インスタンス:「Enable」
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment