Files
adam-acs/inertia/locales/en.json
T
Kevin L'HereecandCopilot 847da1cdf5 feat: per-device TR-069 SOAP trace logging
- Tr069TraceService: in-memory Map O(1) lookup, Promise-queue per device
  for sequential file writes, 10MB rotation (5 files kept)
- config/tr069-trace.json: persisted list of traced devices (atomic write)
- CwmpLoggerMiddleware: buffers request+response, writes to device log file
  after next() once ctx.cwmpDeviceId is set by controller
- CwmpController: sets ctx.cwmpDeviceId on all code paths (Inform + others)
- StateMachineManager: getHashIdForRemote() for non-Inform messages
- REST API: GET/POST/DELETE /api/v1/tr069-trace
- UI: Tr069Trace Vue page with device search, add/remove tracing
- 8 new unit tests (192 total, all passing)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-06-01 12:07:07 +02:00

197 lines
6.4 KiB
JSON

{
"header": {
"title": "ADAM ACS",
"devices": "Devices",
"configurations": "Configurations",
"firmware": "Firmware",
"commands": "Commands",
"tr069Trace": "TR-069 Trace"
},
"titles": {
"devices": "Devices",
"device": "Device",
"deviceDetail": "Device Detail",
"configurations": "Configurations",
"commands": "Commands",
"commandsFleet": "Fleet Commands",
"discoveryCreate": "Create Discovery Configuration",
"provisioningCreate": "Create Provisioning Configuration",
"firmware": "Firmware Catalog",
"trace": "TR-069 Trace"
},
"labels": {
"manufacturer": "Manufacturer",
"productClass": "Product Class",
"serialNumber": "Serial Number",
"externalIP": "External IP",
"softwareVersion": "Software Version",
"identifier": "Identifier",
"creationDate": "Creation Date",
"createdAt": "Created At",
"lastSeen": "Last Seen",
"status": "Status",
"action": "Action",
"mode": "Mode",
"priority": "Priority",
"parameters": "Parameters",
"properties": "Properties",
"name": "Name",
"value": "Value",
"type": "Type",
"writable": "Writable",
"discovery": "Discovery",
"provisioning": "Provisioning",
"criteria": "Criteria",
"modelPaths": "Model Paths",
"actions": "Actions",
"actionType": "Action Type",
"modelPath": "Model Path",
"deviceIdentifier": "Device Identifier",
"version": "Version",
"policy": "Policy",
"enabled": "Enabled",
"disabled": "Disabled",
"tags": "Tags",
"compliance": "Compliance",
"updatedAt": "Updated",
"search": "Search",
"general": "General",
"matchingCriteria": "Matching Criteria",
"inventoryPaths": "Inventory Paths",
"desiredParameters": "Desired Parameters",
"newConfiguration": "New Configuration",
"results": "result(s)",
"loading": "Loading…",
"noResults": "No configurations found.",
"parameterName": "Parameter name",
"once": "Once",
"maintain": "Maintain",
"firmwareEntries": "Firmware Entries",
"migrationRoutes": "Migration Routes",
"firmwareDetails": "Firmware Details",
"noFirmwareEntries": "No firmware entries found.",
"noMigrationRoutes": "No migration routes defined.",
"newFirmwareEntry": "New Entry",
"editFirmwareEntry": "Edit Entry",
"addRoute": "Add Route",
"fileSize": "File Size (bytes)",
"checksumType": "Checksum Type",
"firmwareUrl": "Firmware URL",
"checksum": "Checksum",
"filterByProductClass": "Filter by product class…",
"saveChanges": "Save changes",
"hardwareVersion": "Hardware version"
},
"button": {
"refresh": "Refresh",
"getModel": "Get Model",
"delete": "Delete",
"edit": "Edit",
"create": "Create",
"send": "Send",
"cancel": "Cancel",
"confirm": "Confirm",
"fleetManagement": "Fleet Management ({count})",
"addCriteria": "Add Criteria",
"addModelPath": "Add Path",
"addAction": "Add Action",
"addParameter": "Add Parameter",
"previous": "Previous",
"next": "Next"
},
"checkbox": {
"selectAll": "Select All",
"selectRow": "Select row {index}"
},
"placeholder": {
"search": "Search...",
"modelPath": "e.g. InternetGatewayDevice.DeviceInfo.",
"value": "Value"
},
"options": {
"NI": "Non-Immediate (NI)",
"I": "Immediate (I)"
},
"modal": {
"confirmDelete": "Confirm Deletion",
"confirmDeleteMessage": "Are you sure you want to delete this item?",
"getModel": "Get Model"
},
"footer": {
"legal": "Legal Notice",
"privacy": "Privacy Policy"
},
"language": {
"fr": "Français",
"en": "English"
},
"criteriaEditor": {
"deviceId": "Device Identity",
"standardParams": "Standard Parameters",
"customCriteria": "Custom Conditions",
"customCriteriaHelp": "Match devices where known parameter values equal the expected values",
"addCondition": "+ Add condition",
"noConditions": "No parameter conditions — matches all devices passing DeviceId criteria above.",
"paramCriteriaWarning": "If a parameter is not yet known on the device, this configuration will not match. A lower-priority configuration without this condition should run first to discover the parameter via its inventory. Avoid using the same path in both criteria and desired parameters — this risks a deadlock.",
"knownValue": "known value",
"knownValues": "known values",
"fields": {
"manufacturer": {
"label": "Manufacturer",
"placeholder": "e.g. Sagemcom or Sagemcom*",
"help": "Exact match or glob pattern (* ?)"
},
"oui": {
"label": "OUI",
"placeholder": "e.g. 00E0FC or 00*",
"help": "Organizationally Unique Identifier"
},
"productClass": {
"label": "Product Class",
"placeholder": "e.g. BM632w or BM*",
"help": "Supports glob patterns"
},
"serialNumber": {
"label": "Serial Number",
"placeholder": "e.g. ABC12345 or ABC*",
"help": "Supports glob patterns"
}
},
"presets": {
"modelName": "Model Name",
"hardwareVersion": "Hardware Version",
"softwareVersion": "Software Version",
"modelNamePlaceholder": "e.g. BM632w",
"hardwareVersionPlaceholder": "e.g. V3R1",
"softwareVersionPlaceholder": "e.g. 1.2.3"
}
},
"configDetail": {
"tabGeneral": "General",
"tabCriteria": "Criteria",
"tabInventory": "Inventory",
"tabParameters": "Parameters",
"tabCompliance": "Compliance",
"tabDryRun": "Dry Run",
"tabHistory": "History",
"totalDevices": "Matching devices",
"compliant": "Compliant",
"nonCompliant": "Non-compliant",
"noMatchingDevices": "No devices match this configuration criteria.",
"loadCompliance": "Load compliance report",
"complianceError": "Error loading compliance report.",
"diffs": "Diffs",
"dryRunDesc": "Simulate applying this configuration to a device without making any real changes.",
"dryRunPlaceholder": "e.g. AABBCC-Device-123",
"runDryRun": "Run",
"dryRunError": "Error during dry run.",
"firmwareSkipped": "firmware outside schedule window",
"paramDiffs": "Parameter differences",
"currentValue": "Current value",
"targetValue": "Target value",
"notSet": "(not set)",
"noParamDiffs": "No parameter differences.",
"firmwarePath": "Firmware migration path"
}
}