Ported from js version: jsPduDecoder of Benjamin Erhart, berhart@tladesignz.com
go get github.com/vinhjaxt/pdudecoder
import (
"hex"
"fmt"
"log"
"github.com/vinhjaxt/pdudecoder"
)
func dumpMsg(msg *pdudecoder.Message) {
fmt.Println("Type:", msg.Type)
fmt.Println("SMSC:", msg.SMSC)
fmt.Println("Address:", msg.Address)
fmt.Println("ServiceCenterTime:", msg.ServiceCenterTime)
fmt.Println("Text:", msg.Text)
fmt.Println("ValidityPeriod:", msg.ValidityPeriod)
fmt.Println("PartNumber:", msg.PartNumber)
fmt.Println("TotalParts:", msg.TotalParts)
fmt.Printf("\r\n\r\n")
}
func main (){
bs, err := hex.DecodeString(`07914889200009F50406D0B11B0C00009120221041658249D17A1EB44687C768D0185D0F83C861F719B4CE83E67510B9EE3E83CEEF34683A7381ACF53488FD769F41EB74B90DA2CBC3207638ED0261D36ED038DC06BDDD21`)
if err != nil {
log.Println(err)
return
}
msg, err := pdudecoder.Decode(bs)
if err != nil {
log.Println(err)
return
}
dumpMsg(msg)
}