Overview
This section provides information on the configuration management of the Windows Interaction Sensor application. The configuration file (default_config.yaml
) contains settings for user session management, logging, interaction capture, and data processing.
Configuration Management
The Windows Interaction Sensor application relies on a configuration file (default_config.yaml
) to manage various settings, such as logging, user session management, interaction capture, and data processing.
Configuration File Location
The configuration file is located in the config/
directory and is named default_config.yaml
.
Key Sections in the Configuration File
-
User Session Management
- Controls settings related to user sessions, such as session timeouts and maximum sessions allowed per user.
user_session_management:
session_timeout: 30 # Timeout (in minutes) for user sessions
max_sessions_per_user: 1 # Maximum number of active sessions allowed per user -
Logging Settings
- Defines the logging configuration, including log file location, log rotation policy, and log levels.
logging:
file: 'logs/app.log' # Log file path relative to the application directory
rotation: 'midnight' # Log rotation policy (options: 'midnight', 'daily', 'weekly', 'monthly')
backup_count: 7 # How many backup logs to keep
file_log_level: DEBUG # Log level for the file (options: DEBUG, INFO, WARNING, ERROR, CRITICAL)
format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s' # Log format
console_log_level: INFO # Log level for console output
console_format: '%(name)s - %(levelname)s - %(message)s' # Format for console output -
Interaction Capture
- Settings for capturing user interactions, including the output directory for captured interactions, capture duration, and interval.
interaction_capture:
output_directory: 'captured_interactions' # Directory where interaction captures are saved
use_absolute_path: False # Use absolute paths; if False, use relative to the application_path
capture_duration_seconds: 30 # Duration (in seconds) for each capture session
capture_interval_seconds: 0 # Interval (in seconds) between capture sessions -
Data Processing
- Controls how captured data is processed, including the output method, directories, API endpoints, and application whitelist.
data_processing:
output_method: 'JSON' # Specify 'JSON' for file output or 'API' for sending data to an API
use_absolute_path: False # Use absolute paths; if False, use relative to the application_path
data_directory: 'data' # Directory where the processed data will be stored
interaction_service: 'https://sandbox.penfield.ai/web/api/v1/external/interactions' # API endpoint for interaction data
whitelist: # Applications allowed for data processing
- Windows Explorer
- Adobe Acrobat
- Notepad++
- Microsoft Word
- Windows Start Experience Host
- Microsoft Excel
- PyCharm
check_interval: 10 # Interval (in seconds) between folder checks for new ZIP files
include_screenshots: False # Include screenshots in the processed data
Modifying the Configuration
To modify the configuration, edit the values in the default_config.yaml
file. For example, to change the output directory for interaction capture, update the output_directory
under the interaction_capture
section.
Example:
interaction_capture:
output_directory: '/new/path/to/captures'
use_absolute_path: True
capture_duration_seconds: 45
capture_interval_seconds: 5
Absolute vs. Relative Paths
- If
use_absolute_path
is set toTrue
in either theinteraction_capture
ordata_processing
sections, the paths will be resolved as absolute paths. - If set to
False
, the paths will be resolved relative to the application directory.