'Runs the specified command within a functional D-Bus session. Command is
effectively passed-on to AnsibleModule.run_command() method, with
modification for using dbus-run-session if necessary.
:param command: Command to run, including parameters. Each element of the list should be a string.
:type module: list
:returns: tuple(result_code, standard_output, standard_error) -- Result code, standard output, and standard error from running the command.'

def run_command(self, command):

    if (self.dbus_session_bus_address is None):
        self.module.debug('Using    dbus-run-session    wrapper    for    running    commands.')
        command = (['dbus-run-session'] + command)
        (rc, out, err) = self.module.run_command(command)
        if ((self.dbus_session_bus_address is None) and (rc == 127)):
            self.module.fail_json(msg=('Failed    to    run    passed-in    command,    dbus-run-session    faced    an    internal    error:    %s' % err))
    else:
        extra_environment = {'DBUS_SESSION_BUS_ADDRESS': self.dbus_session_bus_address}
        (rc, out, err) = self.module.run_command(command, environ_update=extra_environment)
    return (rc, out, err)
