3 Mar 2002 Changed UK numbers Changed Directory for services -------------------------------------------------------------------- Feb 2002 new maintainer : Michael Holzt -------------------------------------------------------------------- 19 Mar 2000 Thanks to Shevek for the working Europolitan driver. I reformatted it a little and hope I haven't screwed it up. Added the eirpage service file, thanks to Stephen Farrell as I dont know what the protocol is I'm guessing at TAP please correct me if I'm wrong. -------------------------------------------------------------------- 8 Mar 2000 Added fixes for both the Vodafone and TIM drivers. -------------------------------------------------------------------- 15 Feb 2000 Fixed TAP driver to include german umlauts, thanks Michael Holzt I'm a little unsure if the checksum code also need fixing since I cant test it this end. Can you have a look Michael. -------------------------------------------------------------------- 26 Jan 2000 Started work on UCP over TCP/IP will build a UCP library and hopefully consolidate UCP drivers. Adding support for op51 which might make some people happy. Added new MOBISTAR driver thanks to Will integrate youre scripts and ideas about target installations. -------------------------------------------------------------------- 22 Jan 2000 Tom Barron added some code for draining data that may be present after a modem init. I made some changes and added it to this version. -------------------------------------------------------------------- 15 Jan 2000 Ross Golder added some files to help with RPM based systems. I haven't tried it out since I run Debian here but any feedback would be welcome. Take a look in 'contrib/RPM' Fix to FreeBSD Makefile. It Looks like some 'carriage returns' crept in when I copied it from outlook express folder in windoze. Added Michael Holzt to README for his work on the debian package. -------------------------------------------------------------------- 6 Jan 2000 Added support for HP-UX 11.00 in the configure and make scripts only a successful build report nonone has told me it works yet. Removed sms_strlen, sms_strcat and sms_strcpy will be updating the 'common' directory so that it contains my own printf and sprintf routines. Fixed Vodafone login check, they changed their banner again! Thanks Peter Greinig Fixed Pageone thanks for the info A. James Lewis and updated their new number. -------------------------------------------------------------------- 29 Nov 1999 Fixed vodafone driver so it find the expected NEW vodafone welcome banner, this may not work in australia, someone let me know. Solaris users, see 6 Nov fix. -------------------------------------------------------------------- 7 Nov 1999 Updated 'vodacom' service file so that it uses 8N1 instead of 7E1 Thanks Alf. I noticed that skytel provides an snpp service, can someone using skytel verify that my snpp driver works with this. -------------------------------------------------------------------- 6 Nov 1999 Updated 'src/comms/modem.c' so that DTR is toggled correctly on Solaris. It appears that the POSIX method doesn't seem to work. -------------------------------------------------------------------- 21 Oct 1999 2.0.8u Added ia5 conversion for 'ucp' driver, you should get reasonable character conversions now, thanks to Alexander Grapenthin . The fix was for 2.0.7 but I fitted into this release, as I cannot test this can someone please get back to me and let me know if this works or has broken something. This should make a lot of europeans happy. I would like to change the drivers so they have an extra function for converting messages based on different character sets and even further some regular expression replacement facilities too. -------------------------------------------------------------------- 15 Oct 1999 2.0.8t Added new service 'netcom', thanks to Bjorn Rogeberg. Fixed 'lock.c' so that it now uses stat() instead of access() to determine whether a file or directory exists, since their behaviour differs when used with setuid binaries. Needs testing. -------------------------------------------------------------------- 9 Oct 1999 2.0.8t Added service file for telia, thanks to both Jonas Borgström and Fredrik Björk for the information on this one. Updated the UCP driver, thanks to Chuck Hurd for a rewrite. This is untested with D2 and Swisscom and Telia, can someone get back to me with some feedback. -------------------------------------------------------------------- 6 Oct 1999 2.0.8s Added service file for digifone. Added a new option 'MDM_pause_after_connect' Simply uncomment it from the 'sms_modem' file and it'll cause sms_client to sleep for 3 seconds after receiving the connect string. -------------------------------------------------------------------- 26 Sep 1999 2.0.8r Think I've solved the problem with modem resetting. 'modem.c' c_flags needed 'CLOCAL" Fixed some error messages, now always bails out with EMALLOC on any malloc() failures. -------------------------------------------------------------------- 11 Sep 1999 2.0.8q Added New service files for 'skytel1' and 'skytel2' Thanks for submitting those Kal. Updated 'src/terminal/Makefile' it didn't include 'common.o' anywhere in the link lines for the final binaries. No one spotted this so I assum no one's using the terminal stuff yet. -------------------------------------------------------------------- 20 Aug 1999 Added fix to 'nextel_web' driver, this should now indicate when message have been successfull dispatched and when they cannot be sent for some other reason. -------------------------------------------------------------------- 18 Aug 1999 Removed many references to sprintf() now call sms_snprintf() which uses snprintf() if an implementation is available. Still a few left. Should go through source and check for strlen(), strcpy() and strcat() and do likewise. Working in the GS API making it a lot simpler to use. Must go through and fix as many places as possible that know about the internal parseer structure just to use the API functions. -------------------------------------------------------------------- 17 Aug 1999 Improve environment expansion so that it is possible to include variable in '"' double quoted strings, the syntax is ${ENVVAR} -------------------------------------------------------------------- 16 Aug 1999 2.0.8p Backfitted guard code from 2.0.7s-8 into SMS Client which ensure that the process is killed after a predefined timeout, 'SMS_service_timeout' this is default to 5 minutes. If a call remains connected for longer than this time the process is forcibly killed. This is ONLY a last ditch method as the client should timeout on ALL read/writes that are made. If your 'sms.log' file contains a message of the form "Forcibly Terminated Process" then I would be interested in hearing from you. This was quite an involved fix to 'src/client/sms_client.c' but it gave it a little facelift that I think it was beginning to need. Remember to update ALL web based interface so that they return useful error results. Looks like I missed the edit in 'sms/sms_modem' from 14-Aug-1999 I've readded the 'MDM_lock_platform = "SOLARIS"' option. Added Solaris hardware flow control option, 'c_cflag |= CRTSCTS' to 'src/comms/modem.c' I have no way of testing this. Added simple environment variable substitution to the parse. You can now have statements such as 'home = $HOME' in config files. -------------------------------------------------------------------- 15 Aug 1999 Updated FAQ. Updated 'src/comms/url.c' so that it doesn't core dump is pasted an empty url. Added NEW 'pagenet_web' and 'nextel_web' services. Again, any feedback appreciated. The pagenet service will require a valid terminal and I don't have any info on these yet. -------------------------------------------------------------------- 14 Aug 1999 Added NEW att_web service. Again, as with the proximus_web driver it hasn't been tested and I'd appreciate feedback. Added comment to 'sms/sms_modem' concerning solaris. If we want to have solaris compatible lockfiles we MUST set a flag in this file. Changed number for 'DETEMOBIL' to '0171 2521002' thanks norbert.wegener@sbs.de. Can someone verify that this is correct. Adding web based services is pretty simple, all I need is beta testers, web page addresses and a little time to write the drivers. The simplest way to do this is to build the 'snoop' tool found in 'src/terminal' just cd 'src/terminal' and 'make'. run it on your machine pointing it a http_proxy server. ./snoop 4040 proxyserver 8080 Where 8080 is the port your proxy listens on, set your browser to user a proxy and point it at 'localhost 4040' now all data is being past through 'snoop' which logs activity in 'logs/snoop.log' on sending a successful message you should have enough info to build your own driver or to send to myself who'll try to build one for you ;) Added NEW proximus_web service. This is currently untested and I need some betas testers. There are some fields that I'm unsure about on the web page so I left blank, this probably won't work without a little tweaking. Added driver update to 'tim.c' the Italian TIM service should now work again, thanks to adrieder@sbox.tu-graz.ac.at Split 'src/driver/driver.c' into two files driver.c driver_comms.c There was no real need to have comms specific in 'driver.c' starting to abstract transport by moving 'server, server_port' into 'device' this will be replaced by a 'pointer to driver' for which data can be extracted. Through calls to an interface, ie. 'get_info' -------------------------------------------------------------------- 11 Aug 1999 Added two NEW services 'cellnet_web' and 'orange_web' these both connect to web servers and pass data as though it were submitted via a browser. These require that you're connect to the internet to work. They will work through a proxy gateway but you must set and environment variable HTTP_PROXY=http://yourproxy:8080/ to be able to use it. You MUST obtain user account from these service before they can be used. I'll post the method for obtaining the cellnet info when I get a chance. The mechanism for handling different transport mediums need implementing as the above drivers look a little like a cludge, having properties to do with modems in them! I will eventually abstract the transport mechanism completely so we switch between different mechanisms more easily, honest. -------------------------------------------------------------------- 6 Aug 1999 2.0.8n Fix for 'proximus' driver. Added check for 'connected\r\n' preamble from 'proximus' service centre before sending any messages. It looks like this 'FEATURE' was added to proximus recently. Various edits in 'src/parser' to extend variables so that numbers as well as quoted strings can be assigned to them. The numbers MUST fit into a long, so it useful for things like flags, buad etc but NOT for telephone numbers. Use quoted strings for these. Updated service files so that value are only quoted for telephone numbers. Couple of small additions to the FAQ. Removed the '.sh' extenstion from the 'configure' script. Added version string to all drivers. Should help when having to identify problems. -------------------------------------------------------------------- 1 Aug 1999 2.0.8m Added new BT Message Master service, thanks to David Ockwell-Jenner. Make sure we get the version string correct the last one 2.0.8k was appearing as 2.0.8j. Looks like that orange hangup problem may have been at orange's end. minicom did the same, they appear to have set their timeouts ridiculously low, I couldn't type in my responses fast enough from minicom! It shouldn't take much work to generate scripts usable via the generic driver from this. Take a quick peek at 'sms/scripts/email' and you'll see what I mean. Tiny corrections to the FAQ. -------------------------------------------------------------------- 23 Jul 1999 version 2.0.8k Released previous version with an incomplete list of drivers in the 'drivers' file. Oooops. MDM_response routine confuses RINGING with RING. Placed RINGING before RING in your response_list array as per request from matt. Updated README to include matt, cheers. Re-ordered entries in this file so you don't have to scroll right to the bottom. Added message saying what locking mechanism was being used in 'modem.c' remember that to use solaris style locking under solaris you MUST change the file '/etc/sms/modems' see the comments in that file. SMS Client should now build with 'make's other than GNU now that some 'ifeq' conditions have been removed. Solaris has been tested, also the Makefile.config for solaris no longer defaults to gcc. You can override this with: make MAKE=gmake CC=gcc Added copyleft to file in 'src/terminal' and updated Makefile so that you can build them. Still commented out in the main make. These are to add a simple way of capturing protocol info and generating driver file automagically. Some of the way there, 'mdup' is a simple command line dialer which logs client/server data. Though it need attention, 'orange' hangs up after sending some data... -------------------------------------------------------------------- 20 Jul 1999 Version 2.0.8j Updated all makefiles so that make appears as $(MAKE) Updated ./configure.sh to include the generation of 'Makefile.drivers' This means that you don't need such a clever version of make as a script is used to generate the list of drivers to build instead of being done dynamically from withing the makefile. Placed dependencies on file 'drivers' and 'Makefile.drivers' such that any edits cause 'driver.a' to be subsequently rebuilt with the correct drivers. Hey this actually works!!! Change 'ar' to $(AR) and set value to 'ar -rc' for all platforms except NEXT where it appears as 'ar rc' Added RANLIB to Makefile.config for all platform except NEXT we just 'echo' I'm unsure whether it's strictly necessary to use ranlib and would welcome some feedback on this. The script 'configure.sh' can be used to modify aspects of the build such as drivers to include and modem library to build/link against. Usage: ./configure.sh [-help] [-drivers] [-modemlib [smsmodem|libmodem]] With no options the defaults 'ALL driver and smsmodem' are selected. After a build you can edit the file 'drivers' to remove unecessary drivers and simply rebuild wih 'make' the makefiles should take care of themselves. You can also specify a different modem library after a build and simply use 'make'. -------------------------------------------------------------------- 18 Jul 1999 Version 2.0.8i Fixed a bug in 'lock.c' which was introduced by last fix in 2.0.8h The code that was reading the pid was setting it to -1 even when it was valid! Also made some changes to the directory layout. Moving 'logfile' and 'common' into their own directories. This makes working on seperate projects that use these files simpler. Maybe I'll move 'error.h' too at somepoint. Reminder, don't prefix any defines with 'E' the 'bumper big boys book' on posix says this is a bad idea. -------------------------------------------------------------------- 02 Jul 1999 Version 2.0.8h Added new "nz" service for Telecom New Zealand. Cheers Robbie for that one. Fixed a bug in 'lock.c' which was never closing a file in the function resource_lock_pid()! Thanks Sergio. -------------------------------------------------------------------- 13 Jun 1999 Added new 'vodafone_tap' service for Mark Good Luck -------------------------------------------------------------------- 11 Jun 1999 Fix to 'gs_token.c' so that in compiles on the Linux REDHAT distribution. Anyone want to tell me what the problem was? -------------------------------------------------------------------- 05 Jun 1999 Fixed problem where switching from 7E1 to 8N1 and back again doesn't screws up parity settings for device. Edits to 'expect.c' prints 'Received Character:' and 'Received String:' message which is now less confusing. Added version info so I can see which version is being used when I get log dumps from people. -------------------------------------------------------------------- 27 Apr 1999 Terminal 'c_cflags' were not being cleared during initialisation. This meant that the flags used from last setting were being used, this ocurred most notibly by user switching from 8N1 to 7E1 and back between different services. Thanks to Gareth Abel for spotting this one. Added new options 'MDM_restore_terminal' to restore the orginal terminal settings on close. and 'MDM_pause_before_dial' to wait after initialisation before dialing, should fix some USR problems. -------------------------------------------------------------------- 24 Apr 1999 'smsd' now generates a lockfile in the '/var/spool/sms/locks' directory of the form 'smsd.pid' along with 'snppd' which now does the same. This falles in line with the queue daemons which also have 'SERVICE.pid' lockfiles. Started working on 'init.d/smsd' an init script for starting and stoping 'smsd' and associated queue daemons. Now that 'smsd' generates lockfiles along with the queue daemons it's easier to stop and start it. Note that to stop 'smsd' you should send it a TERM signal so that it can clean up after itself. -------------------------------------------------------------------- 22 Apr 1999 Ammended expect.c to use sigaction() instead of signal() and rewrote expread() and expwrite(), cheers chris. Added SCO definitions of NAME_MAX and PATH_MAX to 'expand.c' also changed SMS_open_local_smsrc() to allocate filename on the fly as NAME_MAX and PATH_MAX may be functions. -------------------------------------------------------------------- 20 Apr 1999 Ammended modem.c so that we can now uses new config options 'MDM_dtr_hangup_sleep' and 'MDM_dtr_init_sleep' Added call to toggle_DTR() prior to any initialisation. -------------------------------------------------------------------- 11 Feb 1999 Ammended Makefile.config to include PREFIX = SPOOLDIR = SMSUSER = SMSGROUP = -------------------------------------------------------------------- 08 Jan 1999 Changed ALL config files so that they use the NEW parser. This is quite a major change and hence the jump to 2.0.8 Config files are now in lower case and their format has changed considerably. -------------------------------------------------------------------- 07 Jan 1999 Created new 'comms' directory, moving all comms related functionality. Now builds to 'comms.a' -------------------------------------------------------------------- 05 Jan 1999 Added 'RINGING' detection code in 'src/client/sms_modem.c' New flags include 'MDM_max_rings' Changed files 'src/driver/driver.c' 'src/driver/driver.h' to further abstract driver code. The drivers are passed pointers to functions which provide access to the list of messages passed. Changed file 'src/client/sms_client.c' to use the NEW driver functionality by adding access_* functions. The main reason for this change is the queueing daemon will use the driver but processes it's message lists differently. Now the driver can handle either method, it just calls the functions passed to it to deal with getting first/next messages. -------------------------------------------------------------------- 04 Jan 1999 Added new flags to 'src/client/sms_modem.c' To allow support for lockfilesof serial devices on Solaris 2.5.1 New flags include 'MDM_lock_platform' setting it to 'SOLARIS' instead of 'TRADITIONAL' produces a dotted notation. -------------------------------------------------------------------- 22 Dec 1998 Added telephone numbers to 'sms/services/SWISSCOM' file. Changed 'src/drivers/ucp.c' so it responds to positive ACK correctly. -------------------------------------------------------------------- 01 Dec 1998 Changed 'src/drivers/ucp.c' parse UCP response code added. --------------------------------------------------------------------