Announcement

Collapse
No announcement yet.

[VB.NET/ASP.NET] Snevl 'uber' CallerID package

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [VB.NET/ASP.NET] Snevl 'uber' CallerID package

    This is the v1.34 release of SnevlCID, which is a merger of three Caller ID packages: NCID , WhozzCID, and a modified version of NCID to support generic, caller-ID capable modems (never published, customized for a couple of users). The key things to know about it:
    • Absolutely FREE. I don't want anything, but am willing to help. I enjoy this, and my day job covers my needs.
    • Accepts Caller ID data from NetCallerID devices, generic Modems, the WhozzCalling multi-line CID box, the CTI Meteor (mainly UK), a YAC server on your network, or from HS Phone itself.
    • Supports up to four telephone lines.
    • Several separate web pages to view a log of incoming calls, an editable phonebook, outbound calls (if you use the WozzCalling or Meteor), and to adjust / define the options within SnevlCID.
    • Utilizes Homeseer Phone (PCI Modem or Way2Call) if you have it.
    • Some features worth mentioning:
      • Customized announcements on each call, on the preamble to each call, and on unknown callers
      • Emails on each call (user defined content / format and subject line), with separate destinations on each line
      • Text messages on each call (user defined content / format), separate destinations on each line
      • Google phone number lookups from the call log page, to potentially identify names associated with incoming calls other than the CID name.
      • Configurable control over when call annoucements are made, and to what Homeseer Speaker instances they are announced.
      • Easily extended via built-in events / devices to let you extend what the package does for your own system. For example, a event is triggered for each call (separate for each line), and the call name, call number, and announcement text is stored in separate device strings. You can set up actions on this event to utilize these device strings for interfaces to LEDAM (or my own Snevl_bb package), HSTouch, MainLobby (sample included), or any number of other custom actions.
      • Includes 9 "Extras" (including all necessary files/scripts and instructions) that you can add to your system if you wish. These include things like HSTouch extensions, managing the "Do Not Disturb" messages, and importing the SnevlCID phonebook from either the HSP address book or from Outlook.
      • More...
    I try to be VERY supportive of issues / bugs that people may find, or additional features they may want. Please discuss anything about this package in the discussion thread (here: http://board.homeseer.com/showthread...392#post855392) or send me a PM.

    Thanks, and enjoy!

    Steve

    NOTE: Updated 11-Feb-2012 with v1.34
    Attached Files
    Last edited by stevea; March 1st, 2012, 11:30 PM. Reason: New Version

  • #2
    This is an Add-on example for SnevlCID, demonstrating how you can extend and customize what SnevlCID does on each call, utilizing the events and devices that SnevlCID interfaces to.

    This one is based on a script that Rien du Pre wrote for his install of SnevlCID (thanks, Rien!), and shows how you can do things before the announcement, make a custom announcement (instead of letting SnevlCID make it), and do something after the announcement.

    I've included a README that gives some step-by-step instructions. If anyone has any questions or problems with it, let me know. (If it doesn't work, don't blame Rien! I edited what he gave me...).

    Steve
    Attached Files
    Last edited by stevea; January 23rd, 2009, 08:04 PM. Reason: fixed typo

    Comment


    • #3
      Last 10 callers add-on

      Here's a second example script that might be of some interest. It keeps track of the most recent 10 calls, and puts the list of all 10 in the device string of whatever device you specify. Each of the 10 lines shows the name, number, and date/time of call. I helped Rien du Pre put it this script together so he could display recent calls on HSTouch.

      A README with instructions on using it with SnevlCID is included in the ZIP. Thanks again to Rien du Pre for sharing.

      Steve
      Attached Files

      Comment


      • #4
        v1.28

        The post at the top of the thread has been updated with a new ZIP for v1.28. There are not lots of changes in this version. There have been a few people contact me with problems (mainly with generic Modems). In some cases they were able to work it out without any changes, in others I have modified the script to better deal with the different ways Modems may report CID. The changes in this version include:
        1. Fixed loading of the INI file for 3-line configurations
        2. Fixed how the script kept track of how many lines were in use
        3. Fixed reading the CID phone number for some modems
        4. Fixed how date query strings were used in the call log, to support non-US installs
        5. Fixed # of calls query on call log to support non-US locales
        6. Migrated ASPX scripts to a pre-compiled code-behind DLL
        7. Added option to config page to define guest access to the call logs (incoming and outgoing log pages)
        8. Added version number to upper-right hand corner of all web pages
        As always, I'm happy to help anyone with any issues. Post comments, questions, or suggestions in the discussion thread (referenced in the first post of this thread).

        Steve
        Last edited by stevea; March 30th, 2009, 01:14 PM.

        Comment


        • #5
          Last 10 callers to 10 devices add-on

          Here's another add-on script in response to a suggestion by Fungun over in the discussion thread for SnevlCID. It is an adaptation of the "Last 10 callers add-on" (post #4 above). Instead of putting the information about the most recent 10 calls into a single device string, it puts it into 10 device strings.

          As with the other add-ons posted here, this should integrate really cleanly with SnevlCID. A README file is included with instructions on how to install and use the script.

          Let me know of any issues anyone has, or suggestions for improvements to the script (or my instructions!).

          Steve
          Attached Files

          Comment


          • #6
            PhoneManagement SnevlCID add-on

            A couple of years ago Paul Friedlander wrote a great script for use with HSP called PhoneManagement.vb. Gogs asked that I adapt it to SnevlCID. I contacted Paul and got his OK, so here it is.

            The script uses an occupancy device that is OFF when you are not home. It then ties into SnevlCID to keep track of all calls while you are out. When you come home, you trigger another event which then causes HS to speak who all called while you were gone, and when they called.

            Tremendous thanks to Paul who did real hard work on this. Adapting it to SnevlCID was pretty easy.

            If you already use PhoneManagement.vb, this should be a drop-in replacement.

            This add-on (and all three of the others posted here) will be included in the upcoming v1.29 version of SnevlCID.

            As always, let me know if you have any issues.

            Steve
            Attached Files
            Last edited by stevea; June 28th, 2009, 05:05 PM. Reason: Fixed typo found by mterry63

            Comment


            • #7
              YAC SnevlCID add-on

              This add-on for SnevlCID ties SnevlCID to YAC (Yet Another CallerID program) to allow caller ID data that comes in via SnevlCID to be broadcast out to YAC clients ("listeners") to show a pop-up window announcing the call on the client machine.

              To use, you will need the YAC software (found here: http://sunflowerhead.com/software/yac/) on your HS server and on your client workstations around the house (there is even a client for Tivo, but requires Tivo-hacking abilities to install). The ZIP includes a small program called "YacTextSend.exe" which is written by the YAC author (and posted on that site) which allows any text to be sent to the listeners on the network.

              Step-by-step instructions are included. Post any comments or questions in the discussion thread, linked at the top of this thread.

              This add-on will be included (with the others posted here) in v1.29 of SnevlCID, but should be compatible with previous versions.

              Steve
              Attached Files

              Comment


              • #8
                v1.29 Posted

                The ZIP file at the top of this thread has been updated with the new version of SnevlCID, v1.29. The main changes in this version:
                1. Added support for using HS Phone as the CID source. If you already have HS Phone you don't need any additional hardware to use most of the features of SnevlCID.
                2. Added support for the CTI Meteor CID device, used (I think) primarily in the UK. This device reports outbound calls as well as inbound calls, so a separate outbound call log page is enabled. The Meteor also reports BT voicemail status, so SnevlCID will trigger the "Message Off" and "Message Received" events (you need to configure SnevlCID to create these events).
                3. Added configurable choice of how unknown callers are announced. You can choose to have the default unknown name (e.g. "an unknown caller" or whatever you type on the config page, the caller's number, or both (e.g. "an unknown caller at 555-555-5555").
                4. User-configurable choice of whether to trigger the "New CID" event on blocked callers. In prior versions, blocked callers did not trigger the event, but this may cause unwanted behavior when some of the "Snevl Extras" are set up on the "New CID" event.
                5. A "exclude" list of phone numbers can be applied to the Text Messages and Email settings. You can specify some number of phone numbers for which you do NOT want a text message / email sent out. The most obvious example is when you call home on your cell phone, you don't want SnevlCID to send a text message to you on your cell phone just to tell you that you called.
                6. Fixed the parsing of the NAME field for some modems, where previously the first two characters of the NAME were being stripped off.
                The ZIP also includes all six "Snevl_Extras" add-ons with instructions.

                Special thanks to Bestgear and Gogs for Beta testing the Meteor interface and providing lots of suggestions and help. Especially Gogs, who put up with lots and lots of failed attempts!

                Post any comments, questions, or suggestions over in the discussion thread (linked at the top of this thread).

                Steve

                Comment


                • #9
                  Wildcards in Phonebook

                  My apologies for sneaking a small patch in so soon after v1.29 release, but I am fairly certain people will want this one.

                  First, it isn't fixing any bugs! I've had no reports of any problems with v1.29, so I haven't fixed anything.

                  This patch is a replacement of one file: The main SnevlCallerID_funcs.vben file in the scripts directory. It supports using wildcards in the phonebook, which is *REALLY* handy.

                  An instructions readme is included in the ZIP, but here's the short version: You can use standard SQL wildcards in the phone number which will allow for more liberal matching of incoming calls. There are lots of different SQL wildcards, but for this application I think you can get by with just two items:
                  • '%' matches any sequence of characters, so you can have something as simple as '800%' as a number in the phonebook and every call from an 800 number will match it.
                  • '_' (underscore) matches any single character.
                  The script will look for exact matches first before it will try and match any wildcard expressions. So, if you have a range of numbers that belong to a company, you can use the wildcards (e.g. 3035551___), but if someone you know at that company has one number in that range, you can put that in specifically (e.g. 3035551234). In this case, a call from the one specific number would match the entry for the person you know, and all other calls would match the wildcard entry.

                  No other changes were made from the release.

                  As always, let me know if you have any questions or issues (but do so either in the discussion thread or via PM, not here).

                  Steve
                  Last edited by stevea; July 31st, 2010, 03:19 PM.

                  Comment


                  • #10
                    v1.30

                    The first post in this thread has been updated with the ZIP file for v1.30. This isn't a major update with lots of new features. Rather, there have been a few new features added and some bugs fixed since v1.29:
                    1. Added support for wildcards in the phonebook database (really handy).
                    2. Fixed an error where the "Add" and "Block" buttons on the Call Log would cause an error unless it was on the first page of a list.
                    3. For the CID devices that report outbound calls (WhozzCalling and CTI Meteor), added a feature that lets you define phone keypad sequences and map them to Homeseer events, so you can dial those sequenes from inside your house on any phone and it will cause the appropriate event to be triggered.
                    4. Added some example extras to utilize HSTouch with SnevlCID
                    5. Added a couple of other handy extras (good mainly as examples)
                    6. Fixed an error in how the handling of Call Waiting CID (CWCID) was saved in the config file.
                    7. Fixed an error that happened when there was a completely empty CID Name (not common in the US, but elsewhere).
                    As always, please post comments, questions, or ideas for improvement over in the discussion thread (http://board.homeseer.com/showthread.php?t=133635).

                    Steve

                    Comment


                    • #11
                      Error message when call comes in

                      I've got this installed with my recently acquired Net CallerID box and it is working fine except it does not get the caller's name properly from the phonebook. When a call comes in I get the following message in my Homeseer log:
                      2/5/2010 9:52:39 AM ~!~SnevlCallerID_funcs.vb~!~search_phonebook()-Conversion from type 'DBNull' to type 'String' is not valid.

                      The ID for the number called from (my cellphone) is in the phonebook.
                      Any idea what's wrong?
                      Dick
                      HS PRO 2.5.0.81, WinXP, IE8, Shuttle XS35V3, 2.13GHz, 4GB, 40GB SSD drive, AC-RF2, ADIOcelot, Message Server, TI103, SNEVL CID, pjcOutlook, MCSTemperature, Powertrigger, BLBackup, BLFloorplan, BLIcon, BLOccupied, BLRadar, BLRfid, BLLogMonitor, ACPUPSD, UltraECM, WeatherXML & Stipus' script connector. 500+ devices, 260+ events, 1-wire weather station + temp/humidity sensors & Oregon Scientific temp & humidity sensors & 2 Brultech ECM-1240s

                      Comment


                      • #12
                        Originally posted by RAM View Post
                        I've got this installed with my recently acquired Net CallerID box and it is working fine except it does not get the caller's name properly from the phonebook. When a call comes in I get the following message in my Homeseer log:
                        2/5/2010 9:52:39 AM ~!~SnevlCallerID_funcs.vb~!~search_phonebook()-Conversion from type 'DBNull' to type 'String' is not valid.

                        The ID for the number called from (my cellphone) is in the phonebook.
                        Any idea what's wrong?
                        Dick,

                        I am not sure what the cause is, but I'm sure we will get it fixed for you. Please turn on debug (via the config page), and after you try your cell a couple more times ZIP up the debug file and email it to me. I guess we can't PM, so here's my email: snevl at msn dot com

                        Steve

                        Comment


                        • #13
                          Originally posted by stevea View Post
                          Dick,

                          I am not sure what the cause is, but I'm sure we will get it fixed for you. Please turn on debug (via the config page), and after you try your cell a couple more times ZIP up the debug file and email it to me. I guess we can't PM, so here's my email: snevl at msn dot com

                          Steve
                          Email sent....
                          Dick
                          HS PRO 2.5.0.81, WinXP, IE8, Shuttle XS35V3, 2.13GHz, 4GB, 40GB SSD drive, AC-RF2, ADIOcelot, Message Server, TI103, SNEVL CID, pjcOutlook, MCSTemperature, Powertrigger, BLBackup, BLFloorplan, BLIcon, BLOccupied, BLRadar, BLRfid, BLLogMonitor, ACPUPSD, UltraECM, WeatherXML & Stipus' script connector. 500+ devices, 260+ events, 1-wire weather station + temp/humidity sensors & Oregon Scientific temp & humidity sensors & 2 Brultech ECM-1240s

                          Comment


                          • #14
                            Can't 'Insert' a new entry in phonebook.

                            I tried to add a 'new' entry in the Snevl CallerID Phonebook using Snevl_CID_Phonebook.aspx and after entering all the info when I click on 'Insert' nothing happens.
                            I have tried starting Homeseer (no difference). During startup, the log entries look normal:
                            2/24/2010 7:43:14 PM ~!~SnevlCID~!~SnevlCallerID package version 1.30.2 (8-Feb-2010), by Steve Anderson.
                            2/24/2010 7:43:14 PM ~!~SnevlCID~!~SnevlCID: NetCaller ID Device on COM9: Opened (line 1).
                            2/24/2010 7:43:14 PM ~!~SnevlCID~!~Phonebook is version 3. No update needed.
                            2/24/2010 7:43:14 PM ~!~SnevlCID~!~Call Log is version 2. No update needed.
                            2/24/2010 7:43:14 PM ~!~SnevlCID~!~Found 'OutgoingCalls' table in database; No change needed.
                            2/24/2010 7:43:14 PM ~!~SnevlCID~!~Done with Phonebook and Call Log database checks.
                            2/24/2010 7:43:14 PM ~!~SnevlCID~!~SnevlCallerID Initialized!
                            There are no errors showing in the homeseer log.

                            Any ideas???
                            Dick
                            HS PRO 2.5.0.81, WinXP, IE8, Shuttle XS35V3, 2.13GHz, 4GB, 40GB SSD drive, AC-RF2, ADIOcelot, Message Server, TI103, SNEVL CID, pjcOutlook, MCSTemperature, Powertrigger, BLBackup, BLFloorplan, BLIcon, BLOccupied, BLRadar, BLRfid, BLLogMonitor, ACPUPSD, UltraECM, WeatherXML & Stipus' script connector. 500+ devices, 260+ events, 1-wire weather station + temp/humidity sensors & Oregon Scientific temp & humidity sensors & 2 Brultech ECM-1240s

                            Comment


                            • #15
                              Originally posted by RAM View Post
                              I tried to add a 'new' entry in the Snevl CallerID Phonebook using Snevl_CID_Phonebook.aspx and after entering all the info when I click on 'Insert' nothing happens.
                              Dick,

                              Just to make sure: If you leave the Phonebook page and then come back (e.g., go to the config page by clicking on that link on the top of the phonebook page, then back to the phonebook page), can you confirm that it still doesn't show as entered?

                              I know that after you do an insert the last name won't show up in the pull-down menu. That's because.... well, I don't know how to make it do that. I think I documented that shortcoming somewhere, but if what you are talking about is that it really never shows up. If you leave the page and come back to it, the new name should certainly be there.

                              Try the above and let me know if that isn't the issue. I haven't added any new names for quite a while, but I just tried and verified the name was added.

                              I was pretty irritated that I couldn't figure out a way to re-build that menu without doing a complete redraw of the screen. But all this ASP.NET stuff is self-taught for me, and I'm really not a very good teacher!

                              Steve

                              Comment

                              Working...
                              X