Network Caller ID
Developer(s) | John L. Chmielewski |
---|---|
Stable release |
1.4
/ June 17, 2016 |
Written in | C, Perl, Tcl, Unix Shell |
Operating system | Cross-platform |
Type | Plain Old Telephone Service (POTS) and Voice over Internet Protocol |
License | GNU General Public License |
Website | http://ncid.sourceforge.net/ |
Network Caller ID (NCID) is an open-source client/server network Caller ID (CID) package.
NCID consists of a server called ncidd (short for NCID daemon, a universal client called ncid, and multiple client output modules and gateways. The server, ncidd, monitors either a modem, device or gateway for the CID data. The data is collected and sent, via TCP, to one or more connected clients.
There are non-modem devices (which includes smartphones) and services that can detect CID information. An NCID gateway collects CID data from these other sources and passes it on to the main NCID server. From there the CID data is distributed to all connected clients, just like CID data collected from a traditional modem. One example of a non-modem device is a VoIP (Voice over IP) service that collects CID data as SIP packets. Another example is the Whozz Calling series of Ethernet Link devices that obtain CID information from multiple POTS (Plain old telephone service) lines.
NCID supports messages. Clients can send a one line message to all connected clients.
The client can also be used to push CID to other computers and devices with output modules.
Various clients are available on numerous platforms, including Android, iOS, Linux, macOS and Windows.[1]
Modems
If you have tested a serial, USB or PCI modem, please edit the table below to indicate whether it worked or not.
Manually add entries in alphabetical order by Manufacturer / Model.
Manufacturer | Model | Status | NCID Features Supported (Note A) | Type | Country Tested | Country Code (AT+GCI?) | Chipset Manufacturer (AT+FMI) | Chipset Query Result (ATI3) | Vend:Prod ID (if USB or PCI) | Notes | Owner(s) |
---|---|---|---|---|---|---|---|---|---|---|---|
3Com Corp (U.S. Robotics) | 3CP2976 (US) | Partial | CID, VOICE | PCI | US | ERROR | U.S. Robotics 56K Voice | U.S. Robotics 56K Voice INT V5.20.1 | 12b9:1008 | Use AT#CID=1. See also Note D. | |
Apple | Jump | Working | CID, FAX | Internal | US | B5 | ERROR | Motorola SM56 1.3.9 | ATI4 gives "Apple Internal Modem" | taa | |
Dell | RD02-D400 | Broken | RING | USB | US | ?? | Conexant | CX93010?? | Reported broken here | ||
DualComm | USB Adapter/Modem for Caller ID Display buy | Working | CID, FAX, VOICE | USB | US | B5 | Conexant (Rockwell) | CX93001-EIS_V0.2002-V92 | 0572:1329 | taa | |
LB-LINK | BL-UM03B buy | Working | CID, FAX, VOICE | USB | US | B5 | Conexant Systems (Rockwell), Inc | CX93001-EIS_V0.2013-V92 | 0572:1340 | ||
Phoebe | CMV1456VQE FAX modem | Working | CID, FAX | Serial, External | US only | ?? | ?? | ?? | |||
Rosewill | RNX-56USB | Working | CID, VOICE | USB | US | B5 | Conexant Systems (Rockwell) | CX93001-EIS_V0.2002-V92 | 0572:1321 | Some reports of no CID | |
Sewell | SW-29644 | Working | CID, FAX, VOICE | USB | Italy | B5 | Conexant Systems (Rockwell) | CX93001-EIS_V0.2013-V92 | 0572:1340 | Working FAX and VOICE with AT+VCID=1 | eikaff |
Sewell | SW-29644 buy | Partial | CID | USB | US | ?? | ?? | ?? | ?? | Partial: FAX, VOICE untested | |
TrendNet | TFM-561U | Working | CID, FAX, VOICE | USB | US | B5 | Conexant Systems (Rockwell) | CX93001-EIS_V0.2002-V92 | 0572:1329 | See Note E | |
TRIXES | TRIXES buy | Broken | RING | USB | UK | B4 | Conexant | CX93001-EIS_V0.2002-V92 | 0572:1329 | Reports RING, sometimes Caller ID. See also Note B. | |
U.S. Robotics | 5637 (UK) buy | Partial | CID, VOICE | USB | UK | ?? | ?? | U.S. Robotics 56K FAX USB V1.2.23 | 0baf:0303?? | Use AT#CID=1. See also Note C. | |
U.S. Robotics | 5637 (US) | Partial | CID, VOICE | USB | US | ?? | ?? | U.S. Robotics 56K FAX USB V1.2.23 | 0baf:0303 | Use AT#CID=1. See also Note C. | |
U.S. Robotics | 5686E | Broken | RING | serial | US | ?? | Conexant | CX93010? | Reported broken here | ||
Zoom | 3095 (UK) | Working | CID, FAX, VOICE | USB | UK | ?? | ?? | ?? | ?? | Use AT#CID=1. See also Note B. | |
Zoom | 3095 (US) buy | Working | CID, FAX, VOICE | USB | US | B5 | Conexant | CX93001-EIS_V0.2002-V92 | 0803:3095 | See also Note B. |
Longer notes
- Note A: RING means ring only, no Caller ID, no hangup. CID means Caller ID and simple hangup. FAX and VOICE mean their respective hangup options. Unless otherwise noted, the presence of VOICE indicates the modem will use the default NumberDisconnected.rmd (raw modem file) distributed with NCID.
- Note B: Zoom and TRIXES. Prior to NCID version 0.89, FAX hangup was not a configurable option, and two blog/forum posts (here and here) have patches to add FAX hangup. Starting with NCID version 0.89, FAX hangup is now a configurable option so the patches are no longer necessary. The NCID developers have been unable to contact the author at Murphy 101 Blog to have the blog updated.
- Note C: US Robotics 5637. Tested with Fedora, Raspberry Pi and Ubuntu. Connected to the UK British Telecom and US caller id systems. FAX hangup will not hangup the line, will disconnect the modem and will abort ncidd. Several users report problems using this modem with the Raspberry Pi in particular.
- Note D: 3Com 3CP2976. Linux utility lspci reports "04:01.0 Serial controller: 3Com Corp, Modem Division 56K FaxModem Model 5610 (rev 01)".
- Note E: Works on several Linux distros. Confirmed to work on Raspberry Pi 3 running Ubuntu Mate.
Creating Raw Modem Data (RMD) files from scratch
This table gives you the parameters you need when creating your own RMD files to use with Announce Hangup Feature. This applies to modems in the above table that include "VOICE" in the column "NCID Features Supported".
You convert files from a format supported by the Linux SoX utility to Portable Voice Format (PVF), a conversion step that only needs to be done once.
Then you convert the PVF with the Linux pvftormd utility to a Raw Modem Data (RMD) file that is unique for a modem's chipset. The same PVF can be used to create an RMD for any modem chipset supported by pvftormd.
Chipset Query Result (ATI3) | Convert to PVF | Convert PVF to RMD | Matching Voice Sampling Method (VSM) Query (AT+GSM=?) Result | Modem Command to Use | Notes | Contributor |
---|---|---|---|---|---|---|
CX93001 (generic) | sox custom.wav -t pvf -c 1 -r 8000 -b 8 custom.pvf | pvftormd V253modem 8 custom.pvf custom.rmd | 130,"UNSIGNED PCM",8,0,8000,0,0 | AT+VSM=130 | ?? | |
U.S. Robotics 56K FAX USB V1.2.23 | sox custom.wav -t pvf -c 1 -r 8000 -b 8 custom.pvf | pvftormd V253modem 8 custom.pvf custom.rmd | 128,"8-BIT LINEAR",(7200,8000,11025) | AT+VSM=128,8000 | Requires modem firmware 1.2.23 or later | ?? |
U.S. Robotics 56K Voice INT V5.20.1 | sox custom.wav -t pvf -c 1 -r 8000 -b 8 custom.pvf | pvftormd US_Robotics 4 custom.pvf custom.rmd | 129,G.721,4,0,8000,128,0 | AT+VSM=129 | ?? | |