EventFromApp.fromJson(Map<String, dynamic> json) : this(openEnvelope(json, Channel.eventFromApp) as T);