Overview
Protexis Command is an IoT device management platform used by government agencies and enterprise customers to monitor remote sensor installations. Users can opt in to receive SMS text alerts about device events (power loss, geofence breach, GPIO changes, connectivity loss).
SMS opt-in is user-initiated only — administrators cannot enable SMS on behalf of other users. Each user must individually navigate to their Notification Settings, provide their phone number, select their carrier, read the CTIA-compliant disclosure, and affirmatively check the consent box before SMS can be activated.
All consent events are logged with timestamp, user identity, IP address, and the exact consent text in a dedicated ConsentAudit database table.
The user clicks their avatar in the top navigation bar, then selects "Notification Settings" from the profile menu. The dialog opens with SMS Text Alerts toggled OFF by default. No SMS consent panel is shown until the user explicitly enables it.
When the user toggles "SMS Text Alerts" to ON, the SMS consent panel expands immediately below, requiring: (1) a valid phone number, (2) carrier selection, (3) reading the CTIA-compliant disclosure, and (4) checking the consent checkbox. The "Save" button remains disabled until all three requirements are met.
When the user clicks "Save" with the consent checkbox checked, the system creates a ConsentAudit record containing:
user_id: "authenticated user UUID"
consent_type: "sms_opt_in"
consent_text: "I agree to receive automated SMS alerts from Protexis Command about device events (power, geofence, GPIO, connectivity) at the number above. Message frequency varies by device activity. Msg & data rates may apply. Reply STOP to opt out, HELP for help."
granted_at: "2026-02-27T14:32:01.000Z"
ip_address: "client IP"
phone_number: "hashed"
carrier: "att"
Compliance Summary
Opt-in method: User-initiated, affirmative checkbox consent within authenticated web application.
STOP/HELP: Clearly disclosed in both the consent panel and the consent checkbox text. STOP and HELP keyword handling is implemented at the messaging layer.
Message frequency: Disclosed as "varies based on device activity" — alerts are event-driven, not scheduled.
Rates disclosure: "Msg & data rates may apply" is included in both disclosure and consent text.
Terms & Privacy: Linked inline within the consent panel — Terms & Conditions and Privacy Policy.
Admin override: Not possible. Only the authenticated user can enable SMS for their own account.
Audit trail: ConsentAudit database table records user ID, consent text, timestamp, IP address, and carrier for every opt-in event.