Plex Media Server
Plex Media Server integration 允许您将 Home Assistant 连接到 Plex Media Server。配置完成后,正在流式传输的 Plex 客户端 会显示为媒体播放器,并通过 Home Assistant 中的传感器报告播放状态和资料库大小。媒体播放器将允许您控制媒体播放并查看当前播放的项目。
支持在链接的 Sonos 扬声器上直接播放音乐的功能在 Sonos 播放 部分中提供。
Home Assistant 目前支持以下设备类型:
如果 Plex 服务器已通过认领界面被 Plex 账户认领,Home Assistant 将需要身份验证才能连接。
此集成可通过 UI 配置。前往 设置 > 设备与服务 添加。
在设置过程中,您需要以服务器管理员身份登录。集成将检查所有可能的连接 Plex 服务器的方式 - 即本地或公共地址、HTTP 或 HTTPS、通过 IP 或使用 plex.direct 的子域,或者如果所有其他方法都失败则使用 Plex 中继。集成将优先选择本地而非公共,安全而非不安全,按此顺序。选定的地址显示在集成页面上的 Plex 卡片上。
如果您的路由器强制执行 DNS 重绑定保护,则连接到本地 plex.direct 主机名可能会失败(请参阅 Plex 文档)。为避免这种情况,请按照文档链接中的说明配置路由器以允许 plex.direct 的 DNS 重绑定。
集成选项
提供了几个选项来调整 media_player 实体的行为。这些可以在集成页面的 Plex > Options 处更改。
Use episode art:显示电视剧集艺术图而不是电视剧艺术图。
Monitored users:有权访问 Plex 服务器的账户列表。只有选定的用户才会创建 media_player 实体。
Ignore new managed/shared users:启用以忽略被授予服务器访问权限的新 Plex 账户。
Ignore Plex Web clients:不为 Plex Web 客户端创建 media_player 实体。
手动配置
或者,您可以在配置 Plex 集成时选择"Configure Plex server manually"来手动配置 Plex 服务器连接。此选项仅对"高级模式"下的用户可用。这将允许您指定服务器连接选项,这些选项将在设置完成前进行验证。可用选项如下所述:
Host:您的 Plex 服务器的 IP 地址或主机名。如果提供了 'Token',则可选。
Port:您的 Plex 服务器的端口。
Use SSL:使用 HTTPS 连接到 Plex 服务器。
Verify SSL certificate:验证您 Plex 服务器的 SSL 证书。如果使用 IP 连接或使用自签名证书,可能会使用此选项。
Token:您的 Plex 服务器的有效授权令牌。如果在没有 'Host' 的情况下提供,将从 Plex 检索连接 URL。
传感器
活动传感器提供当前正在从 Plex 服务器观看媒体的用户计数。点击传感器显示活跃用户和媒体流的详细信息。
资料库传感器显示每个资料库中的项目计数。根据资料库内容,传感器将在其属性中显示额外的详细信息。例如,电视剧资料库传感器将表示资料库中的剧集总数,其属性还将报告其包含的节目和季数。还会提供最后添加的媒体项目(电影、专辑或剧集)以及显示其添加到各自资料库的时间戳。
除了项目计数外,每个资料库传感器还提供最后添加的媒体项目(电影、专辑或剧集)和显示其添加时间的时间戳。
使用资料库传感器上的 last_added_item 属性在添加新媒体时发送通知的自动化示例:
:::important 资料库传感器默认禁用,但可以通过 Plex 集成页面启用。启用传感器后,您可能需要在填充最后添加的媒体属性之前向资料库添加新项目。
:::
按钮
有一个 button.scan_clients 实体可用于发现新的可控 Plex 客户端。这在控制 Plex 客户端应用的脚本或自动化中可能是必要的,但底层设备必须先打开。此按钮优于旧的 plex.scan_for_clients 动作。
脚本示例:
更新
Plex Media Server 新版本的通知通过更新实体显示。提供详细的发行说明。
对于某些安装类型,如 Windows 和某些 NAS 设备,可以触发 Plex Media Server 的自动升级。
媒体播放器
Plex 媒体播放器平台将为每个连接的客户端设备创建媒体播放器实体。这些实体将显示媒体信息、播放进度和播放控制(如果流媒体设备支持)。
默认情况下,Plex 集成将为 Plex 服务器上的所有本地、托管和共享用户创建媒体播放器实体。要自定义要监控的用户或客户端类型,请调整集成选项下描述的"Monitored users"、"Ignore new managed/shared users"和"Ignore Plex Web clients"选项。
动作:Play media
media_player.play_media 动作在 Plex 客户端或其他支持的设备上播放 Plex 服务器上托管的媒体。
media_content_id 负载中的必填字段已标记,其他为可选。有一些特殊参数可以添加到任何查询中:
shuffle:随机播放媒体的播放顺序。接受1或true以启用。resume:如果有上次部分观看的位置,则从该位置恢复播放,否则从头开始播放。offset:所需的播放开始位置(以秒为单位)。allow_multiple:搜索必须找到一个特定项目才能成功。此参数接受搜索中的多个匹配项,并将所有找到的项目排队播放。接受1或true以启用。username:本地 Plex 用户账户的用户名。仅当 Plex 服务器有多个用户并且您希望为特定用户播放媒体时才需要。continuous:Plex 将自动播放系列中的下一集。接受1或true以启用。
为音乐、电视剧集和电影提供了简化示例。有关复杂/智能搜索功能,请参阅高级搜索。
如果投放到非 Plex 播放器,请参阅这些链接:
:::
:::important
集成必须配置令牌才能使播放命令正常工作。如果在 Plex 服务器上使用 List of IP addresses and networks that are allowed without auth 选项,则可能会发生这种情况。如果需要该功能,建议在临时禁用该功能的情况下配置集成。
音乐
示例:
在音乐资料库中播放 Adele 专辑 25 中的 Hello
在音乐资料库中随机播放 Stevie Wonder 的曲目
播放列表
示例:
启用随机播放播放列表 The Best of Disco
电视剧集
示例:
从资料库 Adult TV 播放 Rick and Morty S2E5
从资料库 Kids TV 随机播放一集芝麻街
从资料库 News TV 恢复播放 60 Minutes 的下一未看完剧集
从 S2E5 开始连续播放 Rick and Morty 剧集
电影
示例:
从资料库 Adult Movies 播放 Blade
高级搜索
除了搜索特定的已知媒体外,还有许多额外的参数可用于运行更强大的搜索。当标题的简单搜索有多个匹配项时(例如电影翻拍),这也可以使用。
这些是可以包含在 media_content_id JSON 负载中以自定义搜索的可选键示例:
unwatched:仅将搜索限制为未观看的项目(true、false)actor:限制搜索包含特定演员的电影collection:限制在命名的 Plex 收藏集中搜索("Back to the Future"、"Indiana Jones")contentRating:限制搜索特定的内容分级("PG"、"R")country:限制搜索特定的原产国decade:限制搜索特定的年代("1960"、"2010")director:限制搜索特定的导演genre:限制搜索特定的类型("Animation"、"Drama"、"Sci-Fi")resolution:限制搜索特定的视频分辨率(480、720、1080、"4k")year:限制搜索特定的年份
更多参数和其他详细信息可以在 plexapi 库文档中找到。
示例
以下是高级搜索的示例。所有示例都显示可以在 media_content_id 参数中发送的内容。
请注意,某些搜索可能需要 "maxresults": 1 来将结果限制为单个项目。但是,"项目"可能是一组媒体,例如专辑、季、艺术家、节目等。
搜索将尝试根据搜索参数中使用最具体的媒体类型来猜测媒体类型。例如,使用 artist.title 和 album.year 的搜索将搜索特定年份发行的艺术家专辑。如果向搜索添加 track.title,它将尝试查找曲目。您可以使用 libtype 参数指定要搜索的媒体类型,可以是 movie、episode、season、show、track、album 或 artist 之一。如果您只知道特定曲目的名称,这在搜索专辑时可能很有用(参见下面的示例)。
兼容性
Sonos 播放
要将 Plex 音乐直接播放到 Sonos 扬声器,必须满足以下要求:
调用 media_player.play_media 动作,使用 Sonos 集成设备的 entity_id,并在 media_content_type 前加上 plex://。支持音乐和播放列表的 media_content_type 值。
示例:
在 Sonos 扬声器上使用高级过滤播放曲目
在 Sonos 扬声器上播放播放列表
额外动作
动作:Refresh library
plex.refresh_library 动作刷新 Plex 资料库以扫描新的和更新的媒体。
注意事项
- Plex 集成支持多台 Plex 服务器。可以在 Settings > Devices & services 下配置其他连接。
- 电影必须位于 Plex 资料库的 'Movies' 部分下,才能正确查看 'playing' 状态。

