Chapter 5
World Clock Configuration
世界時計の設定
5.1 本章の目的
Chapter 4 までで、Version 1.3 を構築するための環境準備が整いました。
本章では、Dashboard の左側に表示する世界各都市の現在時刻を構築します。
Version 1.3 では16都市を対象とします。
🇯🇵 東京 🇬🇧 ロンドン 🇫🇷 パリ 🇺🇸 ニューヨーク 🇺🇸 ロサンゼルス 🇩🇪 ベルリン 🇷🇺 モスクワ 🇸🇬 シンガポール 🇦🇺 シドニー 🇨🇳 北京 🇿🇦 ケープタウン 🇦🇪 ドバイ 🇧🇷 サンパウロ 🇺🇸 ダラス 🇳🇴 オスロ 🇮🇳 デリー
本章では、この16都市について時刻センサーを準備します。
5.2 World Clock の役割
Version 1.3 のシステムでは、World Clock は時刻だけを担当します。
気温については Open-Meteo が担当します。
したがって、
World Clock
│
└── 現在時刻
Open-Meteo
│
└── 気象情報
という役割分担になります。
Dashboard の都市カードでは、この2つを組み合わせて表示します。
World Clock
↓
現在時刻 ─────┐
├──→ button-card
気温 ─────────┘
↑
Open-Meteo
5.3 World Clock を確認する
Home Assistant の、
設定 → デバイスとサービス
を開きます。
統合の一覧から World Clock を確認します。
World Clock がすでに登録されている場合は、そのまま次へ進みます。
Version 1.3 では、World Clock の設定そのものをDashboardの中に記述する方式ではありません。
Home Assistant の統合として登録された時刻エンティティを、Dashboard から参照します。
5.4 16都市のタイムゾーン
各都市で使用するタイムゾーンは次のようになります。
| 都市 | タイムゾーン |
|---|---|
| 🇯🇵 東京 | Asia/Tokyo |
| 🇬🇧 ロンドン | Europe/London |
| 🇫🇷 パリ | Europe/Paris |
| 🇺🇸 ニューヨーク | America/New_York |
| 🇺🇸 ロサンゼルス | America/Los_Angeles |
| 🇩🇪 ベルリン | Europe/Berlin |
| 🇷🇺 モスクワ | Europe/Moscow |
| 🇸🇬 シンガポール | Asia/Singapore |
| 🇦🇺 シドニー | Australia/Sydney |
| 🇨🇳 北京 | Asia/Shanghai |
| 🇿🇦 ケープタウン | Africa/Johannesburg |
| 🇦🇪 ドバイ | Asia/Dubai |
| 🇧🇷 サンパウロ | America/Sao_Paulo |
| 🇺🇸 ダラス | America/Chicago |
| 🇳🇴 オスロ | Europe/Oslo |
| 🇮🇳 デリー | Asia/Kolkata |
ここで重要なのは、都市名とタイムゾーン名は必ずしも同じではないということです。
例えば、
北京 → Asia/Shanghai デリー → Asia/Kolkata ケープタウン → Africa/Johannesburg ダラス → America/Chicago
となります。
これは誤りではありません。
タイムゾーンは「都市名」ではなく、地域の標準時を表しているためです。
5.5 生成された時刻エンティティを確認する
World Clock の設定後、
設定 → デバイスとサービス → エンティティ
から時刻エンティティを確認します。
Version 1.3 では、実際に使用するエンティティは次のようになります。
| 都市 | 時刻エンティティ |
|---|---|
| 東京 | sensor.asia_tokyo |
| ロンドン | sensor.europe_london |
| パリ | sensor.europe_paris |
| ニューヨーク | sensor.america_new_york |
| ロサンゼルス | sensor.america_los_angeles |
| ベルリン | sensor.europe_berlin |
| モスクワ | sensor.europe_moscow |
| シンガポール | sensor.asia_singapore |
| シドニー | sensor.australia_sydney |
| 北京 | sensor.asia_shanghai |
| ケープタウン | sensor.africa_johannesburg |
| ドバイ | sensor.asia_dubai |
| サンパウロ | sensor.america_sao_paulo |
| ダラス | sensor.america_chicago |
| オスロ | sensor.europe_oslo |
| デリー | sensor.asia_kolkata |
注意
この表で特に注意したいのが、
北京 sensor.asia_shanghai
ケープタウン sensor.africa_johannesburg
ダラス sensor.america_chicago
デリー sensor.asia_kolkata
です。
都市名とエンティティ名が一致していなくても、そのタイムゾーンを正しく表していれば問題ありません。
Dashboardでは都市名を日本語で表示し、内部ではこのエンティティを使用します。
5.6 16都市の時刻を確認する
エンティティ一覧で16都市の時刻センサーを確認します。
例えば東京の場合、
sensor.asia_tokyo
を開き、状態が現在時刻になっていることを確認します。
同様に、
sensor.europe_london sensor.europe_paris sensor.america_new_york
などを確認します。
この段階では、まだDashboardを作る必要はありません。
16都市の時刻がHome Assistant内で正常に取得できていることを確認することが目的です。
5.7 ダラス・オスロ・デリーを追加する
Version 1.3 では、Version 1.2 の13都市に、
- ダラス
- オスロ
- デリー
を追加して16都市とします。
それぞれのタイムゾーンは、
ダラス America/Chicago オスロ Europe/Oslo デリー Asia/Kolkata
です。
追加後は、必ずエンティティ一覧で生成されたセンサーを確認します。
想定されるエンティティは、
sensor.america_chicago sensor.europe_oslo sensor.asia_kolkata
です。
5.8 World Clock の確認完了条件
Chapter 5 の作業は、次の条件を満たした時点で完了です。
- World Clock が正常に動作している
- 東京の時刻が取得できる
- ロンドンの時刻が取得できる
- パリの時刻が取得できる
- ニューヨークの時刻が取得できる
- ロサンゼルスの時刻が取得できる
- ベルリンの時刻が取得できる
- モスクワの時刻が取得できる
- シンガポールの時刻が取得できる
- シドニーの時刻が取得できる
- 北京の時刻が取得できる
- ケープタウンの時刻が取得できる
- ドバイの時刻が取得できる
- サンパウロの時刻が取得できる
- ダラスの時刻が取得できる
- オスロの時刻が取得できる
- デリーの時刻が取得できる
5.9 この段階でDashboardを作らない理由
ここで一度、作業を区切ります。
Version 1.3 の構築では、
時刻 ↓ 気象情報 ↓ Template Sensor ↓ Dashboard
の順番で確認します。
そのため、World Clock の確認が終わった段階では、まだDashboardを完成させません。
まず、
「時刻は16都市すべて正常」
という状態を作ります。
次章では、同じ16都市について Open-Meteo の Weather Entity を確認します。
Chapter 5 Summary
本章では、Version 1.3 の世界時計部分を構築しました。
重要なのは、Dashboardに表示する都市名と、Home Assistant内部のエンティティ名を分けて考えることです。
例えば、
🇨🇳 北京
↓
sensor.asia_shanghai
という関係でも問題ありません。
Dashboardでは、
🇨🇳 北京
と表示し、内部では、
sensor.asia_shanghai
を使用します。
これによって、Home Assistant内部のエンティティ名に左右されることなく、利用者にとって分かりやすい日本語都市名でDashboardを構成できます。
16都市の時刻が正常に取得できたら、World Clock の準備は完了です。
次章
Chapter 6
Open-Meteo Configuration
次章では、16都市の現在気温を取得するための Open-Meteo を設定します。
ここでは、
Zone ↓ Open-Meteo ↓ weather.xxx
という関係を整理し、特にVersion 1.3で追加した
ダラス・オスロ・デリー
を含め、16都市すべての Weather Entity を確認します。
そしてChapter 7で、いよいよこの weather.xxx から気温を取り出す Template Sensor を構築します。
※CharGPT により作成