package iot type ( Thing uint16 GPIO uint8 ) const ( Door Thing = iota Button NFC Webcam ) func (t Thing) MarshalText() ([]byte, error) { return []byte(t.String()), nil } func (t Thing) String() string { switch t { case Door: return "Door" case Button: return "Button" case NFC: return "NFC" case Webcam: return "Webcam" default: return "Unknown" } }