Skip to content

t3hn3rd/PowerADIF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📜 PowerADIF

PSMimeTypes PSGallary Version PSGallery Downloads

🌍 Overview

PowerADIF is a PowerShell module designed to parse (import/export) ADIF (Amateur Data Interchange Format) files in the .adi format. This module allows amateur radio operators to process log data efficiently.

🎯 Features

  • Import ADIF .adi files and parse them into PowerShell objects.
  • Export PowerShell objects into valid ADIF format.
  • Adheres to the ADIF 3.1.4 specification for .adi files.

❌ Non-Features

  • Does not intend to support or parse .adx files for the time being. An XML parser should work for this.
  • Includes the enumerations defined by the spec for use by the user, but does not enforce type checking, nor perform automatic value resolution via the enumerations. Although this would be a nice feature in the future.

💿 Installation

Manual Installation

  1. Download the PowerADIF.psm1 file.
  2. Place it in your PowerShell module directory:
    $modulePath = "$HOME\Documents\PowerShell\Modules\PowerADIF"
    New-Item -ItemType Directory -Path $modulePath -Force
    Copy-Item -Path PowerADIF.psm1 -Destination $modulePath
  3. Import the module:
    Import-Module PowerADIF

PSGallery

Install-Module PowerADIF
Import-Module PowerADIF

🖥️ Usage

Import an ADIF file

$ADIF = Import-ADIF -Path "C:\Logs\log.adif"
$ADIF.Header
$ADIF.Records

Export ADIF data

Export-ADIF -ADIF $ADIF -Path "C:\Logs\exported.adif"

Retrieve ADIF Enumerations

$Enumerations = Get-ADIFEnumerations
$Enumerations

Convert an ADIFStructure Object Back to Raw ADIF

$ADIFString = $ADIFStructure | ConvertTo-ADIF
$ADIFString

⚙️ Functions

  • ConvertTo-ADIFTokens - Converts raw ADIF data into tokenized objects.
  • ConvertFrom-ADIFTokens - Converts tokenized ADIF objects back into ADIF format.
  • ConvertFrom-ADIF - Parses raw ADIF data into a structured object containing headers and records.
  • ConvertTo-ADIF - Converts an ADIFStructure object into raw ADIF format.
  • Import-ADIF - Reads an ADIF file from disk and converts it to an ADIFStructure object.
  • Export-ADIF - Converts an ADIFStructure object into ADIF format and saves it to a file.
  • Get-ADIFEnumerations - Retrieves a (limited) list of ADIF enumerations available in the ADIF specification.

📄 License

This module is licensed under the Apache 2.0 License.

🤝 Contributing

Contributions are welcome! Feel free to open issues or submit pull requests to enhance functionality.

👨‍💻 Contributors