Foto-Webcam Snapshots
Ziel: Aus einer gespeicherten Favoritenliste (Nummer -> Webcam-Seite) ein aktuelles Bild holen und an John schicken.
Datenquelle (Favoriten)
Standard-Datei im Workspace:
Format (Beispiel):
- -
items[].id (int) - INLINECODE2 (string)
- INLINECODE3 (URL zur Webcam-Seite)
- optional
items[].image (direkte Bild-URL)
Typische Nutzerbefehle
- - webcam 1
- webcam 3+4+5
- liste
- liste webcams
- fuege hinzu
Workflow: webcam N -> Bild senden
1) Lade Favoritenliste aus docs/webcams/favorites-muenchen.json.
2) Suche Eintrag mit id gleich N.
3) Erzeuge Snapshot Bild
- Wenn image gesetzt ist lade diese Bild URL
- Sonst page URL nehmen und daraus current 1200 jpg ermitteln
4) Speichere Bild nach /tmp/webcam N jpg
5) Sende Bild im Chat als Attachment
Caption Format
Webcam N Name
Workflow: webcam 3+4+5 -> mehrere Bilder
1) Parse die IDs als Liste von Integers in der Reihenfolge
2) Fuer jede ID
- Snapshot holen
- Ein Bild senden
3) Maximal 6 Bilder pro Anfrage, wenn mehr gefragt wird erst nachfragen
Workflow: liste -> Favoritenliste schicken
Sende eine Text Liste
Webcam 1 Name
Webcam 2 Name
usw
Keine Formatierung, nur Plain Text
Ermittlung der Bild-URL (foto-webcam.eu)
Für eine Webcam-Seite wie:
existiert meist ein direktes „current“ Bild:
Praktisch: HTML mit User-Agent laden und nach einem Link auf .../current/<digits>.jpg suchen.
Script
Nutze das Script:
Beispiele:
- - Snapshot über Favoriten-ID:
- INLINECODE9
- INLINECODE10
Pflege / Ergänzen
- - Neue Webcam hinzufügen: ergänze
favorites-muenchen.json (neue id, name, page). - Wenn eine Quelle instabil ist, kann
image gesetzt werden (direkter JPG-Link).
Wichtig: Antworten im Chat nur als Plain Text (kein Markdown). Für Audio nur „clean speech“ (keine Sonderzeichen/Formatierung).
Foto-Webcam 快照
目标:从已保存的收藏列表(编号 -> 网络摄像头页面)中获取当前图像并发送给John。
数据源(收藏夹)
工作区中的标准文件:
- - docs/webcams/favorites-muenchen.json
格式(示例):
- - items[].id(整数)
- items[].name(字符串)
- items[].page(网络摄像头页面URL)
- 可选 items[].image(直接图像URL)
典型用户命令
- - webcam 1
- webcam 3+4+5
- liste
- liste webcams
- fuege <名称> 添加
工作流程:webcam N -> 发送图像
1) 从 docs/webcams/favorites-muenchen.json 加载收藏列表。
2) 查找 ID 等于 N 的条目。
3) 生成快照图像
- 如果设置了 image,则加载该图像URL
- 否则使用 page URL 并从中获取当前 1200 jpg
4) 将图像保存到 /tmp/webcam N jpg
5) 在聊天中作为附件发送图像
标题格式
Webcam N 名称
工作流程:webcam 3+4+5 -> 多张图像
1) 将 ID 解析为整数列表,按顺序排列
2) 对于每个ID
- 获取快照
- 发送一张图像
3) 每次请求最多6张图像,如果请求更多,先询问
工作流程:liste -> 发送收藏列表
发送文本列表
Webcam 1 名称
Webcam 2 名称
等等
无格式,纯文本
图像URL的确定(foto-webcam.eu)
对于像这样的网络摄像头页面:
- - https://www.foto-webcam.eu/webcam/zugspitze/
通常存在一个直接的current图像:
- - https://www.foto-webcam.eu/webcam/zugspitze/current/1200.jpg
实用方法:使用User-Agent加载HTML并搜索指向.../current/<数字>.jpg的链接。
脚本
使用脚本:
- - skills/public/foto-webcam/scripts/fotowebcamsnapshot.py
示例:
- python3 skills/public/foto-webcam/scripts/foto
webcamsnapshot.py --favorites docs/webcams/favorites-muenchen.json --id 4 --out /tmp/webcam4.jpg
- python3 skills/public/foto-webcam/scripts/foto
webcamsnapshot.py --url https://www.foto-webcam.eu/webcam/zugspitze/ --out /tmp/zugspitze.jpg
维护 / 补充
- - 添加新的网络摄像头:补充 favorites-muenchen.json(新的 id、name、page)。
- 如果某个源不稳定,可以设置 image(直接的JPG链接)。
重要提示:聊天中的回复仅作为纯文本(无Markdown)。对于音频,仅使用清晰语音(无特殊字符/格式)。