下記の記事で、準天頂衛星システム「みちびき」から送信される災危通報に含まれる位置情報(地名、緯度・経度)に基づいて、ChatGPTなどのAIに台風の位置などを表示してもらったことを紹介したが、iPhoneのiOS27では、ショートカットに「画面上のものを取得」という機能ができるということだったので、宅内Webサーバーの災危通報のページをiPhoneで表示させた状態で、この機能を使い、表示されている文字情報をSiri AIに渡して要約を作成してもらったり、台風の位置を地図に表示してもらったりできないかと考えた。本記事はその実現可能性についてChatGPT-5.6 Solの力を借りて調査した記録である。
※この記事は2026年8月2日時点のAppleの公式情報をもとにしています。iOS 27やSiri AIには開発中またはベータ段階の機能が含まれており、正式公開までに仕様が変更される可能性があります。
(注)本記事の内容は正確性を保証するものではない。
(2026年8月2日 追記)YouTube動画を追加しました。 https://youtu.be/b0Y8fjpu0oA

画面取得・AI要約・台風位置のマップ表示・履歴保存まで
準天頂衛星システム「みちびき」から送信される災危通報を受信し、宅内ネットワーク上のWebサーバー(ESPr Developer C6)で表示できるようにしています。

現在のWebページには、地震、津波、台風、気象警報、海上警報など、受信した複数の災危通報が文字で表示されます。しかし、そのままでは情報量が多く、日常的に確認するには少し読みづらい状態です。
そこで今回は、iOS 27で強化されたショートカットとApple Intelligenceを使って、次のような処理ができないか検討しました。
- Webページから災危通報を取得する
- 海上濃霧など、必要性の低い情報を除外する
- 台風、地震、津波、避難情報などを短く要約する
- 台風や地震の緯度・経度をAppleマップに表示する
- 受信した災危通報と要約を履歴として残す
- インターネット回線が使えない場合にも、可能な範囲で利用する
結論から言うと、試験的には「画面上のものを取得」でも実現できますが、継続的に利用するのであれば、WebサーバーにJSON形式のデータを返すURLを追加する方法が最も安定しています。
みちびきの「災危通報」とは

災害・危機管理通報サービス、通称「災危通報」は、防災機関から発表された地震、津波などの災害情報や危機管理情報を、みちびき経由で送信するサービスです。
通常のインターネットや携帯電話回線ではなく、みちびきのL1S信号を利用して、災害情報を4秒間隔で送信します。
そのため、山間部や地上の通信設備が被災した地域でも、対応する受信機があれば災害情報を受信できる可能性があります。
今回のシステムでは、対応する受信機とマイコン(ESPr Developer C6)で災危通報を受信・解析し、その結果を宅内ネットワーク上のWebページに表示しています。
iPhoneが、みちびきの災危通報を直接受信しているわけではありません。
iPhoneは、受信機側で解析された情報をWebページやJSONデータとして読み取ります。
災危通報とJアラート・Lアラートの関係
災危通報には、地震や津波などの防災気象情報だけでなく、拡張サービスとしてJアラートやLアラートの情報も含まれます。
みちびきの災危通報(拡張)では、2024年4月1日から、Jアラートのミサイル発射情報などと、Lアラートの避難情報の配信が始まっています。
Jアラートとは
Jアラートの正式名称は「全国瞬時警報システム」です。
弾道ミサイル情報、緊急地震速報、大津波警報、津波警報、噴火警報、気象特別警報など、特に緊急性が高い情報を国から自治体へ送り、防災行政無線などを自動的に起動して住民へ伝える仕組みです。
簡単に言えば、Jアラートは、すぐに身を守る行動が必要になる可能性の高い情報を、国から瞬時に伝える仕組みです。
Lアラートとは
Lアラートは「災害情報共有システム」の名称です。
自治体やライフライン事業者などが発信した地域の災害情報を集約し、テレビ、インターネット、携帯電話事業者、ポータルサイトなどへ一括して配信します。
主に、避難指示、避難所の開設情報、地域の被害情報などが対象になります。
地域住民がLアラートのシステムを直接見るのではなく、テレビやWebサービスなどを通じて情報を受け取ります。
簡単に整理すると、次のようになります。
| 種類 | 主な役割 |
|---|---|
| Jアラート | 国から、極めて緊急性の高い情報を瞬時に伝える |
| Lアラート | 自治体などの地域情報を、多数のメディアへ共有する |
| みちびきの災危通報 | 防災情報を衛星経由で受信機へ届ける |
Webページから情報を取得する3つの方法
今回検討した取得方法は、大きく3つあります。
- 「画面上のものを取得」を使う
- SafariでJavaScriptを実行する
- WebサーバーにJSON用URLを追加する
それぞれ、取得できる範囲や安定性が異なります。
方法1:「画面上のものを取得」を使う
最も簡単に試せるのが、iOS 27のショートカットのアクション「画面上のものを取得」を利用する方法です。
Safariで災危通報のWebページを表示し、その状態でショートカットを起動します。
ショートカットの詳細設定で「画面上のものを受信」をオンにすると、Safari、マップ、写真など、対応するアプリの画面上の項目をショートカットへ渡せます。Appleは、Siriや背面タップなどからショートカットを実行する方法を案内しています。
「ショートカットの詳細設定で「画面上のものを受信」をオンにすると」と回答されているが、この設定は現状では確認できていない。
ページを表示したままショートカットを起動する方法
実際には、次のように操作します。
- ショートカットの詳細設定で「画面上のものを受信」をオンにする
- iPhoneの「設定」を開く
- 「アクセシビリティ」から「タッチ」を開く
- 「背面タップ」を選ぶ
- ダブルタップまたはトリプルタップに、作成したショートカットを割り当てる
- Safariで災危通報のページを表示する
- iPhoneの背面をタップしてショートカットを実行する
処理の流れは次のようになります。
Safariで災危通報ページを表示
↓
iPhoneの背面をダブルタップ
↓
画面上の情報をショートカットへ渡す
↓
必要な情報を抽出
↓
Apple Intelligenceで要約
↓
結果を表示
この方法なら、サーバー側のプログラムを修正しなくても試せます。
ただし、「画面上のものを取得」は、基本的に画面上で認識できる内容を利用する方法です。
ページが長い場合、スクロールしていない部分や、折り畳まれている部分まで確実に取得できるとは限りません。また、Safariの表示範囲、画面サイズ、文字の省略、Webページのレイアウトなどの影響を受ける可能性があります。
そのため、現在表示しているページを簡単に要約する用途には向いていますが、災害情報を正確に継続処理する仕組みとしては、少し不安が残ります。
「画面上のものを取得」の機能の詳細は不明なため、スクロールしていない部分の情報を確実に取得できるかどうかは未確認の状態である。
方法2:SafariでJavaScriptを実行する
次に考えられるのが、ショートカットの「WebページでJavaScriptを実行」アクションを使う方法です。
この方法では、画面に見えている範囲だけでなく、Safariで開いているWebページのHTMLから文字情報を取り出せます。
たとえば、ページ全体の文字を取り出すだけなら、概念的には次のようなJavaScriptを使用できます。
completion(document.body.innerText);
「WebページでJavaScriptを実行」への入力は、Safariで現在開いているWebページである必要があります。
そのため、このショートカットは、Safariの共有ボタンから実行します。
操作は次のようになります。
Safariで災危通報ページを表示
↓
Safariの共有ボタンをタップ
↓
QZSS用ショートカットを選択
↓
JavaScriptでページ内の文字を取得
↓
必要部分を抽出・要約
この方法は、「画面上のものを取得」よりも広い範囲の文字を取得できます。
一方で、WebページのHTML構造に依存します。
たとえば、緯度を表示しているHTML要素のclass名が変更された場合、JavaScript側も修正しなければなりません。
<div class="latitude">北緯25.4度</div>
これが、Webページの変更によって次のようになったとします。
<span class="position-lat">北緯25.4度</span>
JavaScriptで.latitudeを指定していた場合、情報を取得できなくなります。
また、JavaScriptを実行するショートカットは、そのWebページ上の情報へアクセスできるため、信頼できる自作ショートカットに限定して使う必要があります。
Appleも、Webページ上の機密情報へアクセスできる可能性がある点を説明しています。
方法3:WebサーバーにJSON用URLを追加する
今回の用途で最も適しているのは、WebサーバーにJSON形式のデータを返すURLを追加する方法です。
たとえば、現在のWebページとは別に、次のようなURLを用意します。
http://受信機のIPアドレス/api/disasters
このURLへアクセスすると、Webページではなく、次のようなデータを返します。
{
"event_count": 1,
"events": [
{
"event_id": "QZSS-20260802-001",
"type": "typhoon",
"issued_at": "2026-08-02T08:00:00+09:00",
"area": "沖縄地方",
"latitude": 25.4,
"longitude": 132.1,
"central_pressure_hpa": 950,
"maximum_wind_speed_ms": 40,
"original_text": "受信した災危通報の本文"
}
]
}
この方式では、ショートカットがWebページの文字を読み取るのではありません。
Webページを表示する前の元データを、項目ごとに直接受け取ります。
そのため、次の変更に影響されにくくなります。
- iPhoneの画面サイズ
- Safariで見えている範囲
- スクロール位置
- Webページの文字サイズ
- ページの配色
- HTMLのレイアウト
- 表示用の装飾
Webページのデザインを変更しても、JSONの項目名と仕様を変えなければ、ショートカットはそのまま動作できます。
3方式の比較
| 方法 | 利点 | 注意点 |
|---|---|---|
| 画面上のものを取得 | サーバーを修正せず、すぐ試せる | 画面表示やレイアウトの影響を受ける |
| JavaScript | 画面外を含むWebページから取得できる | HTML構造の変更に弱い |
| JSON用URL | 必要項目を正確に取得しやすい | サーバープログラムの修正が必要 |
最初の試作は「画面上のものを取得」で行い、動作の見通しが立った段階でJSON方式へ移行するのが現実的です。
JSONを使ったショートカットの構成
JSON用URLを追加した場合、ショートカットは次のような構成にできます。
URLを指定
↓
URLの内容を取得
↓
JSONのeventsを取得
↓
各イベントを繰り返す
↓
災害種別を確認
↓
不要な情報を除外
↓
日時・地域・緯度・経度などを取得
↓
Apple Intelligenceで短く要約
↓
結果を表示
↓
位置情報があればAppleマップを開く
↓
Storage(ストレージ)へ履歴を保存
緯度、経度、中心気圧、発表日時などは、生成AIに読み取らせるのではなく、「辞書の値を取得」などの通常アクションで取り出します。
生成AIは、取得した正確な数値を、人が読みやすい文章へ整える部分だけに使用します。
Storage(ストレージ)は、iOS27のショートカットに追加される保存機能。(後述)
不要な情報をどのように除外するか
災危通報には、日常生活上の緊急性が比較的低い海上気象情報も含まれることがあります。
今回の用途では、次のような情報を優先します。
- 地震
- 津波
- 台風
- 高潮
- 大雨や暴風などの重大な警報
- Jアラート情報
- Lアラートの避難情報
- 対象地域に関係する情報
一方で、次のような情報は除外候補とします。
- 海上濃霧
- 視程障害
- 船舶の航行を主な対象とした海上気象情報
- 利用者の地域と直接関係しない軽微な情報
ただし、台風が海上にあるという理由だけで除外してはいけません。
台風の現在位置や進路に関する情報は、海上にあっても陸地へ影響する可能性があるため、残す必要があります。
除外処理は、できるだけAIだけに任せず、災害種別のコードや名称を使った条件分岐で行います。
Apple Intelligenceの「モデルを使用」で要約する
iOS 27のショートカットでは、「モデルを使用」アクションから、次の3種類を選べます。
- オンデバイス
- プライベートクラウドコンピューティング
- 機能拡張モデル
Appleは、オンデバイスをネットワーク接続なしで単純なリクエストを処理するモデル、プライベートクラウドコンピューティングを複雑なリクエスト向けのモデル、機能拡張モデルをChatGPTとして案内しています。
オンデバイス
iPhone内のApple Intelligenceモデルで処理します。
ネットワーク接続を必要としないため、災害時の基本モデルとして適しています。
今回の用途では、JSONから必要な項目を取得し、1件分の情報を短くまとめる処理であれば、オンデバイスでも十分利用できると考えられます。
たとえば、次のような整理済みの情報を渡します。
災害種別:台風
発表日時:8月2日 8時
対象地域:沖縄地方
緯度:北緯25.4度
経度:東経132.1度
中心気圧:950hPa
最大風速:40m/s
プロンプトは、次のようにします。
次の災危通報を一般利用者向けに120文字以内で要約してください。
災害種別、発表日時、対象地域を含めてください。
入力にない情報は追加しないでください。
日時と数値は変更せず、そのまま記載してください。
プライベートクラウドコンピューティング
複数の災危通報をまとめて整理したり、長い文章を処理したりする場合に適しています。
たとえば、次のような処理です。
受信した複数の災危通報から、
○○県に関係する可能性のある情報を選び、
緊急性の高い順に整理してください。
ただし、通信回線が必要になるため、災害時の基本機能をプライベートクラウドだけに依存させない方がよいでしょう。
機能拡張モデル
現在Appleが案内している機能拡張モデルはChatGPTです。
より詳しい説明や、複雑な文章生成に向いています。
AppleのChatGPT機能拡張は、ChatGPTアカウントを接続しなくても使用でき、無料または有料アカウントを接続することもできます。
有料アカウントでは、高度な機能をより頻繁に利用できるとAppleは説明しています。
一方、ショートカットからOpenAI APIへ直接リクエストする場合は別の扱いです。
ChatGPT Plusなどの契約にAPI料金は含まれず、APIは使用量に応じて別途課金されます。
今回の推奨モデル
今回の構成では、次の使い分けが適しています。
| 処理 | 推奨 |
|---|---|
| 整理済みの1件を短く要約 | オンデバイス |
| 複数情報の比較・優先順位付け | プライベートクラウド |
| 詳しい解説や背景説明 | 機能拡張モデル |
| 緯度・経度・日時・気圧の取得 | AIを使わず通常アクション |
Apple Intelligenceは生成モデルであり、同じ入力でも出力が異なる場合があります。
Appleも重要な情報の正確性を確認するよう案内しています。
災害情報では、AIの要約だけを表示するのではなく、元データも確認できる構成にしておく方が安全です。
台風や地震の位置をAppleマップに表示する
JSONに緯度と経度が含まれていれば、その座標をAppleマップへ渡せます。
処理の流れは次のようになります。
JSONから緯度を取得
↓
JSONから経度を取得
↓
位置情報を作成
↓
Appleマップで表示
緯度と経度が度・分・秒で記録されている場合は、十進表記へ変換します。
十進表記 = 度 + 分÷60 + 秒÷3600
南緯と西経の場合は、値をマイナスにします。
ただし、地名だけから緯度・経度を推測するのは避けます。
元の災危通報に明示された座標だけを利用します。
1地点と複数地点の違い
台風の現在位置を1地点だけ表示する場合は、Appleマップで十分です。
一方、現在位置と複数の予報位置を線で結び、台風の進路として表示する場合は、Appleマップを順番に開くよりも、サーバー側で専用の地図ページを作る方が分かりやすくなります。
台風の現在位置だけ
→ Appleマップ
複数時刻の予報位置
→ サーバー側の専用地図
複数地点を線で結ぶ
→ Leafletなどを使ったWeb地図
通信回線が使えない場合にも地図を表示できるか
Appleマップには、指定した地域を事前に保存するオフラインマップ機能があります。
ダウンロード済みの範囲であれば、Wi-Fiやモバイルデータ通信が利用できないときにも地図を表示できます。
ただし、必要なものは背景地図だけではありません。
| 必要なもの | 通信不能時の条件 |
|---|---|
| 地図 | Appleマップを事前にダウンロードしておく |
| 台風の座標 | QZSS受信機からiPhoneへ渡せること |
| 要約 | オンデバイスモデルを使用する |
| Webサーバーへの接続 | ローカルWi-Fiが動作していること |
インターネット回線が停止していても、Wi-FiルーターとQZSS受信機が動作し、iPhoneが同じ宅内ネットワークへ接続できれば、ローカルのJSONを取得できます。
みちびきから災危通報を受信
↓
受信機・マイコンで解析
↓
宅内WebサーバーからJSONを取得
↓
オンデバイスモデルで要約
↓
ダウンロード済みのAppleマップで表示
台風は日本から離れた海上にあることも多いため、オフラインマップを保存する際には、必要な周辺海域まで含める必要があります。
実際に使う前に、機内モードなどで通信を停止し、試験用座標をマップへ渡して表示できるか確認しておくとよいでしょう。
Storageで災危通報の履歴を残す
iOS 27のショートカットでは、「Storage」(ストレージ)を使って、ショートカットの実行をまたいでデータを保持できます。
Appleの説明では、StorageはGet、Set、グローバル値などを使ってデータを保存し、保存値はiCloud経由で利用者のデバイス間に同期されます。
今回の用途では、1件の災危通報を次のような辞書にまとめて保存します。
{
"received_at": "2026-08-02 08:10",
"event_id": "QZSS-20260802-001",
"type": "台風",
"issued_at": "2026-08-02 08:00",
"area": "沖縄地方",
"latitude": 25.4,
"longitude": 132.1,
"pressure_hpa": 950,
"summary": "台風は沖縄の南にあり、中心気圧は950hPaです。",
"original_text": "受信した元の災危通報"
}
ショートカットは、Storageから既存の履歴を取得し、新しい情報を追加してから再保存します。
Storageから履歴を取得
↓
同じevent_idがないか確認
↓
新しい災危通報を追加
↓
新しい順に並べ替える
↓
最新20件だけ残す
↓
Storageへ保存
Storageは、最新の10件から20件程度をショートカットからすぐ参照する用途に向いています。
ただし、Appleは保存値がiCloud経由でデバイス間に同期されると説明しています。
そのため、「iPhone内だけに保存され、外部とは一切同期されない領域」という意味での完全なオンデバイス保存ではありません。
長期間の正式な履歴を残す場合は、Storageだけでなく、JSONファイルやCSVファイルとして「ファイル」アプリへ保存する方法も考えられます。
役割を分けるなら、次の構成が分かりやすいでしょう。
| 保存先 | 保存する内容 |
|---|---|
| Storage | 最新10~20件、前回の情報、重複判定用ID |
| JSONまたはCSV | 長期間の受信履歴、元データ、要約、座標 |
元の災危通報とAIによる要約は、別々の項目として保存します。
Appleマップの表示例をブログへ掲載する場合の注意点
台風の座標をAppleマップに表示した画面は、記事本文の操作例として掲載することが考えられます。
その場合は、次の点に注意します。
- Appleマップのロゴや法的表示を消さない
- 必要以上に地図部分を加工しない
- 自宅や現在地などの個人情報が写っていないか確認する
- Appleや気象庁が作成した公式台風図のように見せない
- 操作説明に必要な範囲に限定する
Appleは、マップ上のAppleロゴと法的情報へのリンクを見える状態にするよう案内しており、利用規約でも著作権表示や法的表示を削除、変更、隠蔽しないことを求めています。
画像の下には、次のような説明を付けるとよいでしょう。
QZSS災危通報から取得した台風の緯度・経度を、ショートカットを使ってAppleマップに表示した例です。公式の台風進路予報を示すものではありません。
Appleマップの画像を記事のアイキャッチとして装飾目的に使うよりも、本文中の操作・検証例として必要最小限掲載する方が適しています。
実装は段階的に進める
今回の仕組みは、一度にすべて作るよりも、段階的に確認した方が安全です。
第1段階:画面取得で試作する
Safariで現在のWebページを表示し、背面タップからショートカットを実行します。
取得した文字をオンデバイスモデルへ渡し、短い要約を表示できるか確認します。
第2段階:JavaScriptでページ全体を取得する
画面上に表示されていない文字も必要であれば、Safariの共有シートからJavaScriptを実行します。
この段階で、ページ内のどの情報が必要かを整理します。
第3段階:JSON用URLを追加する
サーバーへ/api/disastersなどのURLを追加し、災危通報を構造化して返すようにします。
台風、地震、津波、Jアラート、Lアラートなどを、種類別の項目として出力します。
第4段階:マップ表示を追加する
JSONに緯度と経度がある場合だけ、Appleマップを開きます。
座標がない情報については、無理に地名から推測しません。
第5段階:Storageで履歴を保存する
受信日時、発表日時、災害種別、座標、元データ、要約を保存します。
同じ情報を繰り返し保存しないように、イベントIDや発表日時で重複を判定します。
まとめ
iOS 27のショートカットを利用すれば、みちびきの災危通報を、iPhone上で読みやすく整理する仕組みを作れそうです。
「画面上のものを取得」は、現在のWebページを使ってすぐ試せる点が魅力です。
しかし、Safariの表示範囲やWebページのレイアウトに影響される可能性があります。
JavaScriptを使えば、Webページ全体から情報を取得できますが、HTML構造の変更に弱いという問題があります。
継続的に運用する場合は、サーバーにJSON用URLを追加し、ショートカットが必要な項目を直接受け取る方法が最も安定しています。
今回の構成では、次のように役割を分けるのが適切です。
QZSS受信機
→ 災危通報を受信
Webサーバー
→ 情報をJSONとして整理
ショートカット
→ 必要項目の取得、除外、重複判定
オンデバイスApple Intelligence
→ 短く読みやすい文章へ要約
Appleマップ
→ 台風や地震の座標を表示
Storage
→ 最近の災危情通報と要約を保存
特に災害情報では、生成AIにすべてを任せるのではなく、日時、緯度、経度、中心気圧などの重要なデータは通常のショートカットアクションで正確に処理することが重要です。
AIは、正確に取り出したデータを読みやすい文章へ整える補助機能として使います。
この構成であれば、通信回線が利用できる平常時だけでなく、インターネット接続が途絶した場合にも、ローカルネットワーク、オンデバイスモデル、オフラインマップを組み合わせて、一定の機能を維持できる可能性があります。
WebサーバーにJSON用URLを追加する方法を採用する。iOS27やショートカットのStorage機能は、2027年にならないと使えない。iOS 27のショートカットで、「モデルを使用」アクションが使え、ChatGPTなどの機能拡張モデルを指定できるようになり、高額な利用料がかからなければそれらのAIを使うという手もある。

