This is a Windows server designed to take input from tdsr and output to NVDA.
- Download the NVDA controller client from https://www.nvaccess.org/files/nvda/releases/stable/
and extract it. You only need
nvdaControllerClient64.dll
andnvdaControllerClient64.lib
. - Build it with
cargo build
, usecargo run
or runtarget\debug\tdsr-server
. It will listen for connections on port 64111.
On the machine running tdsr, create a shell script, something like:
#!/bin/bash
exec socat - TCP4:SERVER_IP:64111,nodelay
Replace SERVER_IP
with the IP address of the server.
This program binds to all interfaces on port 64111. The only things it lets you do are to have NVDA speak a string, and stop speech.
- This uses
BufReader::read_line
to read input. I don't know how to limit the amount of data it reads without abandoning it and doing my own data parsing, so there's no limit on the length of a line that can be received.