KyoshinEewViewer for ingen のワークフロー機能を使いこなそう!

この記事は 防災アプリ開発 Advent Calendar 2025 の4日目の記事です。 昨日に引き続き拙作のアプリの話をさせてください! はじめに 僕は KyoshinEewViewer for ingen というアプリを趣味で開発しています。 KyoshinEewViewer for ingen には、地震や津波などの災害情報を受信した際に、自動的にさまざまなアクションを実行できる「ワークフロー」機能が搭載されています。本記事では、ワークフロー機能の基本から実用的な活用例まで解説します。 なお、この記事は2025年12月時点での仕様となります。今後の開発に応じて機能の追加や削除・変更を行う可能性がありますのでご了承ください。 最新の情報は ワークフローガイド をご確認ください。 ワークフローとは ワークフローは、「特定のイベントが発生したとき」に「指定したアクションを自動実行する」仕組みです。例えば、緊急地震速報を受信したらVOICEVOXで読み上げる、震度5以上の地震情報が来たらWebhookで外部サービスに通知する、といった形です。 イベント発生(地震情報受信など) ↓...

   2025年12月04日     21分で読めます
強震モニタの観測点をリポジトリに独立させました

この記事は 防災アプリ開発 Advent Calendar 2025 の3日目の記事です。 はじめに 僕は KyoshinEewViewer for ingen というアプリを趣味で開発しています。 このアプリは強震モニタの画像から観測点データを抽出して表示する仕組みを持っているのですが、観測点データはアプリ本体に組み込んでいました。 OSS として開発しており GitHub 上でソースコードを公開しているため観測点データは公開されていましたが、いくつかの問題がありました。 問題点 更新の手間: 観測点データを更新したとき、再度ビルドしてリリースする必要があった 更新のリスク: アプリケーションのリリースが必要なため、新機能などをテストしているバージョンなどが存在すると更新が遅れることや、更新漏れが発生する可能性があった 再利用性: OSS にもかかわらず独自形式でパックしていたため、他のプロジェクトで再利用しづらかった...

   2025年12月03日     6分で読めます
万博の予約システム・歩き方についての備忘録

みなさん万博は行きましたか?僕は開幕2週間で3回行きました! というわけで、メモがてら万博の予約システムはどうなっているのか、実際どうなのかを記事にしたいと思います。 この記事は4月25日までのろくに公式情報を調べていない個人の見解をまとめているため正しくない情報が含まれている可能性が非常に高いです。 あくまで参考程度に受け取ってもらえるとうれしいです。 この記事をまとめると 事前予約・当日予約はそれぞれ1枠しか存在しない どうしても行きたいパビリオンがあれば事前抽選で1つのパビリオンに対して1時間おきに希望を入れると当選しやすくなる(未検証) 殆どのパビリオンは並べば入れる 焦って当日予約して時間に縛られないように気をつける チケット・予約の構造について まずは概念から把握していきましょう。 チケットはいろいろな方法で入手できるようですが、チケットごとにチケットIDが割り振られており、そのチケットを万博IDに紐付けることでWebからのパビリオンの予約が可能になります。 もちろんですが、チケットをWebで購入した場合には購入した万博IDに自動で紐付けられます。僕はやったことないですが、譲渡などもできるようです。 基本的には一対多の関係にあり、1つの万博IDに複数のチケットが、1つのチケットにつき複数の来場予約を設定することができます。(複数の来場予約は通期パスのみ;最大3つまで) 来場予約には入場前の 事前予約 ・ 入場後の 当日予約 が 1件ずつのみ 紐付きます。ここが大事なポイントです。 予約について 来場日時予約 まずは来場日時予約を行います。この時間は...

   2025年04月25日     10分で読めます
C#でBUFRを読んでみる(ヘッダーのみ)

これは 防災アプリ開発 Advent Calendar 2024 の17日目の記事です。 といいつつ遅れてます…すみません。さすがにキツかった…。 と言いつつ原因は他のところにあります。10万ぶち込んで5凸しかできてない愚かな人類がここにいます。 BUFR とは? アドベントカレンダー経由で見た方はご存じの方も多いかもしれませんが、パッと聞かれても答えられる人は相当なマニアだと思います。 正直なところ今回の記事の内容自体すべてとてもわかりやすく解説しているドキュメントをC#に移植しただけなのですが、せっかくなのでみなさんも入門しましょう。 細かい解説や歴史は↑のドキュメントにあるので読んでいただくとして、専ら気象庁における使われ方としては 『XML だとでかくなりすぎるのでやむを得ずバイナリとして配信しているデータ』 だと思います(個人の意見)。 全体を見てみる BUFR は6つのセクション(節)に分かれているようです。 マジックナンバー・電文長定義 電文情報 任意情報 データ構造 データ本体 マジックナンバー(おわり)...

   2024年12月21日     16分で読めます
2024年版 KEVi の設計(後半)

これは 防災アプリ開発 Advent Calendar 2024 の11日目の記事です。 前半の記事はこちら! 前回に引き続き、設計についてのお話を書きます。 設定画面 今まで設定画面はずらずらと1つの XAML ファイルに書いていたのですが、タブの数や設定項目がさすがに多くなってきてメンテナンスに問題が生じるようになってきました。 まず第1段階として各タブ内の UI を UserControl としてファイルに分割しました。そしてそのコントロールを各タブ内のコンテンツとしてセットすることで設定画面の中身を複数のファイルに分散することができるようになりました。 しかしタブの数が増えてきてコンテンツを除いてもファイルが大きくなっていたことと、合わせて ViewModel が肥大化し、保守が厳しくなってきたためもう少し汎用化することとしました。 これはバージョン 0.19 でリニューアルされた設定画面ですが、有効になっている機能のタブを固定設定から上下から挟む構造になっています。 設定ページは必ず ISettingPage...

   2024年12月10日     9分で読めます