 
  [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
私は今まで TRPG のためのツールをいくつか作ってきた。作る際、悩むことは多いがそのうちの一つが「ダイスボットをどうするか」である。日本国内で最も頻繁に使われているであろうダイスボットは BCDice であろう。分かりやすく言うとどどんとふのダイスボットである。
このどどんとふのダイスボットを提供する API サーバ、BCDice-API が公開された。
使い方は簡単である。詳細は API ドキュメントをご覧いただきたい。
次のような感じで使う。
curl "http://bcdice.herokuapp.com/v1/diceroll?system=SwordWorld2.0&command=k20"
URL を経由してパラメータを渡し、システムとダイスコマンドを送信する。
callback に対応していないのでブラウザの JavaScript からは自分のサーバに設置しなければ叩けないが、そうでないアプリを作るときは何かと便利そうである。
AWS SDK for Java でボリュームの一覧を取りたかったのだが詰まったのでメモ。
List<string> endpoints = Arrays.asList(["us-east-1.amazonaws.com",
					"us-west-1.amazonaws.com",
					"us-west-2.amazonaws.com",
					"ap-south-1.amazonaws.com",
					"ap-northeast-2.amazonaws.com",
					"ap-southeast-1.amazonaws.com",
					"ap-southeast-2.amazonaws.com",
					"ap-northeast-1.amazonaws.com",
					"eu-central-1.amazonaws.com",
					"eu-west-1.amazonaws.com",
					"sa-east-1.amazonaws.com"]);
AWSCredentials credential = new BasicAWSCredentials(myAccessKey, mySecretKey);
AmazonEC2Client client = new AmazonEC2Client(credential);
endpoints.forEach(endpoint->{
	client.setEndpoint("ec2." + endpoint);
	List volumes = client.describeVolumes().getVolumes();
	// 以下やりたい処理
});
 
AmazonEC2Client を作るときにリージョン指定が無くても作れるのだが、実際に使う時はリージョンを指定しないと動かない。上のようにすると複数リージョンの情報をサッと取ってこれた。リージョンごとのエンドポイントは https://docs.aws.amazon.com/ja_jp/general/latest/gr/rande.html に掲載されている。
AWS CLI が便利だと先日悶えたばかりなのに愚痴である。AWS CLI からは AWS コンソールのコストエクスプローラーから DL できる CSV が取得できないようである。これは Selenium とかでとるしかないのだろうか……
インスタンス・ボリュームに付与したタグ毎にかかった金額を取得したかったのだが……それとも別の手段で取れる?
AWS CLI に最近頼りっぱなしである。--profile で利用するアカウントを切り替えられるのが嬉しい。出力も json や table も対応しているのが嬉しい。
来年はたぶん AWS CLI のメモが増えたりすると思う。ひよこは不要インスタンスの削除とかにちょこちょこ使っている。インスタンス一覧を出して、特定のタグが付いていないインスタンスを全部消したりとか。
歌詞をプロジェクタを使って投影することがある。その時によく使うテクニックの話。クリスマスの時期とかよくやるんですよ、こういうの。