Home-Assistant-wundergroundpws

Home-Assistant-wundergroundpws

个人气象站集成 精准天气数据与预报

Home-Assistant-wundergroundpws是一个为Home Assistant用户设计的Weather Underground个人气象站集成项目。它提供原生天气实体和多种天气传感器,支持基于站点ID的实时天气数据和基于地理坐标的天气预报。该集成允许多实例配置,可调整数据精度和语言,并支持自定义预报传感器。它提供温度、湿度、风速等多项气象指标,适合需要精确本地天气信息的应用场景。

Home Assistant天气监测Weather UndergroundPWS自定义集成Github开源项目

Home Assistant Wundergroundpws v2.X.X

Home Assistant自定义集成,适用于Weather Underground个人气象站用户。 包含原生Home Assistant天气实体和各种天气传感器。 当前天气状况由配置的wundergroundpws站点ID生成。 天气预报根据从配置的wundergroundpws站点ID获取的经纬度生成。 wundergroundpws平台使用Weather Underground作为当前天气信息的来源。

:+1: 如果您觉得这个软件有用,欢迎捐赠:Paypal.me捐赠链接

v2.0.4升级说明: 需要Home Assistant 2023.9或更高版本。 如果从v2.x.x升级到v2.0.4后天气卡片中没有显示预报,请在仪表板中编辑天气卡片并重新保存。


前提条件

Weather Underground PWS API密钥

安装

升级

配置

术语和变量说明

天气实体

统计卡片

本地化

安装前提条件

请查看以下最低要求,以确定您是否能够安装和使用本软件。

  • wundergroundpws v2.X.X是一个重新设计的集成,不是早期版本的升级。 请参阅升级部分了解相关说明。
  • wundergroundpws v2.X.X需要Home Assistant 2023.1或更高版本
  • 已注册且活跃的Weather Underground个人气象站API密钥

Weather Underground PWS API密钥

免费API密钥仅提供给已注册且活跃的Weather Underground个人气象站用户。 要使用此集成,您需要Weather Underground个人气象站API密钥和站点ID。 获取免费API密钥的步骤:

  1. 您必须有一个已注册并向Weather Underground上传数据的个人气象站。 a) 加入Weather Underground b) 登录 c) 我的个人资料 -> 我的气象站 d) 添加新的PWS
  2. https://www.wunderground.com/member/api-keys 获取API密钥。

请在使用以下信息时考虑这一点。

安装

从本仓库下载最新的v2.X.X版本zip文件。 将zip文件解压到临时目录。

将解压文件中的custom_components目录复制到您的.homeassistant目录中。 或 将解压文件中custom_components目录的内容复制到您.homeassistant目录中现有的custom_components目录。

  1. 在Home Assistant设置中,选择设备和服务,然后添加集成。
  2. 选择"wundergroundpws"集成。
  3. 输入您的Weather Underground API密钥和站点ID(区分大小写。必须与您的Wunderground设备ID匹配) 并提交。
  4. 集成设置完成后,您可以选择"配置"来更改:
  • 创建预报传感器、数字精度(无或小数)、语言、日历日温度,以及覆盖预报的纬度和经度。
  • 将创建并启用观测和状况传感器。
  • 默认情况下不创建预报传感器。如果您在集成"配置"中启用"创建预报传感器",它们将被创建。
  • 然后将创建预报传感器,但它们处于禁用状态。要启用,请转到集成-实体,选择您想要的传感器并启用它们。

可以通过使用不同的站点ID和/或API密钥重复上述步骤来创建多个实例。 请注意,每个实例都需要自己的一组API调用,所以要注意不要超过Weather Underground个人API的速率限制。 每个实例每5分钟调用一次,即每天288次。

升级

从早期版本无法直接升级到v2.x.x。 您必须: 删除现有的custom_components/wundergroundpws目录。 从configuration.yaml中删除v1.1.x及更早版本的所有配置项:

# 删除configuration.yaml中的条目 wundergroundpws: api_key: 您的API密钥 pws_id: 您的站点ID weather: - platform: wundergroundpws sensor: - platform: wundergroundpws monitored_conditions: - temp - dewpt - heatIndex - 等等..

重启Home Assistant。 在Home Assistant - 设置 - 实体中,搜索"wundergroundpws",选择所有过滤出的实体并"删除所选"。 重启Home Assistant。 安装v2.x.x(参见上面的安装)。 重新配置任何Lovelace卡片、自动化、脚本等,以反映新的传感器名称。

配置

Wundergroundpws集成配置选项可在以下位置找到: 设置-设备和服务-Wundergroundpws-配置

选项: 创建预报传感器? 默认情况下不创建预报传感器。如果您在集成"配置"中启用"创建预报传感器",它们将被创建。 然后将创建预报传感器,但它们处于禁用状态。要启用,请转到集成-实体,选择您想要的传感器并启用它们。

数字精度 无(整数)或小数(单精度)。 仅适用于PWS当前值(不包括预报)的传感器(不包括天气实体)。

语言 指定API返回的语言。 默认为英语(en-US)。

按日历日显示温度?(实验性) 使用风险自负 - The Weather Company PWS观测API中未记录。 如果选中,则获取相对于日历日(00:00 -> 23:59)的预报温度最高/最低值,而不是API期间(约07:00 -> 约18:59)。 仅影响天气实体预报值,不影响传感器。 这个字段在The Weather Company PWS API中未记录,因此可能会发生变化,如果将来从API响应中移除,设置为true时将导致集成崩溃。

纬度 - 默认从站点ID获取 覆盖天气预报的纬度坐标。 经度 - 默认从站点ID获取 覆盖天气预报的经度坐标。 返回顶部

术语和变量说明

api_key: 描述: Weather Underground的API密钥。详情见上文。 必填: 类型: 字符串 pws_id: 描述: 您必须输入个人气象站ID。 该站点ID将用于显示当前天气状况。 注意 - 区分大小写。必须与会员设置中Wunderground设备的ID匹配。 必填: 类型: 字符串 numeric_precision: 描述: 可选 - 将PWS数据显示为整数或小数。 仅适用于传感器中的PWS当前值(不适用于天气实体),不适用于预报。 必填:- 值为'none'或'decimal' 类型: 字符串 默认值: none calendarday_temp: 使用风险自负 - Weather Company PWS观测API中未记录: 描述: 可选 - 如果为true,获取相对于日历日(00:00 -> 23:59)的预报温度最高/最低值, 而不是API周期(约07:00 -> 约06:59)。 仅影响天气实体预报值,不影响传感器。 该字段在Weather Company PWS API中未记录, 因此可能会发生变化,如果将来从API响应中移除,设置为true时将导致集成崩溃。 必填:- 值为'true'或'false' 类型: 布尔值 默认值: false lang: 描述: 指定API返回的语言。当前所有Wunderground语言代码列表可在 https://docs.google.com/document/d/13HTLgJDpsb39deFzk_YCQ5GoGoZCO_cRYzIxbwvgJLI/edit 或下方本地化书签处查看。 如未指定,默认为英语(en-US)。 必填: 类型: 字符串 默认值: en-US latitude: 描述: 天气预报的纬度坐标(如果指定了**longitude**则必填)。 必填: 类型: 字符串 默认值: stationId的WU API纬度 longitude: 描述: 天气预报的经度坐标(如果指定了**latitude**则必填)。 必填: 类型: 字符串 默认值: stationId的WU API经度

可用传感器

# 描述: 在前端显示的条件。可以监控以下条件。 # 有关Weather Underground数据信息,请参阅https://www.wunderground.com/about/data。 # # 观测值(当前) neighborhood: 唯一ID: <pws_id>,neighborhood 实体ID: sensor.<pws_id>_neighborhood 描述: WU PWS参考名称 obsTimeLocal: 唯一ID: <pws_id>,obstimelocal 实体ID: sensor.<pws_id>_local_observation_time 描述: 本地观测时间的文本摘要 humidity: 唯一ID: <pws_id>,humidity 实体ID: sensor.<pws_id>_relative_humidity 描述: 相对湿度 stationID: 唯一ID: <pws_id>,stationid 实体ID: sensor.<pws_id>_station_id 描述: 您的个人气象站(PWS)ID solarRadiation: 唯一ID: <pws_id>,solarradiation 实体ID: sensor.<pws_id>_solar_radiation 描述: 当前太阳辐射水平 uv: 唯一ID: <pws_id>,uv 实体ID: sensor.<pws_id>_uv_index 描述: 当前紫外线辐射水平 winddir: 唯一ID: <pws_id>,winddir 实体ID: sensor.<pws_id>_wind_direction_degrees 描述: 风向角度 windDirectionCardinal: 唯一ID: <pws_id>,winddirectioncardinal 实体ID: sensor.<pws_id>_wind_direction_cardinal 描述: 风向cardinal方位(N, NE, NNE, S, E, W等) # 条件(当前) dewpt: 唯一ID: <PWS_ID>,dewpt 实体ID: sensor.<pws_id>_dewpoint 描述: 露点温度,低于此温度水滴开始凝结并可能形成露水 elev: 唯一ID: <pws_id>,elev 实体ID: sensor.<pws_id>_elevation 描述: 海拔高度 heatIndex: 唯一ID: <pws_id>,heatindex 实体ID: sensor.<pws_id>_heat_index 描述: 热指数(温度和空气湿度的综合效应) precipRate: 唯一ID: <pws_id>,preciprate 实体ID: sensor.<pws_id>_precipitation_rate 描述: 降雨强度 precipTotal: 唯一ID: <pws_id>,preciptotal 实体ID: sensor.<pws_id>_precipitation_today 描述: 今日总降水量 pressure: 唯一ID: <pws_id>,pressure 实体ID: sensor.<pws_id>_pressure 描述: 大气压力 temp: 唯一ID: <pws_id>,temp 实体ID: sensor.<pws_id>_temperature 描述: 当前温度 windChill: 唯一ID: <pws_id>,windchill 实体ID: sensor.<pws_id>_wind_chill 描述: 风寒指数(温度和风速的综合效应) windGust: 唯一ID: <pws_id>,windgust 实体ID: sensor.<pws_id>_wind_gust 描述: 阵风速度 windSpeed: 唯一ID: <pws_id>,windspeed 实体ID: sensor.<pws_id>_wind_speed 描述: 当前风速 # 预报 narrative: 唯一ID: <PWS_ID>,narrative_<day>f 实体ID: sensor.<pws_id>_weather_summary_<day> 描述: 第<day>天的人类可读天气预报。(<day>变化为0, 1, 2, 3, 4) qpfSnow: 唯一ID: <pws_id>,qpfsnow_<day>f 实体ID: sensor.<pws_id>_snow_amount_<day> 描述: 预报的降雪强度。(<day>变化为0, 1, 2, 3, 4) # 预报日部分 narrative: 唯一ID: <PWS_ID>,narrative_<daypart>fdp 实体ID: sensor.<pws_id>_forecast_summary_<suffix> 描述: 某天的人类可读天气预报。(<suffix>变化为0d, 1n, 2d, 3n, 4d, 5n, 6d, 7n, 8d, 9n) qpf: 唯一ID: <pws_id>,qpf_<daypart>fdp 实体ID: sensor.<pws_id>_precipitation_amount_<suffix> 描述: 预报的降水强度。(<suffix>变化为0d, 1n, 2d, 3n, 4d, 5n, 6d, 7n, 8d, 9n) precipChance: 唯一ID: <pws_id>,precipchance_<daypart>fdp 实体ID: sensor.<pws_id>_precipitation_probability_<suffix> 描述: 降水概率。(<suffix>变化为0d, 1n, 2d, 3n, 4d, 5n, 6d, 7n, 8d, 9n)

描述:预测降水概率,以百分比表示。(后缀变化:0d、1n、2d、3n、4d、5n、6d、7n、8d、9n) 温度: 唯一ID:<pws_id>,temperature<daypart>fdp 实体ID:sensor.<pws_id>forecast_temperature<suffix> 描述:预测温度。(后缀变化:0d、1n、2d、3n、4d、5n、6d、7n、8d、9n) 风速: 唯一ID:<pws_id>,windspeed_<daypart>fdp 实体ID:sensor.<pws_id>average_wind<suffix> 描述:预测风速。(后缀变化:0d、1n、2d、3n、4d、5n、6d、7n、8d、9n) 上述所列的所有条件将每5分钟更新一次。

Wunderground API 注意事项: 在当地表观时间下午3:00之后,API中的daypart对象以及daypart对象之外的temperatureMax字段将显示为null。 当满足此条件时,受影响的传感器将返回"Today Expired",值为"Unknown"。

上述标有"#d"的变体是每日预报。 上述标有"#n"的变体是夜间预报。

注意:虽然平台名为"wundergroundpws",但传感器在Home Assistant中将显示为 sensor.<pws_id>_forecast_temperature_<suffix> (例如:sensor.samplepwsid_forecast_temperature_0d)。

有关API的更多详细信息可在此处获得。 返回顶部

天气实体

wundergroundpws数据返回到天气实体(HASS天气预报卡): 当前:

  • 温度
  • 气压
  • 湿度
  • 风速
  • 风向

预报:

  • 日期时间
  • 温度(最高)
  • 温度(最低)
  • 天气状况(图标)
  • 降水量
  • 降水概率
  • 风向
  • 风速

可以创建模板来访问这些值,例如:

{% for state in states.weather -%}
  {%- if loop.first %}{{ state.name | lower }}是{{state.state_with_unit}}{% elif loop.last %},{{ state.name | lower }}是{{state.state_with_unit}}{% else %},{{ state.name | lower }}是{{state.state_with_unit}}{% endif -%}
{%- endfor %}。

风向是{{ states.weather.<STATIONID>.attributes.forecast[0].wind_bearing }},风速为{{ states.weather.<STATIONID>.attributes.forecast[0].wind_speed }} {{ states.weather.<STATIONID>.attributes.wind_speed_unit }}

返回顶部

统计中可用的传感器

以下是在Lovelace统计卡中公开的wundergroundpws传感器。 请注意,只有具有相同单位的传感器才能在单个卡片中组合。

  • 类别 NONE

  • sensor.samplepwsid_uv_index

  • 类别 DEGREE

  • sensor.sensor.samplepwsid_wind_direction_degrees

  • 类别 RATE & SPEED

  • sensor.samplepwsid_precipitation_rate

  • sensor.samplepwsid_wind_gust

  • sensor.samplepwsid_wind_speed

  • 类别 LENGTH

  • sensor.samplepwsid_precipitation_today

  • 类别 PRESSURE

  • sensor.samplepwsid_pressure

  • 类别 HUMIDITY

  • sensor.samplepwsid_relative_humidity

  • 类别 IRRADIANCE

  • sensor.samplepwsid_solar_radiation

  • 类别 TEMPERATURE

  • sensor.samplepwsid_dewpoint

  • sensor.samplepwsid_heat_index

  • sensor.samplepwsid_wind_chill

  • sensor.samplepwsid_temperature

返回顶部

本地化

传感器的"友好名称"通过翻译文件设置。 Wundergroundpws翻译文件位于'wundergroundpws/wupws_translations'目录中。 文件使用'en.json'作为基础,通过https://translate.i18next.com进行翻译。 翻译仅使用基本语言代码,而不使用变体(例如zh-CN/zh-HK/zh-TW使用zh)。 如果在wundergroundpws配置中未设置lang:选项,则默认为en-US(translations/en.json)。 如果设置了lang:(例如lang: de-DE),则加载translations/de.json文件,并使用de-DE查询Weather Underground API。 翻译文件适用于所有传感器的友好名称。 forecast-narrative、forecast-dayOfWeek、forecast-daypart-narrative和forecast-daypart-daypartName由API翻译。 可用的lang:选项有:

'am-ET', 'ar-AE', 'az-AZ', 'bg-BG', 'bn-BD', 'bn-IN', 'bs-BA', 'ca-ES', 'cs-CZ', 'da-DK', 'de-DE', 'el-GR', 'en-GB',
'en-IN', 'en-US', 'es-AR', 'es-ES', 'es-LA', 'es-MX', 'es-UN', 'es-US', 'et-EE', 'fa-IR', 'fi-FI', 'fr-CA', 'fr-FR',
'gu-IN', 'he-IL', 'hi-IN', 'hr-HR', 'hu-HU', 'in-ID', 'is-IS', 'it-IT', 'iw-IL', 'ja-JP', 'jv-ID', 'ka-GE', 'kk-KZ',
'km-KH', 'kn-IN', 'ko-KR', 'lo-LA', 'lt-LT', 'lv-LV', 'mk-MK', 'mn-MN', 'mr-IN', 'ms-MY', 'my-MM', 'ne-IN', 'ne-NP',
'nl-NL', 'no-NO', 'om-ET', 'pa-IN', 'pa-PK', 'pl-PL', 'pt-BR', 'pt-PT', 'ro-RO', 'ru-RU', 'si-LK', 'sk-SK', 'sl-SI',
'sq-AL', 'sr-BA', 'sr-ME', 'sr-RS', 'sv-SE', 'sw-KE', 'ta-IN', 'ta-LK', 'te-IN', 'ti-ER', 'ti-ET', 'tg-TJ', 'th-TH',
'tk-TM', 'tl-PH', 'tr-TR', 'uk-UA', 'ur-PK', 'uz-UZ', 'vi-VN', 'zh-CN', 'zh-HK', 'zh-TW'

天气实体(hass天气卡)的翻译由Home Assistant处理,并在用户->语言设置下配置。 返回顶部

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

热门AI工具AI办公办公工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

模型训练热门AI工具内容创作智能问答AI开发讯飞星火大模型多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

AI助手热门AI工具AI创作AI辅助写作讯飞绘文内容运营个性化文章多平台分发
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多