first commit
This commit is contained in:
56
qso/qso.go
Normal file
56
qso/qso.go
Normal file
@ -0,0 +1,56 @@
|
||||
package qso
|
||||
|
||||
import (
|
||||
"strings"
|
||||
)
|
||||
|
||||
type QSO struct {
|
||||
Call string
|
||||
Band string
|
||||
Mode string
|
||||
Freq string
|
||||
QSODate string
|
||||
TimeOn string
|
||||
RSTR string
|
||||
RSTS string
|
||||
Country string
|
||||
GridSquare string
|
||||
StationCallsign string
|
||||
}
|
||||
|
||||
func NewQSO() QSO {
|
||||
return *&QSO{}
|
||||
}
|
||||
|
||||
func (q *QSO) ExtractQSOData(msg []string) {
|
||||
for _, entry := range msg {
|
||||
entry = strings.Trim(entry, " ")
|
||||
|
||||
switch {
|
||||
case strings.Contains(entry, "FREQ:"):
|
||||
q.Freq = "<" + entry
|
||||
case strings.Contains(entry, "CALL:"):
|
||||
q.Call = "<" + entry
|
||||
case strings.Contains(entry, "BAND:"):
|
||||
q.Band = "<" + entry
|
||||
case strings.Contains(entry, "MODE:"):
|
||||
q.Mode = "<" + entry
|
||||
case strings.Contains(entry, "QSO_DATE:"):
|
||||
if q.QSODate == "" {
|
||||
q.QSODate = "<" + entry
|
||||
}
|
||||
case strings.Contains(entry, "TIME_ON:"):
|
||||
q.TimeOn = "<" + entry
|
||||
case strings.Contains(entry, "RST_RCVD:"):
|
||||
q.RSTR = "<" + entry
|
||||
case strings.Contains(entry, "RST_SENT:"):
|
||||
q.RSTS = "<" + entry
|
||||
case strings.Contains(entry, "COUNTRY:"):
|
||||
q.Country = "<" + entry
|
||||
case strings.Contains(entry, "GRIDSQUARE:"):
|
||||
q.GridSquare = "<" + entry
|
||||
case strings.Contains(entry, "STATION_CALLSIGN:"):
|
||||
q.StationCallsign = "<" + entry
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user