getDetailedReport method

Map<String, dynamic> getDetailedReport()

Gets a detailed report of the NAT status

Implementation

Map<String, dynamic> getDetailedReport() {
  final summary = getStatusSummary();

  // Add history to the report
  final historyList = behaviorHistory.map((record) => {
    'timestamp': record.timestamp.toIso8601String(),
    'mappingBehavior': record.behavior.mappingBehavior.name,
    'filteringBehavior': record.behavior.filteringBehavior.name,
    'supportsHairpinning': record.behavior.supportsHairpinning,
    'preservesPorts': record.behavior.preservesPorts,
    'supportsPortMapping': record.behavior.supportsPortMapping,
    'mappingLifetime': record.behavior.mappingLifetime,
  }).toList();

  summary['history'] = historyList;

  return summary;
}