T
TOMO
Developer Docs
BETA These docs are under partner review. Some features described are roadmap items, not yet shipped. Verify against your sandbox before relying on any contract.
● LIVEv1.0.0safety.subscribe_alarm_monitoring

safety.subscribe_alarm_monitoring — Full Intent Specification

INTENT NAMESPACE: safety
INTENT NAME:      subscribe_alarm_monitoring
FULL ID:          safety.subscribe_alarm_monitoring
VERSION:          v1.0.0
STATUS:           live
TTBS WEIGHTS:     time 0.10 · taste 0.10 · budget 0.25 · safety 0.55
LAST UPDATED:     2026-05-14

24×7 third-party monitoring service for intrusion / fire / panic alarms, with manned monitoring station + dispatch protocol. Distinct from safety.install_home_cctv because: (a) monitoring is the recurring service, not a one-time install; (b) the partner runs a Central Monitoring Station (CMS) with operators on shift; (c) escalation is to private guards or police, not just a phone call; (d) PSARA license is mandatory for the monitoring company (Private Security Agencies Regulation Act 2005); (e) false-alarm rate, response-time SLA, escalation tree, recorded-line audit are core differentiators; (f) the service is regulated infrastructure, not a software subscription.


1. NATURAL LANGUAGE COVERAGE

Classifies IN

  • "24x7 alarm monitoring at home"
  • "panic button + control room"
  • "Securitas monitoring subscription"
  • "fire alarm monitored, dispatch nearest station"
  • "intrusion alert with guard response"
  • "Sentinel monitoring 3-year plan"
  • "home security monitoring service"
  • "ADT-style alarm with dispatch"
  • "control room watching my house"
  • "monthly subscription, panic button"

Classifies OUT — borderline NO

  • "install cameras" → safety.install_home_cctv
  • "personal guard at home" → safety.book_personal_security
  • "ambulance subscription" → safety.book_private_ambulance (one-shot, not subscription)
  • "fire extinguisher install" → out of v1
  • "house alarm DIY" (no monitoring) → e-com, out of this intent

MULTI-INTENT TRIGGERS

  • "install CCTV + start monitoring" → safety.install_home_cctv + safety.subscribe_alarm_monitoring
  • "monitoring + cyber protection" → safety.subscribe_alarm_monitoring + safety.subscribe_cyber_protection
  • "alarm + emergency SOS app" → safety.subscribe_alarm_monitoring + safety.subscribe_emergency_sos

2. INPUT — TOMO → PROVIDER

{
  "intent":          "safety.subscribe_alarm_monitoring",
  "intent_version":  "v1.0.0",
  "request_id":      "req_amon_5q3p_2026-05-14T16:00:00Z",
  "user_session_id": "anon_user_token_or_uid",

  "site": {
    "address_id":   "addr_home_v1",
    "type":          "apartment_2bhk",
    "type_allowed":  ["apartment_1bhk", "apartment_2bhk", "apartment_3bhk_plus", "independent_house", "shop_small", "office_small"]
  },

  "alarm_inventory": {
    "intrusion_sensors":  6,
    "panic_buttons":      2,
    "smoke_detectors":    3,
    "gas_leak_detectors": 1,
    "existing_panel_brand": "Honeywell",
    "panel_supports_protocol": ["contact_id", "sia"]
  },

  "monitoring_preference": {
    "tier":           "platinum",
    "tiers_allowed":  ["basic_phone_only", "standard_dispatch", "platinum_dispatch_plus_guard"],
    "false_alarm_protocol": "verify_then_dispatch",
    "false_alarm_protocols_allowed": ["dispatch_immediately", "verify_then_dispatch"],
    "guard_response_required": true
  },

  "billing": {
    "duration_months":  36,
    "duration_options": [12, 24, 36],
    "autopay_mandate":  true
  },

  "escalation_tree": [
    {"step": 1, "type": "phone_user",   "target": "+91XXXXXXXXXX",      "ring_seconds": 30},
    {"step": 2, "type": "phone_kin",    "target": "+91XXXXXXXXXX",      "ring_seconds": 30},
    {"step": 3, "type": "guard_visit",  "eta_target_min": 15},
    {"step": 4, "type": "police",       "via": "dial_100_or_dial_112"}
  ],

  "user_constants": {
    "preferred_providers": ["Securitas India", "G4S Monitoring", "SIS Sentinel", "Topsgrup Monitoring"]
  }
}

Field rules

  • tier ENUM strict.
  • escalation_tree mandatory; partner validates and stores at CMS.
  • panel_supports_protocol — partner must speak at least one matching protocol; else ERR_PANEL_PROTOCOL_INCOMPAT.
  • billing.duration_months ∈ allowed list.
  • false_alarm_protocol: verify_then_dispatch recommended; "dispatch immediately" leads to higher false-alarm cost.

3. PROVIDER TOOLS

monitor.quote

Returns monthly fee + setup fee + per-dispatch fee.

monitor.psara_verify

Returns PSARA license number + state + validity.

monitor.subscribe

Activates the contract.

monitor.panel_pair

Pairs alarm panel with CMS (over IP/GSM/PSTN).

monitor.test_signal

Triggers a test alarm; CMS confirms received within SLA.

monitor.update_escalation_tree

User edits contacts / steps.

monitor.dispatch_history

Read-only audit of past dispatches.

monitor.cancel

Cancel pre-bill-cycle; refunds per partner.


4. RESPONSE SHAPE

{
  "intent": "safety.subscribe_alarm_monitoring",
  "request_id": "req_amon_5q3p_2026-05-14T16:00:00Z",
  "options": [
    {
      "tier": "OK",
      "provider": "SIS Sentinel",
      "monitoring_tier": "standard_dispatch",
      "monthly_fee_inr": 599,
      "setup_fee_inr":   1500,
      "per_dispatch_fee_inr": 0,
      "false_alarm_protocol": "verify_then_dispatch",
      "guard_eta_target_min": 25,
      "psara_license_no": "PSA-TS-2018-XXXX",
      "psara_state": "Telangana",
      "psara_valid_until_iso": "2028-03-31",
      "cms_24x7_manned": true,
      "recorded_lines": true,
      "ttbs_score": 0.66,
      "tier_reason": "standard dispatch, 25-min guard ETA"
    },
    {
      "tier": "GOOD",
      "provider": "G4S Monitoring",
      "monitoring_tier": "platinum_dispatch_plus_guard",
      "monthly_fee_inr": 1199,
      "setup_fee_inr":   1500,
      "per_dispatch_fee_inr": 0,
      "false_alarm_protocol": "verify_then_dispatch",
      "guard_eta_target_min": 12,
      "psara_license_no": "PSA-KA-2017-XXXX",
      "psara_state": "Karnataka",
      "psara_valid_until_iso": "2027-12-31",
      "cms_24x7_manned": true,
      "recorded_lines": true,
      "redundant_cms_site": true,
      "ttbs_score": 0.86,
      "tier_reason": "balanced — 12-min guard ETA + redundant CMS"
    },
    {
      "tier": "GREAT",
      "provider": "Securitas India",
      "monitoring_tier": "platinum_dispatch_plus_guard",
      "monthly_fee_inr": 1599,
      "setup_fee_inr":   0,
      "per_dispatch_fee_inr": 0,
      "false_alarm_protocol": "verify_then_dispatch",
      "guard_eta_target_min": 8,
      "psara_license_no": "PSA-MH-2016-XXXX",
      "psara_state": "Maharashtra",
      "psara_valid_until_iso": "2029-06-30",
      "cms_24x7_manned": true,
      "recorded_lines": true,
      "redundant_cms_site": true,
      "encrypted_signaling_e2e": true,
      "dedicated_account_manager": true,
      "ttbs_score": 0.93,
      "tier_reason": "8-min guard ETA + encrypted signaling + dedicated AM"
    }
  ]
}

5. CONTROLLED VOCABULARIES

monitoring_tier

basic_phone_only · standard_dispatch · platinum_dispatch_plus_guard

false_alarm_protocol

dispatch_immediately · verify_then_dispatch

escalation_tree.step.type

phone_user · phone_kin · guard_visit · police

panel.protocol

contact_id · sia · ademco_contact_id · proprietary_brand

All STRICT ENUM.


6. TTBS DIMENSIONS

TIME (weight 0.10)

  • Setup install slot
  • Test-signal SLA
  • Guard ETA target
  • TIME = slot × test_sla × eta

TASTE (weight 0.10)

  • Brand familiarity
  • App UX rating
  • CMS operator communication band
  • TASTE = brand × ux × cms_comms

BUDGET (weight 0.25)

  • monthly_fee_inr × duration + setup vs best
  • Per-dispatch fee transparency
  • Auto-renewal honesty
  • BUDGET = 1 − (total − best) / best

SAFETY (weight 0.55 — dominant)

  • PSARA license valid + state-aligned
  • CMS 24×7 manned
  • Recorded lines (audit)
  • Redundant CMS site (DR)
  • Encrypted signaling (panel ↔ CMS)
  • Guard ETA ≤ 15 min
  • Escalation tree honored
  • False-alarm protocol = verify_then_dispatch
  • SAFETY = psara × cms_manned × recorded × redundancy × encrypted × eta × tree × verify

HARD FILTERS

  1. PSARA license valid and state-aligned with site state.
  2. CMS 24×7 manned.
  3. Panel protocol compatible.
  4. Escalation tree complete (min 3 steps).
  5. Recorded lines available for audit.

7. COMPLETION CONTRACT

Success criteria

  1. Quote accepted; contract signed.
  2. Panel paired with CMS; test signal observed within SLA.
  3. Escalation tree captured at CMS.
  4. Monthly Autopay mandate created.
  5. User app shows live arm/disarm state.
  6. CPC webhook fires on activation.

CPC webhook

{
  "event": "safety.subscribe_alarm_monitoring.activated",
  "intent_id": "safety.subscribe_alarm_monitoring",
  "request_id": "req_amon_5q3p_2026-05-14T16:00:00Z",
  "subscription_id": "AMON-G4S-2026-44129",
  "provider": "G4S Monitoring",
  "monitoring_tier": "platinum_dispatch_plus_guard",
  "monthly_fee_inr": 1199,
  "duration_months": 36,
  "setup_fee_inr": 1500,
  "tomo_commission_base_inr": 5751,
  "tomo_commission_inr": 575,
  "pass_through_inr": 38313,
  "psara_license_no": "PSA-KA-2017-XXXX",
  "test_signal_passed": true,
  "activated_at_iso": "2026-05-18T14:30:00+05:30",
  "signature_hmac_sha256": "…"
}

(tomo_commission_base_inr = partner's contracted referral commission on the 36-month NET, not the gross subscription.)

Failure cases

  • panel_pair_failed → on-site engineer revisit.
  • test_signal_failed → SLA breach; partner remediation.
  • false_alarm_excessive → partner may surcharge; user notified.
  • autopay_mandate_failed → fall back to invoice billing.
  • psara_lapse_during_term → user notified, contract suspended or moved.

8. WIDGET

{
  "widget": "AlarmMonitoringWidget",
  "header": {
    "site_strip": "2BHK · 6 intrusion + 2 panic + 3 smoke + 1 gas",
    "tier_strip": "Platinum dispatch + guard response",
    "duration_strip": "36 months · Autopay mandate"
  },
  "regions": {
    "region_1_intelligence": ["PSARA license valid 2027-12-31", "CMS manned 24×7", "recorded lines", "encrypted signaling on top tier"],
    "region_2_summary": "Setup next slot, monthly fee active from activation",
    "region_3_visual": null,
    "region_4_now_pin": "Lock contract — install slot tomorrow",
    "region_5_tomo_choices": [
      {"tier": "OK", "label": "SIS Sentinel · ₹599/mo · 25-min ETA", "reason": "cheapest"},
      {"tier": "GOOD", "label": "G4S · ₹1,199/mo · 12-min ETA + redundant CMS", "reason": "balanced"},
      {"tier": "GREAT", "label": "Securitas · ₹1,599/mo · 8-min ETA + encrypted + dedicated AM", "reason": "highest safety"}
    ]
  },
  "footer_disclosures": [
    "Police escalation is via 100/112 — partner can speed contact but legally only police can enter your property without your consent.",
    "False alarms after the 'verify' protocol are zero-fee on Platinum; below that, a per-dispatch fee may apply (always shown above).",
    "Cancel anytime; partner refunds unused months minus a small fee per their contract."
  ]
}

9. CACHING POLICY

  • Quote: 24h TTL.
  • PSARA license verification: 90 days cache; refresh on each renewal.
  • Escalation tree: encrypted at partner; pointer at TOMO; user can edit anytime.
  • Dispatch history: 5 years at partner per audit norm; 1 year on-device for user's own review.
  • Recorded lines: at partner; TOMO never has access.

10. ERROR CODES

Code Meaning UI surface
ERR_PSARA_INVALID license lapsed/expired Drop option
ERR_PANEL_PROTOCOL_INCOMPAT panel can't speak partner protocol Suggest panel upgrade
ERR_ESCALATION_TREE_INCOMPLETE < 3 steps Inline fill
ERR_TEST_SIGNAL_FAILED CMS didn't receive Engineer revisit
ERR_AUTOPAY_FAILED mandate rejected Invoice fallback
ERR_DISPATCH_DELAYED_SLA_BREACH guard ETA exceeded Auto-comp per partner
ERR_FALSE_ALARM_THRESHOLD excess false alarms Coaching + surcharge
ERR_KIN_PHONE_UNREACHABLE kin contact bouncing Update contact
ERR_PARTNER_OFFLINE partner API down Try next
ERR_PSARA_LAPSE_MID_TERM license expired during term Notify user + suspend

11. SANDBOX → PRODUCTION CHECKLIST

  • Sandbox PSARA verify accepts valid, rejects expired.
  • Sandbox panel-pair across contact_id and sia protocols.
  • Sandbox test signal fail flow triggers engineer revisit.
  • Sandbox false-alarm threshold logic.
  • Sandbox Autopay mandate test across 3 banks.
  • Sandbox dispatch history audit export.
  • Production CMS site visit by partner ops attested.
  • Production PSARA database synced weekly.
  • Production rate-limit: 1 active monitoring contract / user / address.
  • Production CPC HMAC-SHA256 5-min replay verified.
  • Production data-protection contract — recorded lines not accessible to TOMO.

12. ANTI-FABRICATION RULES

  • NO paid_placement on providers.
  • NO synthetic guard ETA — partner-attested SLA only.
  • NO "guaranteed response in X min" without partner SLA contract.
  • NO bundling promo into monthly fee.
  • NO claim of police partnership — police are escalation target via 100/112, not partner.
  • NO TOMO-issued PSARA badge — partner's only.
  • NO holding recorded lines or CMS audio at TOMO.
  • NO synthetic redundancy claim.
  • NO claim of dispatching without partner CMS-confirmed dispatch.
  • NO marketing language ("smart monitoring").

13. REGULATORY FRAMING

  • Private Security Agencies Regulation Act 2005 (PSARA) + state rules — partner must hold license per state of operation.
  • Indian Telegraph Act 1885 / Telegraph Rules — recorded lines must comply with consent + storage rules.
  • DPDPA 2023 — escalation tree + recorded lines + dispatch history = personal data; partner is processor.
  • Consumer Protection Act 2019 — partner is service provider.
  • CrPC — police are the only authority to physically enter property without consent; guards may only do welfare check.
  • IT Act 2000 §43A — reasonable security practices at partner CMS.
  • TOMO is router only — does NOT operate CMS, does NOT employ guards, does NOT hold recordings.