🧪 Skills

Roty Tiffin Skill

Parse "Roty input" messages from authorized Telegram users to create Roty tiffin orders via HTTPS POST without UI automation.

v0.1.0
❤️ 0
⬇️ 130
👁 1
Share

Description

name: add-tiffin-order-roty-input description: "POST-only: Parse 'Roty input' messages and create Roty orders via HTTPS POST (no Playwright/UI automation)."

Add Tiffin Order - Roty Input (POST-only)

Trigger

Run when an inbound message contains the exact phrase "Roty input" (case-insensitive).

Important

  • DO NOT use Playwright, browser automation, screenshots, or vision clicks.
  • This skill creates orders only by sending a JSON payload via HTTPS POST to: https://newdailyorderandcartcreation-818352713629.australia-southeast1.run.app

Execution (MANDATORY)

When triggered, you MUST call the dispatcher script and use its output. Do NOT manually construct curl or JSON payloads.

Run: python3 /data/.openclaw/workspace/skills/add-tiffin-order-roty-input/scripts/handle_message.py <sender_id> ""

Rules:

  • Always POST using the dispatcher (unless it returns Missing address/dates/product).
  • Never hardcode perProductCost (never "[15]").
  • Never use hardCodedPrice for perProductCost.
  • perProductCost MUST come from pricing_engine.py via handle_message.py.

Authorization (Telegram)

  • Only allow Telegram users whose from.id is in: data/allowed_users.json under admins or vendors.
  • If unauthorized: reply "Not authorized."

Behavior

  1. Parse messy input into:
    • customerName
    • userAddress
    • deliveryDates (must resolve at least 1 date; otherwise ask a follow-up)
    • product selection + modifiers
    • specialRequests
  2. Build payload in the exact API shape (see build_payload.py).
  3. Send POST immediately (no "Dry-run vs Live" prompt), unless:
    • address missing, OR
    • no dates resolved, OR
    • product not matched In those cases, ask only for the missing piece.
  4. On success: confirm with cartNo.

Scripts

  • Dispatcher: scripts/handle_message.py
  • Parser: scripts/parse_roty_input.py
  • Matcher: scripts/match_product_and_modifiers.py
  • Pricing: scripts/pricing_engine.py
  • Payload: scripts/build_payload.py
  • POST sender (urllib): scripts/post_order.py
  • Products registry: data/products_roty.json
  • Allowlist: data/allowed_users.json

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs