##### SUMMARY
If a host has port set to a usermacro, the host is created successfully. On the next run, the update fails with `ValueError: invalid literal for int() with base 10: {$MACRO}`.

Tested with the latest `zabbix_host` from git.

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
zabbix_host

##### ANSIBLE VERSION
latest

##### CONFIGURATION
Not relevant.

##### OS / ENVIRONMENT
Not relevant.

##### STEPS TO REPRODUCE
Have a host definition with usermacro used for port in an interface. Create the host via Ansible, then run the playbook again.

##### EXPECTED RESULTS
Success (reported as no change).

##### ACTUAL RESULTS

```paste below
Traceback (most recent call last):
  File \"/home/ansible/.ansible/tmp/ansible-tmp-1571042967.61-236562069605480/AnsiballZ_zabbix_host.py\", line 114, in <module>
    _ansiballz_main()
  File \"/home/ansible/.ansible/tmp/ansible-tmp-1571042967.61-236562069605480/AnsiballZ_zabbix_host.py\", line 106, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File \"/home/ansible/.ansible/tmp/ansible-tmp-1571042967.61-236562069605480/AnsiballZ_zabbix_host.py\", line 49, in invoke_module
    imp.load_module(__main__, mod, module, MOD_DESC)
  File \"/tmp/ansible_zabbix_host_payload_7ml4r2/__main__.py\", line 857, in <module>
  File \"/tmp/ansible_zabbix_host_payload_7ml4r2/__main__.py\", line 817, in main
  File \"/tmp/ansible_zabbix_host_payload_7ml4r2/__main__.py\", line 479, in check_all_properties
  File \"/tmp/ansible_zabbix_host_payload_7ml4r2/__main__.py\", line 437, in check_interface_properties
ValueError: invalid literal for int() with base 10: {$MACRO}
```

tls_issuer, tls_subject, ipmi_authtype, ipmi_privilege, ipmi_username, ipmi_password):
        
        exist_template_id_list = self.get_host_templates_by_host_id(host_id)
        exist_template_ids = set(exist_template_id_list)
        template_ids = set(template_id_list)
        template_id_list = list(template_ids)
        
        templates_clear = exist_template_ids.difference(template_ids)
        templates_clear_list = list(templates_clear)
        request_str = {'hostid': host_id, 'templates': template_id_list, 'templates_clear': templates_clear_list,
                       'tls_connect': tls_connect, 'tls_accept': tls_accept, 'ipmi_authtype': ipmi_authtype,
                       'ipmi_privilege': ipmi_privilege, 'ipmi_username': ipmi_username, 'ipmi_password': ipmi_password}
        if tls_psk_identity is not None:
            request_str['tls_psk_identity'] = tls_psk_identity
        if tls_psk is not None:
            request_str['tls_psk'] = tls_psk
        if tls_issuer is not None:
            request_str['tls_issuer'] = tls_issuer
        if tls_subject is not None:
            request_str['tls_subject'] = tls_subject
        try:
            if self._module.check_mode:
                self._module.exit_json(changed=True)
            self._zapi.host.update(request_str)
        except Exception as e:
            self._module.fail_json(msg="Failed to link template to host: %s" % e)
    def inventory_mode_numeric(self, inventory_mode):