code: func (c *cmd) fireEvent() (string, error) {
  	// Create the user event payload
  	msg := &rExecEvent{
  		Prefix:  c.conf.prefix,
  		Session: c.sessionID,
  	}
  	buf, err := json.Marshal(msg)
  	if err != nil {
  		return "", err
  	}
  
  	// Format the user event
  	event := c.apiclient.Event()
  	params := &api.UserEvent{
  		Name:          "_rexec",
  		Payload:       buf,
  		NodeFilter:    c.conf.node,
  		ServiceFilter: c.conf.service,
  		TagFilter:     c.conf.tag,
  	}
  
  	// Fire the event
  	id, _, err := event.Fire(params, nil)
  	return id, err
  }
docs: // fireEvent is used to fire the event that will notify nodes
  // about the remote execution. Returns the event ID or error