-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
260 lines (225 loc) · 11.1 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
NCID - Network CallerID
File last changed: Sun Aug 24, 2014
NCID is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License located
in a file called doc/LICENSE.
Web Site: http://ncid.sourceforge.net
NCID Features: http://ncid.sourceforge.net/ncid/ncid.html
Man Pages: http://ncid.sourceforge.net/man/man.html
Application Programming Interface: http://ncid.sourceforge.net/doc/NCID-API.pdf
Software Development Kit: http://ncid.sourceforge.net/doc/NCID-SDK.tar.gz
Directories:
attic: obsolete programs and files
client: client program
Debian: files specific to Debian.
doc: most of the documentation
Fedora: files specific to Fedora.
FreeBSD: files specific to FreeBSD.
gateway: gateway programs
man: man pages
modules: client modules
server: server program
screenshots: screenshots for ncid and tivocid
scripts: logrotate scripts
server: server program
test: test scripts for the server and client
TiVo: files specific to the TiVo
tools: log file scripts
Win: files specific to windows
The NCID package contains:
- a Network CallerID server: ncidd
ncidd runs on Linux/TiVo/UNIX/Macintosh OSX/Cygwin
- a Network CallerID client: ncid
ncid runs on Linux/TiVo/UNIX/Windows/Mac OSX/Cygwin (requires tcl/tk)
- client output modules and a configuration script for them
- A NCID to NCID gateway: ncid2ncid
- A Android smart phone app 'Remote Notifier' to NCID gateway: rn2ncid
- A SIP Invite Gateway: sip2ncid
sip2ncid runs on Linux/UNIX/Windows/Mac OSX/Cygwin
- A Whozz Calling Ethernet Link device gateway: wc2ncid
wc2ncid is a Perl program and runs on Linux/UNIX/Windows/Mac OSX/Cygwin
- A YAC to NCID gateway: yac2ncid (requires a yac server to input CID)
yac2ncid runs on Linux/UNIX/Cygwin/Mac
- tools to work with the CID log and alias files: ncidtools
ncidtools runs on Linux/UNIX/Mac OSX/Cygwin/TiVo (requires Perl)
- a log rotate module
- init and service scripts for Fedora
- init scripts for Ubuntu
- rc scripts for FreeBSD
The server, ncidd, is a TCP/IP Caller ID Daemon. It either monitors a modem
or serial device for Caller ID, or obtains it from a CID gateway. It sends
the CID information over the network to its clients. The server can alias
the NUMBER, NAME, NUMBER and NAME, and LINE identifier received before it
is sent to its clients.
The telco always sends the CID between RING 1 and RING 2. If ncidd does
not receive the CID by RING 2, ncidd can be configured to indicate a call
by sending RING as the number and "No CID From Modem" as the name. This
permits NCID to display a visual indication of a call along with the date
and time. This requires of a modem that indicates RING.
The ncidd server also sends outgoing calls and hangup calls from a blacklist.
Outgoing calls require a gateway that handles outgoing calls.
Call Hangups require a modem to hangup the call.
The NCID package has the following features:
Server Features (ncidd):
- Handles CID information from a modem, device or gateway.
- Handles calls from modems that indicate ring but not Caller ID.
- Handles outgoing or hangup calls from gateways that support them.
- Supports a hangup option to hangup on calls in the blacklist file
but not the whitelist file. The hangup option has 2 modes, normal
hangup and FAX hangup. If the hangup option is set for FAX hangup
but the modem does not support FAX, ncidd will change the hangup
mode to a normal hangup with a warning in the server log file.
- Shares the modem for outgoing calls.
- Supports CID devices like NetCallerID
- Supports VoIP using a SIP gateway: sip2ncid
- Supports outgoing calls if SIP supports it
- Supports multiple POTS lines if using the rn2ncid gateway
instead of modems.
- Allows multiple clients and gateways.
- Does Name/Number/Line aliases, so the display can be customized.
For example: "Wireless Caller" becomes "John on Cell".
- Can alias the telephone line identifier
- Logs all calls: Track who called when.
- Has a configuration file to set most options and aliases.
- Runs on Linux, UNIX, Macintosh OS X, TiVo and Windows using Ubuntu
or Cygwin.
- Supports Distinctive Ring
- Supports Multiline (1 POTS and 1 or Gateways)
- Supports a remote modem using a YAC Gateway
- Send important error messages to the clients.
- Send a message received from a client to all connected clients.
- Reloads the alias file when it receives a SIGHUP signal.
- Sends ring count or -1 for hangup before answer or -2 for hangup after
answer if input device supports it.
- supports sending outgoing calls to clients if received from a gateway
- Automatically terminates a telephone call using a modem if name or
number is in the blacklist file but not in a whitelist file.
- Reloads the alias, blacklist, and whitelist files when it receives
a SIGHUP signal.
- accepts the following jobs from its clients:
* add, modify, or remove aliases from the ncid.alias file using
the ncidutil script
* add or remove entries from the ncidd.blacklist and ncidd.whitelist
files using the ncidutil script
* update the cidcall.log file using the cidupdate script
* resend cidcall.log and if the hangup option is enabled resent
the ncidd.blacklist and ncidd.whitelist files
* enable supported options requested by a client
- Documented protocol
Client Features (ncid):
- GUI can be resized and saved.
- Fonts for the history window and call area can be changed and saved.
- Time of call can be either 24 or 12 hour format.
- Date of call can be mm/dd/yyyy or dd/mm/yyyy
- Date separator can be either '/', '-', or '.'
- Displays the number in a specific country format:
US, Sweden, United kingdom, Germany, Croatia, or no format.
- Displays the Caller ID log file in the call history window.
- Displays the current Caller ID when a call is received.
- Displays outgoing calls if they are supported by the server
- Displays call hangup if supported by the server
- Displays call blocked if supported by a gateway
- Displays Caller ID from a smart phone
- Displays a notice of a smart phone message
- Displays messages received from the server.
- Supports Distinctive Ring and multiple telephone lines.
- Supports output modules to customize its output and to send NCID
calls and messages to cell phones, tablets, pagers or email.
- Can call a output module on a specific ring count or hangup indicator
- Can send a message to all active clients using the server
- Multiple clients allowed, usually each with a different output module.
- can send jobs to the server:
* modify the alias, blacklist or whitelist files
* update the call log with the new aliases
* resent the call log
* reload the alias file and if hangup option enabled, reload the
blacklist and whitelist files
* request a supported server option
- Runs on Windows, Linux, UNIX, and Macintosh OS X.
- Documented protocol
NCID Gateway Features (ncid2ncid)
- Forwards Caller ID information and messages from selected NCID
(sending) servers to a selected NCID (receiving) server
- Handles up to 3 sending NCID servers
- Documented protocol
Remote Notifier Gateway Features (rn2ncid)
- Forwards Caller ID information and messages from a smart phone
- Each smart phone has a 4 hex digit identifier
- can have multiple rn2ncid gateways
- Documented protocol
SIP Gateway Features (sip2ncid)
- Receives Caller ID information from SIP Invite
- Creates a CID Message and sends it to the NCID server
- indicates call answered or not answered
- Handles multiple VoIP Lines
- Indicates the telephone line by the last 4 digits
- can have multiple sip2ncid gateways, each monitoring VoIP hardware
- Documented protocol
Whozz Calling Gateway Features (wc2ncid)
- Handles multiple Whozz Calling Ethernet link devices
- Receives Caller ID or outgoing call information
- Creates a NCID Message and sends it to the NCID server
- indicates call answered or not answered
- Handles multiple POTS Lines
- Indicates the telephone line by the "WCxx"
- can have multiple wc2ncid gateways
- Documented protocol
YAC Gateway Features (yac2ncid)
- Receives Caller ID information from a YAC server
- Creates a NCID Message and sends it to the NCID server
- telephone line identifier can be set in yac2ncid.conf
- Documented protocol
See the doc directory for most documentation, including OS
specific INSTALL files.
See gateway/README.gateways Fedora/README.Fedora FreeBSD/README.FreeBSD
modules/README.modules scripts/README.logfile, tools/README.tools, and
test/README.
Instructions to make and install the ncid package are in the various
INSTALL files included and the web site.
man pages:
Instructions for using ncidd are in the man page: ncidd.8
Instructions for configuring ncidd are in the man page: ncidd.conf.5
Instructions for configuring ncidd aliases are in the man page: ncidd.alias.5
Instructions for ncid.blacklist are in the man page: ncidd.blacklist.conf.5
Instructions for ncid.whitelist are in the man page: ncidd.whitelist.conf.5
Instructions for using ncid are in the man page: ncid.1
Instructions for configuring ncid are in the man page: ncid.conf.5
Instructions for using ncid-<name> are in the man page: ncid-<name>.1
Overview of the modules are in the man page: ncid-modules.7
Instructions for using ncid2ncid are in the man page: ncid2ncid.1
Instructions for configuring ncid2ncid are in the man page: ncid2ncid.conf.5
Instructions for using rn2ncid are in the man page: rn2ncid.1
Instructions for configuring rn2ncid are in the man page: rn2ncid.conf.5
Instructions for using sip2ncid are in the man page: sip2ncid.8
Instructions for configuring sip2ncid are in the man page: sip2ncid.conf.5
Instructions for using wc2ncid are in the man page: wc2ncid.1
Instructions for configuring wc2ncid are in the man page: wc2ncid.conf.5
Instructions for using yac2ncid are in the man page: yac2ncid.1
Instructions for configuring yac2ncid are in the man page: yac2ncid.conf.5
Instructions for using ncidrotate are in the man page: ncidrotate.1
Instructions for using ncidtools are in the man pages: cid<name>.1 wct.1
Overview of ncidtools are in the man page: ncidtools.7
Formatted man pages are text files and html files. They are created in the
man directory after a "make mandir" in the top level directory, or a "make"
in the man directory.
The distributed configuration files are:
ncid.conf
ncidd.conf
ncidd.alias
ncidd.blacklist
ncidd.whitelist
ncidrotate.conf
ncid-alert
ncid-kpopup.conf
ncid-mythtv.conf
ncid-notify.conf
ncid-page.conf
ncid-speak.conf
ncid-samba.conf
ncid-skel.conf
ncid-yac.conf
ncid2ncid.conf
rn2ncid.conf
sip2ncid.conf
wc2ncid.conf
yac2ncid.conf