safety.install_home_cctv — Full Intent Specification
INTENT NAMESPACE: safety
INTENT NAME: install_home_cctv
FULL ID: safety.install_home_cctv
VERSION: v1.0.0
STATUS: live
TTBS WEIGHTS: time 0.15 · taste 0.10 · budget 0.30 · safety 0.45
LAST UPDATED: 2026-05-14
Home / small-office CCTV survey + sale + on-site installation + (optional) recurring cloud-storage subscription. Distinct from safety.subscribe_alarm_monitoring because: (a) this is camera-centric (video evidence) not intrusion-alarm-centric (sensor + monitoring center); (b) installation labor is the bulk of work; (c) ONVIF/RTSP compatibility, NVR vs cloud, day-night IR, edge-AI all matter; (d) data sovereignty matters — footage is highly personal under DPDPA. Partners must be CCTV resellers + installers (Hikvision/CP Plus/Dahua certified) or branded ecosystems (Qubo/MI/Eufy/Reolink) with verified installers.
1. NATURAL LANGUAGE COVERAGE
Classifies IN
- "install CCTV at home"
- "3 cameras outside, 2 inside, full setup"
- "Hikvision 4-camera DVR install"
- "doorbell camera + entrance camera"
- "wireless CCTV with mobile app"
- "Qubo cameras 2-pack install at flat"
- "CP Plus 8-channel NVR + 6 cameras"
- "outdoor weatherproof camera install"
- "CCTV with cloud storage subscription"
- "Eufy wire-free cameras setup"
Classifies OUT — borderline NO
- "monitoring service after install" →
safety.subscribe_alarm_monitoring - "personal bodyguard" →
safety.book_personal_security - "buy a camera, I'll install" →
marketplace.buy_used_electronicsor e-com (not this intent) - "smart door lock install" → adjacent to lifestyle; out of v1 of this intent
- "fix existing CCTV" → repair service; partner reseller may handle, separate scope
MULTI-INTENT TRIGGERS
- "install CCTV + start monitoring" →
safety.install_home_cctv+safety.subscribe_alarm_monitoring - "install CCTV + electrician for power point"
- "rental property setup — CCTV + alarm + cyber"
2. INPUT — TOMO → PROVIDER
{
"intent": "safety.install_home_cctv",
"intent_version": "v1.0.0",
"request_id": "req_cctv_3q8x_2026-05-14T15:30: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"],
"floors_to_cover": 1,
"outdoor_zones_count": 2,
"indoor_zones_count": 3
},
"preference": {
"brand": "Hikvision",
"brand_allowed": ["Hikvision", "CP Plus", "Dahua", "Qubo", "Xiaomi MI", "Eufy", "Reolink"],
"system_type": "wired_nvr_plus_cameras",
"system_types_allowed": ["wired_nvr_plus_cameras", "wired_dvr_plus_cameras", "wireless_battery_cameras", "hybrid"],
"camera_count": 5,
"resolution": "4mp",
"resolution_allowed": ["1080p", "2mp", "4mp", "8mp_4k"],
"night_vision": true,
"two_way_audio": true,
"edge_ai_human_detection": true,
"edge_ai_face_recognition": false
},
"storage": {
"local_nvr_tb": 2,
"cloud_subscription": "30_day_event_clip",
"cloud_options_allowed": ["none", "7_day_event_clip", "30_day_event_clip", "30_day_continuous"]
},
"installation": {
"wiring_complexity_band": "moderate",
"rj45_cabling_meters_estimate": 60,
"drilling_band": "concrete",
"ladder_height_m": 4
},
"data_consent": {
"footage_storage_region": "in",
"regions_allowed": ["in", "in_only_no_cloud"],
"third_party_share_consent": false
},
"user_constants": {
"preferred_installers": ["Hikvision Certified Installer", "CP Plus Authorized", "TOMO-vetted local installer"]
}
}
Field rules
brand×system_type×camera_counttogether form the BOM; partner returns priced kit.cloud_subscription≠none→ recurring billing requires UPI Autopay mandate.footage_storage_region: inenforced HARD if user toggle is on (DPDPA-aligned data localization preference).data_consent.third_party_share_consent: false→ partner contract bars sharing.
3. PROVIDER TOOLS
cctv.kit_quote
Returns priced kit + installation labor + cloud subscription rate.
cctv.installer_verify
Confirms installer is brand-authorized or TOMO-vetted; returns badge.
cctv.schedule_install
Books installer slot.
cctv.install_capture
Post-install handover: camera positions photographed, app config tested, footage retention disclosed.
cctv.cloud_subscribe
Sets up Autopay mandate for recurring storage rent.
cctv.warranty_register
Registers each device against partner warranty.
cctv.support_request
For post-install issues (camera offline, app issue).
cctv.cancel
Pre-install only.
4. RESPONSE SHAPE
{
"intent": "safety.install_home_cctv",
"request_id": "req_cctv_3q8x_2026-05-14T15:30:00Z",
"options": [
{
"tier": "OK",
"provider": "CP Plus Authorized Reseller",
"brand": "CP Plus",
"system_type": "wired_dvr_plus_cameras",
"camera_count": 5,
"resolution": "2mp",
"kit_inr": 12500,
"installation_inr": 3500,
"cloud_subscription_monthly_inr": 0,
"total_first_payment_inr": 16000,
"warranty_years": 1,
"footage_storage_region": "in",
"installer_badge": "brand_authorized",
"ttbs_score": 0.62,
"tier_reason": "cheapest — 2MP, local storage only"
},
{
"tier": "GOOD",
"provider": "Hikvision Certified Installer",
"brand": "Hikvision",
"system_type": "wired_nvr_plus_cameras",
"camera_count": 5,
"resolution": "4mp",
"kit_inr": 22000,
"installation_inr": 4500,
"cloud_subscription_monthly_inr": 199,
"total_first_payment_inr": 26699,
"warranty_years": 2,
"edge_ai_human_detection": true,
"footage_storage_region": "in",
"installer_badge": "brand_authorized_plus_bg_verified",
"ttbs_score": 0.85,
"tier_reason": "balanced — 4MP + human detection + IN-region cloud"
},
{
"tier": "GREAT",
"provider": "Hikvision Pro Installer",
"brand": "Hikvision",
"system_type": "wired_nvr_plus_cameras",
"camera_count": 5,
"resolution": "8mp_4k",
"kit_inr": 38000,
"installation_inr": 6500,
"cloud_subscription_monthly_inr": 349,
"total_first_payment_inr": 44849,
"warranty_years": 3,
"edge_ai_human_detection": true,
"edge_ai_face_recognition": true,
"footage_storage_region": "in_only_no_cloud",
"data_consent_third_party_share_disabled": true,
"installer_badge": "brand_authorized_plus_aadhaar_verified",
"ttbs_score": 0.93,
"tier_reason": "4K + edge-AI + IN-only-no-cloud + Aadhaar-verified installer"
}
]
}
5. CONTROLLED VOCABULARIES
site.type
apartment_1bhk · apartment_2bhk · apartment_3bhk_plus · independent_house · shop_small · office_small
system_type
wired_nvr_plus_cameras · wired_dvr_plus_cameras · wireless_battery_cameras · hybrid
resolution
1080p · 2mp · 4mp · 8mp_4k
cloud_subscription
none · 7_day_event_clip · 30_day_event_clip · 30_day_continuous
installer_badge
unverified · brand_authorized · brand_authorized_plus_bg_verified · brand_authorized_plus_aadhaar_verified
footage_storage_region
in · in_only_no_cloud · outside_in (last value rejected when user toggle on)
All STRICT ENUM.
6. TTBS DIMENSIONS
TIME (weight 0.15)
- Slot availability for install
- Install duration estimate
- Same-day vs next-day
- TIME = slot_band × duration_band
TASTE (weight 0.10)
- Brand familiarity
- App UX rating
- Cable-management aesthetics (partner-attested band)
- TASTE = brand_band × ux × aesthetic_band
BUDGET (weight 0.30)
total_first_payment_inrvs best- Cloud subscription monthly_inr transparency
- Warranty cost-per-year
- BUDGET = 1 − (total − best) / best
SAFETY (weight 0.45 — dominant)
installer_badgebandfootage_storage_regionIN-aligneddata_consent.third_party_share_consent: falseenforced- Encryption at rest (AES-256) at partner cloud
- App 2FA available
- Warranty length
- Brand authorized + cert
- Edge-AI privacy mode (face-recognition off by default)
- SAFETY = installer × region × consent × encryption × 2fa × warranty × cert × privacy
HARD FILTERS
- Footage storage region IN-aligned with user toggle.
- Installer badge ≥
brand_authorized. - Third-party share consent honored (off → partner contract bars sharing).
- Brand × system_type × resolution combination supported.
- Cabling complexity matches site declared.
7. COMPLETION CONTRACT
Success criteria
- Quote accepted; installer assigned with badge.
- On-site survey re-confirms cabling estimate.
- Kit delivered; cameras + NVR/DVR installed.
- App configured on user's phone with 2FA + admin password set by user (not installer).
- Camera angles photographed and shared with user.
- Warranty registered; cloud subscription Autopay set (if any).
- Disclosure of footage storage region + retention.
- CPC webhook fires on handover.
CPC webhook
{
"event": "safety.install_home_cctv.completed",
"intent_id": "safety.install_home_cctv",
"request_id": "req_cctv_3q8x_2026-05-14T15:30:00Z",
"order_id": "CCTV9P28",
"provider": "Hikvision Certified Installer",
"kit_inr": 22000,
"installation_inr": 4500,
"cloud_subscription_monthly_inr": 199,
"tomo_commission_base_inr": 2700,
"tomo_commission_inr": 270,
"pass_through_inr": 24029,
"installer_badge": "brand_authorized_plus_bg_verified",
"footage_storage_region": "in",
"third_party_share_consent": false,
"completed_at_iso": "2026-05-18T14:30:00+05:30",
"signature_hmac_sha256": "…"
}
Failure cases
installer_no_show→ reschedule + apology + partial fee waiver per partner.kit_dead_on_arrival→ DOA replacement window.installation_aborted_cabling_impossible→ re-survey and replan; partial labor refund.cloud_mandate_failed→ fall back to local-only; user notified.
8. WIDGET
{
"widget": "CCTVInstallWidget",
"header": {
"site_strip": "2BHK · 5 cameras · 2 outdoor + 3 indoor",
"data_strip": "Footage stored in India · third-party sharing OFF",
"warranty_strip": "Up to 3 years included"
},
"regions": {
"region_1_intelligence": ["installer brand-authorized", "BG check ≥ verified", "edge-AI human detection on", "face recognition off (user-controllable)"],
"region_2_summary": "Survey today, install next slot, ~3 hours on site",
"region_3_visual": "kit_photo_url (partner-supplied, signed)",
"region_4_now_pin": "Lock kit + install — 4 slots in your PIN this week",
"region_5_tomo_choices": [
{"tier": "OK", "label": "CP Plus 2MP 5-cam · ₹16,000 · local storage", "reason": "cheapest"},
{"tier": "GOOD", "label": "Hikvision 4MP 5-cam · ₹26,699 + ₹199/mo cloud", "reason": "balanced"},
{"tier": "GREAT", "label": "Hikvision 4K 5-cam · ₹44,849 + ₹349/mo · no-cloud option + Aadhaar-verified installer", "reason": "highest safety"}
]
},
"footer_disclosures": [
"You set the admin password and enable 2FA — installer never knows your credentials.",
"Footage is stored in India; third-party sharing is OFF by default and can't be flipped on without your re-consent.",
"Face recognition is disabled by default — toggle in-app only if you understand the privacy trade-off."
]
}
9. CACHING POLICY
- Kit quote: 24h TTL.
- Installer badge: cached 30 days; fresh at scheduling.
- Site survey photos: at partner, encrypted; pointer at TOMO.
- Past installs: 5 years on-device, encrypted.
- Footage: NEVER cached or accessed by TOMO.
10. ERROR CODES
| Code | Meaning | UI surface |
|---|---|---|
ERR_BRAND_SYSTEM_INCOMPAT |
brand × system_type not supported | Re-pick combination |
ERR_REGION_UNSUPPORTED |
storage region not aligned | Switch storage option |
ERR_INSTALLER_BADGE_INSUFFICIENT |
badge below brand_authorized |
Drop option |
ERR_CABLING_IMPOSSIBLE |
site survey blocks install | Re-plan or refund |
ERR_KIT_DOA |
kit dead on arrival | Replacement window |
ERR_INSTALLER_NO_SHOW |
installer didn't arrive | Reschedule + waiver |
ERR_CLOUD_MANDATE_FAILED |
Autopay mandate failed | Fall back to local-only |
ERR_DATA_CONSENT_CONFLICT |
partner contract can't honor consent toggle | Drop option |
ERR_WARRANTY_REG_FAILED |
brand portal down | Retry; user notified |
ERR_PARTNER_OFFLINE |
partner API down | Try next |
11. SANDBOX → PRODUCTION CHECKLIST
- Sandbox installer badge enforcement (drop unauth installer).
- Sandbox region toggle blocks
outside_instorage. - Sandbox cabling-impossible flow refunds correctly.
- Sandbox cloud Autopay mandate test across 3 banks.
- Sandbox face-recognition default OFF; toggle requires re-consent.
- Sandbox kit DOA replacement window enforced.
- Production installer brand-authorization cross-checked with brand portal weekly.
- Production warranty registration auto-completes within 24h.
- Production rate-limit: 1 install / user / 30 days (anti-abuse).
- Production partner contract clause: no third-party footage sharing.
- Production CPC HMAC-SHA256 verified.
12. ANTI-FABRICATION RULES
- NO
paid_placementon brands or installers. - NO synthetic kit / installer photos.
- NO "AI-powered surveillance" marketing — surface only
edge_ai_human_detection/face_recognitionflags as configured. - NO bundling cloud subscription into kit price.
- NO claim of warranty length partner can't honor.
- NO claim of brand-authorized when installer is not on brand's roster.
- NO TOMO-issued installer badge — brand or background-check provider's only.
- NO holding footage at TOMO — partner cloud at user's region.
- NO synthetic encryption claim.
- NO marketing language ("smart CCTV").
13. REGULATORY FRAMING
- DPDPA 2023 — footage is personal data; user is data principal; partner cloud is data fiduciary in many scenarios. TOMO is not in the footage loop.
- IT Act 2000 + Section 43A / Reasonable Security Practices — encryption at rest, access logs.
- Telegraph Act 1885 / Wireless Telegraphy Act 1933 — wireless cameras must use unlicensed bands at allowed power.
- MeitY guidelines on data localization for sensitive categories — IN-region storage when toggle on.
- Consumer Protection Act 2019 — installer + partner are service providers.
- TOMO is router only — does NOT operate cameras, does NOT hold footage, does NOT issue warranty.