I'm trying to build v1.15 on FreeBSD and I'm failing miserably. I have no idea what I'm doing in FreeBSD. user@bsd14VM:~/ncid $ make freebsd make: "/home/user/ncid/Makefile" line 117: Invalid line type make: "/home/user/ncid/Makefile" line 127: Invalid line type make: "/home/user/ncid/Makefile" line 139: Invalid line type make: "/home/user/ncid/Makefile" line 151: Invalid line type make: Fatal errors encountered -- cannot continue make: stopped in /home/user/ncid Seems to me like it doesn't like...
sip2ncid runs on the linux box at the edge of the network. As a result, it passively monitors all the traffic on the ethernet interface connected to a cable modem. It hands that stuff off to ncid, which also run on the same box. Finally, the clients on the LAN connect to ncid to get the caller ID on their computers/devices. From an integration standpoint, freepbx has similar functionality in that it gets/uses callerID from the same packets sip2ncid does, but freepbx sends that stuff to IP phones...
The drawing is almost correct as far as how things are now. It's actually pretty simple really. You only need to remove the modems/telephone poles and add sip2ncid to the "NCID" on the firewall. Then move the output of ncid/sip2ncid down, and into the VoIP net (where the phones and freepbx are), and you've got it. As for how it used to be, using the drawing as I've described it... Now, just replace all of the IP phones and freepbx with sipura and linksys ATA's. Then, take the analog POTS/FXO ports...
Ed, It builds! I'm not sure if I needed to do both..... # -Wmisleading-indentation comment that in sip2ncid.c, as well as as edit sip2ncid.c /* Look for calling number */ if ((sptr = strstr(sptr, SIPNUM))) { if ((eptr = index(sptr, (int) SIPAT))) { *eptr = '\0'; *number = sptr + strlen(SIPNUM);; if (number == '+') (number)++; } but, either way it's not complaining about how indented the edit improperly or not, so I'm off to do some testing now. I'll let you all know how it goes.... OH! right. one...
Ed, It builds! I'm not sure if I needed to do both..... # -Wmisleading-indentation comment that in sip2ncid.c, as well as as edit sip2ncid.c /* Look for calling number */ if ((sptr = strstr(sptr, SIPNUM))) { if ((eptr = index(sptr, (int) SIPAT))) { *eptr = '\0'; *number = sptr + strlen(SIPNUM);; if (number == '+') (number)++; <-------added this } but, either way it's not complaining about how indented the edit improperly or not, so I'm off to do some testing now. I'll let you all know how it goes.......
Ed, It builds! I'm not sure if I needed to do both..... # -Wmisleading-indentation comment that in sip2ncid.c, as well as as edit sip2ncid.c /* Look for calling number */ if ((sptr = strstr(sptr, SIPNUM))) { if ((eptr = index(sptr, (int) SIPAT))) { *eptr = '\0'; *number = sptr + strlen(SIPNUM);; if (number == '+') (number)++; <-------added this } but, either way it's not complaining about how indented the edit improperly or not, so I'm off to do some testing now. I'll let you all know how it goes.......
Ed, I'm actually building from within the root of the extracted tarball's directory structure. I can "make install" from with the directory structure that the tarball makes for me, and everything builds/compiles/works fine. Ok, so build the environment is validated, so far so good. Right? Here's where things go sideways... As soon as I make either of the edits (one at a time, of course) that John suggests, the build fails. If I go back into sip2ncid.c and remove any of the edits I've inserted, then...
Agreed. I'm confident that it's the "+" being added to the string now.