##### SUMMARY
When specifying only action name and state "absent", that fails with "missing required arguments: event_source".
Zabbix action names are unique across types (event sources), thus the event source parameter in this case is not mandated by the Zabbix API.
It would be great to either lift this limitation, or add an example in the documentation explaining why it's there.

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
zabbix_action

##### ANSIBLE VERSION
latest

##### CONFIGURATION
Not relevant.

##### OS / ENVIRONMENT
Not relevant.

##### STEPS TO REPRODUCE

```yaml
  - name: "Report problems to Zabbix administrators"
    state: absent
```

##### EXPECTED RESULTS
Either success, or documented special limitation.

##### ACTUAL RESULTS
```
failed: [host] (item={u'state': u'absent', u'name': u'Report problems to Zabbix administrators'}) => {"ansible_loop_var": "item", "changed": false, "item": {"name": "Report problems to Zabbix administrators", "state": "absent"}, "msg": "missing required arguments: event_source"}
```
if conditiontype == '18':
                return self._zapi_wrapper.get_discovery_rule_by_discovery_rule_name(value)['druleid']
            if conditiontype == '19':
                return self._zapi_wrapper.get_discovery_check_by_discovery_check_name(value)['dcheckid']
            if conditiontype == '20':
                return self._zapi_wrapper.get_proxy_by_proxy_name(value)['proxyid']
            if conditiontype == '21':
                return to_numeric_value([
                    "pchldrfor0",
                    "host",
                    "service"], value
                )
            if conditiontype == '23':
                return to_numeric_value([
                    "item in not supported state",
                    "item in normal state",
                    "LLD rule in not supported state",
                    "LLD rule in normal state",
                    "trigger in unknown state",
                    "trigger in normal state"], value
                )
            return value
        except Exception as e:
            self._module.fail_json(
                msg="""Unsupported value '%s' for specified condition type.
                       Check out Zabbix API documentation for supported values for
                       condition type '%s' at
                       https://www.zabbix.com/documentation/3.4/manual/api/reference/action/object#action_filter_condition""" % (value, conditiontype)
            )
    def construct_the_data(self, _eval_type, _formula, _conditions):