Cygwin Install

Last edited: Wed Feb 10, 2010

NOTES:
    The server has been tested with sip2ncid and ncidsip

    - The server does not function with a modem so it is configured
      for "noserial".  It requires sip2ncid, ncidsip or yac2ncid to
      function.
    - the supplied sip2ncid gateway is recommended over ncidsip
    - the supplied yac2ncid gateway requires YAC to control the modem
    - The supplied ncidsip gateway requires perl and the Net-Pcap module
      http://search.cpan.org/CPAN/authors/S/SA/SAPER
    - Net-Pcap requires WinPcap: http://www.winpcap.org/
    - The Net-Pcap module has been successfully built under cygwin
    - Latest Versions Tested: WpdPack_41b.zip and Net-Pcap-0.14.tar.gz

INSTALL:

    --------------------------------------------
    Install WinPcap from http://www.winpcap.org/
    --------------------------------------------

    - download WinPcap_4_0_1.exe or later version
    - run WinPcap_4_0_1.exe or later version

    --------------------------------------
    Install Cygwin from http://cygwin.com/
    --------------------------------------

    - download setup.exe into a empty folder
    - Run setup.exe
    - select cygwin download site
    - Let default setup download
    - It is strongly recommended you enable cut and past in the Cygwin window.
      * Left click on the icon in upper left
      * Select Properties
      * Check Mark the QuickEdit Mode in Edit Options

    -------------
    Compile ncid:
    -------------

    - See INSTALL

    -------------
    Install ncid:
    -------------

    - The NCID package normally installs in /usr/local:
    - If a binary package is available:
        Copy ncid-VERSION-cygwin.tgz to cygwin, then:
            tar -xzvf ncid-VERSION-cygwin.tgz -C /
            EXAMPLE: tar -xzvf ncid-0.64-cygwin.tgz -C /
    - if there is no binary package, you need to compile the source:
        Copy ncid-VERSION-src.tar.gz to cygwin, then:
        tar -xzvf ncid-VERSION-src.tar.gz
        cd ncid
        make cygwin (compiles for /usr/local, see top of Makefile)
        make cygwin-install

    -----------------------------------------------------
    If phone system is VoIP and you want to use sip2ncid: (Recompensed)
    -----------------------------------------------------

    - nothing else to do

    -------------------------------------------
    If you want to use your modem, you need YAC
    -------------------------------------------

    - download and install YAC from http://sunflowerhead.com/software/yac/
    - configure the YAC server for a listener at localhost (127.0.0.1)

    ----------------------------------------------------
    If phone system is VoIP and you want to use ncidsip: (Not Recommended)
    ----------------------------------------------------

    - install a development system using gcc
    - install perl and CPAN
    - install lynx, wget, and ncftp
    - install WpdPack at C:\ from http://www.winpcap.org/
    - run "cpan" and it will configure itself, accept defaults
      to questions asked, but select multiple download sites
    - At the "cpan>" prompt, type: install IO::Interface
      (if it fails, fix problem and try: cpan -r)
    - At the "cpan>" prompt type: cpan install Net::Pcap
      It will fail to configure.  Quit cpan and cd .cpan/build
      do a ls.  You will see the Net-Pcap-xxx directory.  Cd into
      it and type "make"  when it fails, the error message will
      tell you what the command line should be for WinPcap installed
      at C:\.  If it does not, you need to edit Makefile.pl and add
      } elsif ($^O eq 'cygwin') {
      as the line above
      warn <<"REASON" unless have_library('wpcap', 'pcap_lib_version', 'pcap');
    - After you make it, type: make install

CONFIGURE:

    The Makefile preconfigures ncidd.conf for the Cygwin, but you may
    want to change some of the defaults.

    You need to configure sip2ncid or ncidsip to use the Network Interface.
    To find out the network interface name, you need to use the '-l'
    option to either sip2ncid or ncidsip.  You should see your Network
    interface names listed.  Select the active one and use it with the
    -i option to sip2ncid or ncidsip.

START:

    - If this is your first time, you should do the TEST procedure first

    - start the server and clients:
        ncidd

    -----------------
    If using sip2ncid
    -----------------

        sip2ncid -l (list NETWORK_INTERFACES)
        sip2ncid -i NETWORK_INTERFACE
        (Note: display is <INTERFACE : DESCRIPTION>)

    ----------------
    If using ncidsip (NOTE: this program is replaced by sip2ncid)
    ----------------

        ncidsip -l (list NETWORK_INTERFACES)
        ncidsip -i NETWORK_INTERFACE &
        (Note1: display is <INTERFACE : DESCRIPTION>)
        (Note2: change any '\' to '/' in INTERFACE when using it)

    -----------------
    If using yac2ncid
    -----------------

        yac2ncid &

    -------------
    If using ncid
    -------------

        ncid &

    - Call yourself and see if it works.

TEST:

    - You need to test your local network for SIP packets. Follow
      the instructions in Setup-sip2ncid.  Once you configure your
      network, if needed, and know what options to give to ncidsip,
      you are ready to set up NCID.

    - The easiest way to test the setup is to run ncidd in debug mode,
      it will stay attached to the terminal and not go into daemon mode:
        ncidd -D
    - to get more information, add the verbose flag:
        ncidd -Dv3
    - to also look at the alias structure
        ncidd -Dv5
    - The last three lines will be similar to:
        CallerID only from CID gateways
        Network Port: 3333
        Wrote pid 20996 in pidfile: /var/run/ncidd.pid

    -----------------
    If using sip2ncid
    -----------------

    - Start sip2ncid
    - Call yourself and you should see the CallerID lines.
    - Once it works, you would normally start it:
        ncidd
        sip2ncid

    -----------------
    If using yac2ncid
    -----------------

    - Start yac2ncid
    - Call yourself and you should see the CallerID lines.
    - Once it works, you would normally start it:
        ncidd
        yac2ncid [options needed] &
