feat: first encounter orchestrator (Issue #400) #402
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "sl-jetson/issue-400-encounter-launch"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
State machine for unknown person detection and enrollment workflow. Detects unknown faces and manages: DETECT → GREET → ASK_NAME → SMALL_TALK → ENROLL → FAREWELL. Triggers Piper TTS at each step, captures STT responses for name and context, handles person interruptions gracefully by saving partial data, stores encounter metadata as JSON.
Implement state machine for detecting and enrolling unknown persons. Manages workflow: DETECT → GREET → ASK_NAME → SMALL_TALK → ENROLL → FAREWELL Features: - Subscribes to /saltybot/person_tracker for unknown face detection - Unknown person threshold configurable (default: 30% confidence) - State machine with Piper TTS triggers for each state - Captures STT responses for name and conversation context - Publishes /social/orchestrator/state for coordination with other nodes - Handles person interruptions gracefully (walks away) - Auto-enrolls person to face gallery (configurable) - Stores encounter data as JSON in /home/seb/encounter-queue/ - Tracks duration, responses, interests, and enrollment success Encounter data structure: { person_id, timestamp, state, name, context, greeting_response, interests[], enrollment_success, duration_sec, notes } Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>