code: function trigger() {
                  if (!this.disposed) {
                      var args = Array.prototype.slice.apply(arguments);
  
                      // We are looking for a "noLocal" param which can only be second or forth
                      // And only if its value is true, we will not trigger the event on the local event channel
                      if (!((2 === arguments.length || 4 === arguments.length) &&
                          true === arguments[arguments.length - 1])) {
                          this.eventChannel.trigger.apply(this.eventChannel, args);
                      }
  
                      return _postMessage.call(this, args, ACTION_TYPE.TRIGGER);
                  }
              }
docs: Method to trigger event via post message
  @link Chronos.Events#trigger
  @param {Object|String} options - Configuration object or app name
  @param {String} [options.eventName] - the name of the event triggered
  @param {String} [options.appName] - optional specifies the identifier it is bound to
  @param {Boolean} [options.passDataByRef = false] - boolean flag whether this callback will get the reference information of the event or a copy (this allows control of data manipulation)
  @param {Object} [options.data] - optional event parameters to be passed to the listeners
  @param {String|Boolean} [evName] - the name of the event triggered || [noLocal] - optional boolean flag indicating whether to trigger the event on the local event channel too
  @param {Object} [data] - optional event parameters to be passed to the listeners
  @param {Boolean} [noLocal] - optional boolean flag indicating whether to trigger the event on the local event channel too
  @returns {*}
  
  @example
  courier.trigger({
  appName: "frame",
  eventName: "got_it",
  data: 2
  });