以 AI 机器人身份加入视频会议,提供语音、虚拟形象与屏幕共享四种模式。
编程
boka-tvattid
试用Boka tvättid via bokatvattid.se: free slots, book, cancel, view bookings. Triggers: tvättid, tvättstuga, tvättbokning, gästlägenhet, laundry booking.
它能做什么
Book laundry and guest-apartment times via Boka tvättid's legacy JSON API (works for any v1-mode building). Every call is one GET with all params in the query string; auth = token + userid from login. Full endpoint and response reference: . A generic stdlib-only CLI wrapper is bundled at — prefer…
技能文档
Boka tvättid (tvättstugebokning)
Book laundry and guest-apartment times via Boka tvättid's legacy JSON API (works for any v1-mode building). Every call is one GET with all params in the query string; auth = token + userid from login. Full endpoint and response reference: references/bokatvattid-api.md. A generic stdlib-only CLI wrapper is bundled at scripts/bokatvattid.py — prefer it when available; this skill documents what it does.
Steps
- Gather household credentials: v1 buildingid, apartmentnumber, and the 6-digit PIN. Nothing building-specific is hardcoded in this skill — take them from the user's own stored credentials (memory/config), never hardcode them here. Keep the PIN out of chat text and final reports.
- If the v1 buildingid is unknown, resolve it:
GET https://api.visirsolutions.com/api/v2/public/buildings/search?q=→ building id, thenGET /api/v2/public/buildings/lookup?building_id=(payload underdata) → usev1_building_idwhenbackend_modeis "v1". Buildings not in v1 mode are out of scope (their login is/api/v2/auth/login, untested). - Log in:
method=checkLogin2&buildingid=&pincode=&apartmentnumber=&lang=1againsthttps://prod.bokatvattid.se/api/api2. Success =error:0— savebody.Token,body.ApartmentIDandbody.LaundryRoomDefaultID. On auth failure stop after two attempts and tell the user (the PIN may have been changed; it can be changed in the app and is always 6 digits). - List rooms (calls after login add
token=&userid=):method=getLaundryRoomList&buildingid=&v=3. Match rooms byLaundryRoomIDor byLaundryRoomName;IsDefaultmarks the building's default room. Never hardcode room lists — they come from this call (an inactive LaundryRoomID=0 entry can appear; skip it). - Show availability:
method=getLaundryRoomSlots&laundryid=&day=DD&month=MM&year=YYYY— free =isBook=0andisDisable=0; own bookings haveisOwner=1. Month overview:method=getCalendarData&laundryid=&year=YYYY&month=MM. - Book, only after the user confirms room, date and slot(s):
method=Booking3&laundryid=×lot=&day=DD&month=MM&year=YYYY&rebook=0plusdevicemodel=BokaTvattidV2%20Web&firmware=web&appid=0&curday=&devicetoken=. Success =error:0withbody= BookingID.error:100means fully booked — report the queue option, never auto-join. - Cancel, only after user confirmation: the same call with
rebook=1×lot=(empty) for that booking's laundryid and date. Success =error:0. - List current bookings:
method=getMyBooking&start=0&limit=50. - After each booking or cancellation, report BookingID, room, date and slot to the user.
Pitfalls
- The buildingid in login/room calls is the v1 id (from lookup
v1_building_id), not the v2 search id; the v2 surface (/api/v2/*,/auth/login,/auth/exchange) does not work for v1-mode buildings. - Slot ids are per room and date; multiple slots join with commas in
timeslot. - Redo login once if a call fails with an auth error; tokens are short-lived.
- URL-encode every param and keep
lang=1on all calls. - Booking3 and cancel are live-tested (2026-09-05: book → BookingID returned and slot showed as own → cancel → clean). On any error other than 0 (or 100=queue), stop and re-check the reference.
- Guest apartments, where a building has them, unlock with the same apartment PIN after booking.
- Respect building-specific booking rules from the user's memory when present.
相关技能
诊断生产力系统反复失效的根因,给出最小干预——容量测算、瓶颈定位、可靠的本地记录。
在本地磁盘以分类纯 Markdown 文件保存需要长期留存的事实,与智能体内置记忆并存。
从 AdMapix API 拉取广告创意、应用、榜单和收入预估等数据,原样返回结构化 JSON。
把自然语言描述转为结构化 JSON,并由 mcp-diagram-generator MCP 服务生成 Draw.io、Mermaid 或 Excalidraw 图表文件。
编写、调试与调优 Playwright 测试,涵盖定位器策略、追踪诊断与 CI 友好的超时配置。
patello 的更多技能
浏览全部技能解析 Avanza 交易 CSV,计算 TWRR 与 Modified Dietz 收益率,并在本地 SQLite 数据库中跟踪组合持仓。
Fetch real-time SL (Stockholm public transport) departures and deviation information using a Python CLI tool. Use when checking departures, querying transit delays, or saving favorite sites and routes for quick status checks.
Process bank transaction CSV exports (Nordea, ICA), auto-categorize transactions using configurable rules, manage transaction links, and generate analytical database views.
Guides users through configuring OpenClaw, Nginx, and GitHub Actions to establish a secure, autonomous GitHub integration pipeline.
Log and track daily calorie intake, macronutrients, body weight, and waist measurements locally in a SQLite database. Provides granular statistics, weekly averages, and future calorie budgets.
Interact with the USDA FoodData Central (FDC) API to search for foods and retrieve detailed nutritional information. Use when the user asks to look up food n...