Add notification reactive color strip source with webhook trigger
New source_type "notification" fires one-shot visual effects (flash, pulse, sweep) triggered via POST webhook. Designed as a composite layer for overlay on persistent sources. Includes app color mapping, whitelist/blacklist filtering, and auto-sizing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -808,6 +808,33 @@
|
||||
"color_strip.api_input.endpoints": "Push Endpoints:",
|
||||
"color_strip.api_input.endpoints.hint": "Use these URLs to push LED color data from your external application. REST accepts JSON, WebSocket accepts both JSON and raw binary frames.",
|
||||
"color_strip.api_input.save_first": "Save the source first to see the push endpoint URLs.",
|
||||
"color_strip.type.notification": "Notification",
|
||||
"color_strip.type.notification.hint": "Fires a one-shot visual effect (flash, pulse, sweep) when triggered via a webhook. Designed for use as a composite layer over a persistent base source.",
|
||||
"color_strip.notification.effect": "Effect:",
|
||||
"color_strip.notification.effect.hint": "Visual effect when a notification fires. Flash fades linearly, Pulse uses a smooth bell curve, Sweep fills LEDs left-to-right then fades.",
|
||||
"color_strip.notification.effect.flash": "Flash",
|
||||
"color_strip.notification.effect.pulse": "Pulse",
|
||||
"color_strip.notification.effect.sweep": "Sweep",
|
||||
"color_strip.notification.duration": "Duration (ms):",
|
||||
"color_strip.notification.duration.hint": "How long the notification effect plays, in milliseconds.",
|
||||
"color_strip.notification.default_color": "Default Color:",
|
||||
"color_strip.notification.default_color.hint": "Color used when the notification has no app-specific color mapping.",
|
||||
"color_strip.notification.filter_mode": "App Filter:",
|
||||
"color_strip.notification.filter_mode.hint": "Filter notifications by app name. Off = accept all, Whitelist = only listed apps, Blacklist = all except listed apps.",
|
||||
"color_strip.notification.filter_mode.off": "Off",
|
||||
"color_strip.notification.filter_mode.whitelist": "Whitelist",
|
||||
"color_strip.notification.filter_mode.blacklist": "Blacklist",
|
||||
"color_strip.notification.filter_list": "App List:",
|
||||
"color_strip.notification.filter_list.hint": "Comma-separated app names for the filter.",
|
||||
"color_strip.notification.filter_list.placeholder": "Discord, Slack, Telegram",
|
||||
"color_strip.notification.app_colors": "App Colors",
|
||||
"color_strip.notification.app_colors.label": "Color Mappings:",
|
||||
"color_strip.notification.app_colors.hint": "Per-app color overrides. Each row maps an app name to a specific notification color.",
|
||||
"color_strip.notification.app_colors.add": "+ Add Mapping",
|
||||
"color_strip.notification.endpoint": "Webhook Endpoint:",
|
||||
"color_strip.notification.endpoint.hint": "Use this URL to trigger notifications from external systems. POST with optional JSON body: {\"app\": \"AppName\", \"color\": \"#FF0000\"}.",
|
||||
"color_strip.notification.save_first": "Save the source first to see the webhook endpoint URL.",
|
||||
"color_strip.notification.app_count": "apps",
|
||||
"color_strip.composite.layers": "Layers:",
|
||||
"color_strip.composite.layers.hint": "Stack multiple color strip sources. First layer is the bottom, last is the top. Each layer can have its own blend mode and opacity.",
|
||||
"color_strip.composite.add_layer": "+ Add Layer",
|
||||
|
||||
@@ -808,6 +808,33 @@
|
||||
"color_strip.api_input.endpoints": "Эндпоинты для отправки:",
|
||||
"color_strip.api_input.endpoints.hint": "Используйте эти URL для отправки данных о цветах LED из вашего внешнего приложения. REST принимает JSON, WebSocket принимает как JSON, так и бинарные кадры.",
|
||||
"color_strip.api_input.save_first": "Сначала сохраните источник, чтобы увидеть URL эндпоинтов.",
|
||||
"color_strip.type.notification": "Уведомления",
|
||||
"color_strip.type.notification.hint": "Вспышка, пульс или волна при срабатывании через вебхук. Предназначен для использования как слой в композитном источнике.",
|
||||
"color_strip.notification.effect": "Эффект:",
|
||||
"color_strip.notification.effect.hint": "Визуальный эффект при уведомлении. Вспышка — линейное затухание, Пульс — плавная волна, Волна — заполнение и затухание.",
|
||||
"color_strip.notification.effect.flash": "Вспышка",
|
||||
"color_strip.notification.effect.pulse": "Пульс",
|
||||
"color_strip.notification.effect.sweep": "Волна",
|
||||
"color_strip.notification.duration": "Длительность (мс):",
|
||||
"color_strip.notification.duration.hint": "Как долго длится эффект уведомления в миллисекундах.",
|
||||
"color_strip.notification.default_color": "Цвет по умолчанию:",
|
||||
"color_strip.notification.default_color.hint": "Цвет, когда для приложения нет специфического назначения цвета.",
|
||||
"color_strip.notification.filter_mode": "Фильтр приложений:",
|
||||
"color_strip.notification.filter_mode.hint": "Фильтр уведомлений по имени приложения. Выкл = все, Белый список = только указанные, Чёрный список = все кроме указанных.",
|
||||
"color_strip.notification.filter_mode.off": "Выкл",
|
||||
"color_strip.notification.filter_mode.whitelist": "Белый список",
|
||||
"color_strip.notification.filter_mode.blacklist": "Чёрный список",
|
||||
"color_strip.notification.filter_list": "Список приложений:",
|
||||
"color_strip.notification.filter_list.hint": "Имена приложений через запятую.",
|
||||
"color_strip.notification.filter_list.placeholder": "Discord, Slack, Telegram",
|
||||
"color_strip.notification.app_colors": "Цвета приложений",
|
||||
"color_strip.notification.app_colors.label": "Назначения цветов:",
|
||||
"color_strip.notification.app_colors.hint": "Индивидуальные цвета для приложений. Каждая строка связывает имя приложения с цветом уведомления.",
|
||||
"color_strip.notification.app_colors.add": "+ Добавить",
|
||||
"color_strip.notification.endpoint": "Вебхук:",
|
||||
"color_strip.notification.endpoint.hint": "URL для запуска уведомлений из внешних систем. POST с JSON телом: {\"app\": \"AppName\", \"color\": \"#FF0000\"}.",
|
||||
"color_strip.notification.save_first": "Сначала сохраните источник, чтобы увидеть URL вебхука.",
|
||||
"color_strip.notification.app_count": "прилож.",
|
||||
"color_strip.composite.layers": "Слои:",
|
||||
"color_strip.composite.layers.hint": "Наложение нескольких источников. Первый слой — нижний, последний — верхний. Каждый слой может иметь свой режим смешивания и прозрачность.",
|
||||
"color_strip.composite.add_layer": "+ Добавить слой",
|
||||
|
||||
@@ -808,6 +808,33 @@
|
||||
"color_strip.api_input.endpoints": "推送端点:",
|
||||
"color_strip.api_input.endpoints.hint": "使用这些 URL 从外部应用程序推送 LED 颜色数据。REST 接受 JSON,WebSocket 接受 JSON 和原始二进制帧。",
|
||||
"color_strip.api_input.save_first": "请先保存源以查看推送端点 URL。",
|
||||
"color_strip.type.notification": "通知",
|
||||
"color_strip.type.notification.hint": "通过 Webhook 触发时显示一次性视觉效果(闪烁、脉冲、扫描)。设计为组合源中的叠加层。",
|
||||
"color_strip.notification.effect": "效果:",
|
||||
"color_strip.notification.effect.hint": "通知触发时的视觉效果。闪烁线性衰减,脉冲平滑钟形曲线,扫描从左到右填充后衰减。",
|
||||
"color_strip.notification.effect.flash": "闪烁",
|
||||
"color_strip.notification.effect.pulse": "脉冲",
|
||||
"color_strip.notification.effect.sweep": "扫描",
|
||||
"color_strip.notification.duration": "持续时间(毫秒):",
|
||||
"color_strip.notification.duration.hint": "通知效果播放的时长(毫秒)。",
|
||||
"color_strip.notification.default_color": "默认颜色:",
|
||||
"color_strip.notification.default_color.hint": "当通知没有应用特定颜色映射时使用的颜色。",
|
||||
"color_strip.notification.filter_mode": "应用过滤:",
|
||||
"color_strip.notification.filter_mode.hint": "按应用名称过滤通知。关闭=接受全部,白名单=仅列出的应用,黑名单=排除列出的应用。",
|
||||
"color_strip.notification.filter_mode.off": "关闭",
|
||||
"color_strip.notification.filter_mode.whitelist": "白名单",
|
||||
"color_strip.notification.filter_mode.blacklist": "黑名单",
|
||||
"color_strip.notification.filter_list": "应用列表:",
|
||||
"color_strip.notification.filter_list.hint": "以逗号分隔的应用名称。",
|
||||
"color_strip.notification.filter_list.placeholder": "Discord, Slack, Telegram",
|
||||
"color_strip.notification.app_colors": "应用颜色",
|
||||
"color_strip.notification.app_colors.label": "颜色映射:",
|
||||
"color_strip.notification.app_colors.hint": "每个应用的自定义通知颜色。每行将一个应用名称映射到特定颜色。",
|
||||
"color_strip.notification.app_colors.add": "+ 添加映射",
|
||||
"color_strip.notification.endpoint": "Webhook 端点:",
|
||||
"color_strip.notification.endpoint.hint": "使用此 URL 从外部系统触发通知。POST 请求可选 JSON:{\"app\": \"AppName\", \"color\": \"#FF0000\"}。",
|
||||
"color_strip.notification.save_first": "请先保存源以查看 Webhook 端点 URL。",
|
||||
"color_strip.notification.app_count": "个应用",
|
||||
"color_strip.composite.layers": "图层:",
|
||||
"color_strip.composite.layers.hint": "叠加多个色带源。第一个图层在底部,最后一个在顶部。每个图层可以有自己的混合模式和不透明度。",
|
||||
"color_strip.composite.add_layer": "+ 添加图层",
|
||||
|
||||
Reference in New Issue
Block a user