You can use this experimental web page, and a USB modem plugged into a phone landline to access services like Text relay. It supports "type and read".
Edge or Chrome on a PC, support Web API serial. Plug in a USB modem like these: Modems
[ PC: Edge webrowser-this page ]- [ USB serial ]-[ modem ]- [ phoneline ] - [ Text relay ]
For security reasons, you need to grant permissions to access the serial ports used by your modem. Press Connect.
Modem: |
rcvd
sent
input
NOTE: buttons hidden until Modem/serial port is connected
The connection is DUPLEX, but a record of the conversation, needs the RX and TX interleaved.
mixed
Use CNTL-A, CNTL-C to copy
ATS0=0 - modem auto answer
ATS0=1 - modem auto answer, one ring, ADT reports busy if two rings
ATS0=0 - modem auto answer
ATE1 - turn on local echo.
ATE0 - turn off local echo.
AT+MS=0,,, - puts some modems into V.21 mode 300 baud.
AT+MS=V21 - puts some modems into V.21 mode 300 baud.
AT+MS=V23C - puts some modems into V.23 mode
AT+MS=B103 - puts some modems into Bell 103 mode 300 baud.
AT+MS=0,,, - puts some modems into V.21 mode 300 baud.
ATS10=255 - Carrier Losss
AT&V - Sregs values
AT&V1 - Dump Last call
charset="ISO-8859-1" - not UTF8
S7 Wait Time for Carrier, Silence, or Dial Tone 1-255 s * 50 S8 Pause Time for Dial Delay Modifier 2-255 s * 1 S9 Carrier Detect Response Time 1-255 0.1 s * 6 S10 Lost Carrier To Hang Up Delay 1-255 0.1 s * 14
ati3 CX93001-EIS_V0.2002-V92 OK // Turn OFF Hang up on loss of carrier ATS10 OK ATS=0 OK // Set up V21 AT+MS=V21 OK
This code is based on code found in The Raspbarry Pi HACKSPACE magazine #44 p98,p100 http://hsmag.cc/Simpleterm https://www.connectedlittleboxes.com/simpleterm.html http://hsmag.cc/CLBproject Web API documentation: https://developer.mozilla.org/en-US/docs/Web/API | https://developer.mozilla.org/en-US/docs/Web/API/Serial
This code is based on code found in Raspberry Pi magazine HACKSPACE #44 p98,p100 http://hsmag.cc/Simpleterm purchased from Tesco's.
Chrome and Edge can drive serial ports to support cloud based tools to program microcontrollers.
I tried using a serial lead that works on WIN10/11 and these modems. I like the USB ZOOM modem
Plug a modem in, and if seen, you can connect to it, using the connect button.
Your typing goes via the modem. It is possible to copy the typing to the clipboard.
Modems are controlled by AT commands and send inband keywords like OK, ERROR, CONNECT, RING.
A call back function is used to receive text from the modem and look for the key words. The webpage allows a user to type and keystrokes are monitored to send the text on space or enter.
This page can be used from an HTTPS website or a local file on the desktop PC. The user must do the CONNECT
This works
This was not working but seems to be working now. It seemed to work after I dabbled with modems in Windows Device manager:
This one also works, but does not like AT+MS=V21 :
Cable confusion warning - The wiring of the cable from the modem sometimes uses the Phone - 4 wire convention and sometimes the Modem 2 wire convention.
This page can be used to connect to the Textrelay / RelayUK service for the deaf.
You need to run Edge or Chrome on a PC ( or MAC ) and an old modem, like the ZOOM USB modem and a phone line.
Chrome on mobiles does not seem to support WebAPI serial.
A webpage using Web Audio to generate V.21 signals. can generate short bursts of V.21 modem squark. These can be can be acoustically coupled into a phone on a second land line.
I only have one phone line, and one modem. Off hook the modem first using ATA or ATD, then off hook the phones handset, and play modem squark audion into the handset microphone.
Textphones allow Voice Carry Over and do not hangup on loss of carrier. You use a second phone plugged into the same line to speak and hear. To return to type and read, you need to get the modem to retrain. They also have a button to retrain the modem. If you called, use ATD to originate without dialling. If you answered, use ATA to re-answer. See ITU V.21.
if using V.21 the connection is DUPLEX, but the conversation log is SIMPLEX. It is a challenge to display the merged text in a pleasing way. There are more notes in the sourcecode
If people are overtyping, then the bubbles split. If the bubbles are split on GA, then the Bubbles can overlap in time. A--[ txBuffer ]---- B--[ rxBuffer ]---- =================== stream Timeline:- =================== A--[ HI GA ]-----------------[Hello ]-----[Hello ]---[aaaaaaaaaaa]--------[ddddddd]-- B----------------[ HI GA ]-----[Hi]---------[hhhhhhhhhhhhh]----[bbbbbbbbbbb]---[ccccccc]---- NON_OVERLAPPING | OVERLAPPING A--[ HI GA ]---------------|--[Hello ]-----[Hello ]------[aaaaaaaaaaa]--------[ddddddd]----- B----------------[ HI GA ]-|----[Hi]---------[hhhhhhhhhhhhh]----[bbbbbbbbbbb]---[ccccccc]----
When writing code for the Web, there are a large number of Web APIs available. Below is a list of all the APIs and interfaces (object types) that you may be able to use while developing your Web app or site. Web APIs are typically used with JavaScript, although this doesn't always have to be the case.
API documentation: https://developer.mozilla.org/en-US/docs/Web/API | https://developer.mozilla.org/en-US/docs/Web/API/Serial