<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
<!--- Explain the problem briefly below -->
httpapi timeout is hardcoded with 120 seconds in the DOCUMENTATION area of plugins/connection/httpapi.py and cannot be set dynamically to higher values. Setting ansible_command_timeout and ansible_connect_timeout to values higher than 120 still raise a ansible.module_utils.connection.ConnectionError: timed out error after 120 seconds

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
httpapi.py

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
ansible 2.9.1
  config file = /rnx/config/ansible/xlab/ansible.cfg
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/lib/python3.6/dist-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.6.8 (default, Oct  7 2019, 12:59:55) [GCC 8.3.0]
```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below
root@localhost:/rnx/config/ansible/xlab# ansible-config dump --only-changed
CACHE_PLUGIN(/rnx/config/ansible/xlab/ansible.cfg) = redis
CACHE_PLUGIN_CONNECTION(/rnx/config/ansible/xlab/ansible.cfg) = <xxxx>:6379:5
CACHE_PLUGIN_PREFIX(/rnx/config/ansible/xlab/ansible.cfg) = ansible_facts_
PERSISTENT_COMMAND_TIMEOUT(/rnx/config/ansible/xlab/ansible.cfg) = 500
PERSISTENT_CONNECT_TIMEOUT(/rnx/config/ansible/xlab/ansible.cfg) = 600

ansible_connection: httpapi
```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
Software
  BIOS: version 05.33
 NXOS: version 9.3(1)
  BIOS compile time:  09/08/2018
  NXOS image file is: bootflash:///nxos.9.3.1.bin
  NXOS compile time:  7/18/2019 15:00:00 [07/19/2019 00:04:48]

Hardware
  cisco Nexus9000 C93180YC-FX Chassis


##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
date; ansible-playbook -vvvv -i hosts.yml <example-playbook-below.yml>; date

If you use 'sleep 115' it works.

<!--- Paste example playbooks or commands between quotes below -->
```yaml
- hosts:
    mynxosdevice
  check_mode: no
  gather_facts: no
  tasks:
  - nxos_command:
      commands:
            - sleep 125
```

<!--- HINT: You can paste gist.github.com links for larger files -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
ok: [mynxosdevice] => {
    "changed": false,
    "invocation": {
        "module_args": {
            "auth_pass": null,
            "authorize": null,
            "commands": [
                "sleep 125"
            ],
            "host": null,
            "interval": 1,
            "match": "all",
            "password": null,
            "port": null,
            "provider": null,
            "retries": 10,
            "ssh_keyfile": null,
            "timeout": null,
            "transport": null,
            "use_ssl": null,
            "username": null,
            "validate_certs": null,
            "wait_for": null
        }
    },
    "stdout": [
        {}
    ],
    "stdout_lines": [
        {}
    ]
}

##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->
Playbook runs in timeout.
<!--- Paste verbatim command output between quotes -->
```paste below
TASK [nxos_command] ************************************************************************************************************
task path: /rnx/config/ansible/xlab/issues/pb_httpapi_timeout.yml:8
<192.168.0.222> attempting to start connection
<192.168.0.222> using connection plugin httpapi
<192.168.0.222> found existing local domain socket, using it!
<192.168.0.222> updating play_context for connection
<192.168.0.222>
<192.168.0.222> local domain socket path is /root/.ansible/pc/c88162470b
<192.168.0.222> PERSISTENT_COMMAND_TIMEOUT is 500
<192.168.0.222> PERSISTENT_CONNECT_TIMEOUT is 600
<192.168.0.222> ESTABLISH LOCAL CONNECTION FOR USER: root
<192.168.0.222> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461 `" && echo ansible-tmp-1578073462.6235766-170009103658461="` echo /root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461 `" ) && sleep 0'
Using module file /usr/local/lib/python3.6/dist-packages/ansible/modules/network/nxos/nxos_command.py
<192.168.0.222> PUT /root/.ansible/tmp/ansible-local-26623ludka1vp/tmpbfo43_rp TO /root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py
<192.168.0.222> EXEC /bin/sh -c 'chmod u+x /root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/ /root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py && sleep 0'
<192.168.0.222> EXEC /bin/sh -c 'python3 /root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py && sleep 0'
<192.168.0.222> EXEC /bin/sh -c 'rm -f -r /root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
Traceback (most recent call last):
  File "/root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py", line 102, in <module>
    _ansiballz_main()
  File "/root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py", line 94, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File "/root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py", line 40, in invoke_module
    runpy.run_module(mod_name='ansible.modules.network.nxos.nxos_command', init_globals=None, run_name='__main__', alter_sys=True)
  File "/usr/lib/python3.6/runpy.py", line 205, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File "/usr/lib/python3.6/runpy.py", line 96, in _run_module_code
    mod_name, mod_spec, pkg_name, script_name)
  File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/modules/network/nxos/nxos_command.py", line 223, in <module>
  File "/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/modules/network/nxos/nxos_command.py", line 191, in main
  File "/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/module_utils/network/nxos/nxos.py", line 1223, in run_commands
  File "/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/module_utils/network/nxos/nxos.py", line 565, in run_commands
  File "/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/module_utils/connection.py", line 185, in __rpc__
ansible.module_utils.connection.ConnectionError: timed out

fatal: [mynxosdevice]: FAILED! => {
    "changed": false,
    "module_stderr": "Traceback (most recent call last):\n  File \"/root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py\", line 102, in <module>\n    _ansiballz_main()\n  File \"/root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py\", line 94, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n  File \"/root/.ansible/tmp/ansible-local-26623ludka1vp/ansible-tmp-1578073462.6235766-170009103658461/AnsiballZ_nxos_command.py\", line 40, in invoke_module\n    runpy.run_module(mod_name='ansible.modules.network.nxos.nxos_command', init_globals=None, run_name='__main__', alter_sys=True)\n  File \"/usr/lib/python3.6/runpy.py\", line 205, in run_module\n    return _run_module_code(code, init_globals, run_name, mod_spec)\n  File \"/usr/lib/python3.6/runpy.py\", line 96, in _run_module_code\n    mod_name, mod_spec, pkg_name, script_name)\n  File \"/usr/lib/python3.6/runpy.py\", line 85, in _run_code\n    exec(code, run_globals)\n  File \"/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/modules/network/nxos/nxos_command.py\", line 223, in <module>\n  File \"/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/modules/network/nxos/nxos_command.py\", line 191, in main\n  File \"/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/module_utils/network/nxos/nxos.py\", line 1223, in run_commands\n  File \"/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/module_utils/network/nxos/nxos.py\", line 565, in run_commands\n  File \"/tmp/ansible_nxos_command_payload_opkv6o7_/ansible_nxos_command_payload.zip/ansible/module_utils/connection.py\", line 185, in __rpc__\nansible.module_utils.connection.ConnectionError: timed out\n",
    "module_stdout": "",
    "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
    "rc": 1
}
```

from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
DOCUMENTATION = """
---
author: Ansible Networking Team
connection: network_cli
short_description: Use network_cli to run command on network appliances
description:
  - This connection plugin provides a connection to remote devices over the
    SSH and implements a CLI shell.  This connection plugin is typically used by
    network devices for sending and receiving CLi commands to network devices.
version_added: "2.3"
options:
  host:
    description:
      - Specifies the remote device FQDN or IP address to establish the SSH
        connection to.
    default: inventory_hostname
    vars:
      - name: ansible_host
  port:
    type: int
    description:
      - Specifies the port on the remote device that listens for connections
        when establishing the SSH connection.
    default: 22
    ini: