今日の作業
Web Logbook のUI改善と、総務省の無線局等情報検索APIとの連携を実装しました。登録・ログインをシンプルに
当初はメールアドレスを必須にしていましたが、アマチュア無線の世界ではコールサインが唯一の識別子です。そこで登録フローを大幅に簡略化しました。 変更前: コールサイン + メールアドレス + パスワード 変更後: コールサイン + パスワード のみメールアドレスはパスワードリセット用として、自局設定画面で任意入力できるようにしました。ログインもコールサインで行います。ハムにとって最も自然な形です。
カラーテーマの変更
ベースカラーを青系からライトグリーン系に変更しました。- ヘッダー: 薄いグリーン (#e8f5e9)
- ナビゲーション: ライトグリーン (#c8e6c9)
- ボタン: グリーン (#43a047)
- 背景: ほぼ白のグリーン (#f5f7f5)
基本情報の整理
設定画面の「基本情報」セクションを整理しました。 基本情報に残した項目:- コールサイン(変更不可)
- メールアドレス(任意)
- オペレーター名
総務省API連携
今回の目玉は、総務省の無線局等情報検索 Web-API との連携です。苦労したポイント
1. User-Agent問題: 総務省のAPIは2025年のシステム更新以降、ブラウザ風のUser-Agentでないとアクセスを拒否するようになりました。PHPのfile_get_contents では正しくヘッダーが送信されず、cURL に切り替えることで解決。2. 取得件数の制限: 詳細情報付き(DA=1)の場合、一度に取得できる件数(DC)は最大2件まで。最初はDC=10を指定して400エラーが返っていました。
3. APIの仕様:
GET https://www.tele.soumu.go.jp/musen/list?ST=1&OW=AT&OF=2&DA=1&SC=1&DC=2&MA=コールサイン&MC=1
| パラメータ | 値 | 意味 |
|---|---|---|
| ST | 1 | アマチュア局検索 |
| OW | AT | アマチュア局 |
| OF | 2 | JSON形式 |
| DA | 1 | 詳細情報あり |
| DC | 2 | 取得件数(詳細ありは最大2) |
| MA | コールサイン | 検索対象 |
| MC | 1 | UTF-8 |
取得できる情報
コールサインを指定するだけで、以下の情報が自動取得できます:- 局種別(移動局/固定局)
- 常置場所/設置場所
- 免許日
- 有効期限
- 移動範囲
ワンクリック登録
取得した免許情報は「この免許を登録」ボタンでワンクリックでDBに保存できます。手入力の手間を大幅に削減しました。無線局免許の表示改善
登録済みの無線局免許の一覧表示を改善し、以下の情報をカード形式で見やすく表示するようにしました:- コールサイン
- 局種別
- 常置場所
- 免許日
- 有効期限
管理者権限
JR2BEB(開発者)に管理者権限を付与しました。logbook_users テーブルに role カラム(user/admin)を追加し、将来の管理機能に備えます。
次にやること
- QSOログ入力画面の作成
- ログ一覧・検索機能
