Is it possible to parse SMS PDU using just golang
executing AT command
AT+CMGF=0
OK
AT+CMGL=4
+CMGL: 0,1,,26
0791361907002039040C9136198748701300005150713220052308C8303A8C0EA3C3
is there way to decode this in go?
0791361907002039040C9136198748701300005150713220052308C8303A8C0EA3C3
if there's not, can you suggest a work around.
Yep. A quick search turned up: github.com/xlab/at/sms. Here's an example program:
package main
import (
"encoding/hex"
"fmt"
"github.com/xlab/at/sms"
)
func main() {
bs, err := hex.DecodeString("0791361907002039040C9136198748701300005150713220052308C8303A8C0EA3C3")
if err != nil {
panic(err)
}
msg := new(sms.Message)
msg.ReadFrom(bs)
fmt.Println(msg)
}
Running that gives me:
&{0 0 0 0 {63567471770 0 0x57bac0} +639170000293 +639178840731 Hahahaha 0 false false false false false false false}
Also the parent package seems like it has a bunch of functions you may find useful.