* basic implementation * using a decodable struct to interpret the widget message * small code refactor/improvement