package main import ( "fmt" "os" "path/filepath" ) func getAppKey(deveui string) string { if len(deveui) == 16 { appkey := fmt.Sprintf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c", deveui[10], deveui[3], deveui[4], deveui[7], deveui[15], deveui[9], deveui[11], deveui[2], deveui[0], deveui[8], deveui[1], deveui[6], deveui[5], deveui[12], deveui[14], deveui[13], deveui[3], deveui[6], deveui[12], deveui[7], deveui[15], deveui[1], deveui[9], deveui[11], deveui[2], deveui[10], deveui[0], deveui[8], deveui[5], deveui[14], deveui[4], deveui[13]) return appkey } else { fmt.Printf("devEui has wrong length: %s\n", deveui) return "" } } func main() { if len(os.Args) != 2 { fmt.Println("usage: " + filepath.Base(os.Args[0]) + " ") os.Exit(1) } devEui := os.Args[1] appKey := getAppKey(devEui) fmt.Printf("%s\n", appKey) }