However that makes little sense in a world where most(?) terminals are emulated and does not apparently even work on a real VT5xx (just returns 00000000 as the id). So the following extension is proposed.
Respond to DA3 with DCS!|00000000;swidST where swid identifies the software product name and version. The syntax of swid could be borrowed from RFC 2616 (HTTP 1.1) Section 3.8. I would prefer that product names are explicitly qualified by (preceded by) the Java-style label-reversed domain name. Hence a company called PCsoft that registers pcsoft.com and sells a product called SuperTerm might send a product name and version of com.pcsoft.SuperTerm/1.0
(DA3 is seemingly not implemented at all in xterm so there is minimal scope for breakage in that regard.)
Product names should be compared without regard to case.
Here's an alternative suggestion for identifying the terminal implementation: Implement the DA3 sequence and implement the extension proposed below.
DA3 is supposed to elicit a globally unique, persistent terminal identifier (its serial number if you like), as documented here:
http:// www.vt100. net/docs/ vt510-rm/ DA3
However that makes little sense in a world where most(?) terminals are emulated and does not apparently even work on a real VT5xx (just returns 00000000 as the id). So the following extension is proposed.
Respond to DA3 with DCS!|00000000; swidST where swid identifies the software product name and version. The syntax of swid could be borrowed from RFC 2616 (HTTP 1.1) Section 3.8. I would prefer that product names are explicitly qualified by (preceded by) the Java-style label-reversed domain name. Hence a company called PCsoft that registers pcsoft.com and sells a product called SuperTerm might send a product name and version of com.pcsoft. SuperTerm/ 1.0
(DA3 is seemingly not implemented at all in xterm so there is minimal scope for breakage in that regard.)
Product names should be compared without regard to case.