docs: function Msg()
  {
      events.EventEmitter.call(this);
      this.args = [
               { name: "([^-]+)-(cert)(@.+)?", obj: "config", make: "$1$3|_pfx", nocamel: 1, descr: "A certificate for APN or similar services in pfx format, can be a file name with .p12 extension or a string with certificate contents encoded with base64, if the suffix is specified in the config parameter name will be used as the app name, otherwise it is global" },
               { name: "([^-]+)-authkey-([^-]+)-(.+)", obj: "config", make: "$1.$3|$2", nocamel: 1, descr: "A auth key for APN in p8 format, can be a file name with .p8 extension or a string with the key contents encoded with base64" },
               { name: "([^-]+)-(key)(@.+)?", obj: "config", make: "$1$3|_key", nocamel: 1, trim: 1, descr: "API key for GCM or similar services, if the suffix is specified in the config parameter will be used as the app name, without the suffix it is global" },
               { name: "([^-]+)-(sandbox)(@.+)?", obj: "config", make: "$1$3|_sandbox", nocamel: 1, type: "bool", descr: "Enable sandbox for a service, default is production mode" },
               { name: "([^-]+)-options-([^@]+)(@.+)?", obj: "config", make: "$1$3|$2", autotype: 1, nocamel: 1, descr: "A config property to the specified agent, driver specific" },
               { name: "shutdown-timeout", type:" int", min: 0, descr: "How long to wait for messages draining out in ms on shutdown before exiting" },
               { name: "app-default", descr: "Default app id(app bundle id) to be used when no app_id is specified" },
               { name: "app-dependency@(.+)", obj: "dependency", make: "$1", type: "list", nocamel: 1, descr: "List of other apps that are considered in the same app family, sending to the primary app will also send to all dependent apps" },
               { name: "app-team-(.+)", obj: "team", make: "$1", type: "regexp", nocamel: 1, descr: "Regexp that identifies all app bundles for a team" },
               { name: "app-team", descr: "Default team to use for apps that do not match any specific teams" },
           ];
      this.config = {};
      this.dependency = {};
      this.team = {};
      this.shutdownTimeout = 1000;
      this.modules = [];
  }