![]() |
![]() |
| ||||
| All the property rights belong to: | Igor Vaskov | ||
Idea and algorithm: | Igor Vaskov | |||
Protocol SNPP: | Allan Gwinn | |||
Protocol extensions: | Igor Vaskov |
This program is a combination of 3 communication servers:
he scheme also shows that the server can receive messages through the Internet (IP) via protocols SMPP and SNPP, and also directly from the paging systems (PS) via the local network (LN).
Further processing depends on the parameter Zone (COVE). The server can send a message to the air via a cell phone connected to the computer, get connected to the paging system and send the message to the system for emitting through the paging transmitter or for sending via roaming channels, or send it via the Internet to the provider of cell telephony to the SMS-center via the protocol SMPP.
Thus SMSD can fulfill most of the functions of Your paging system related to SMS gating and possibly roaming. From the point of view of the cell telephony provider, SMSD is another base station. Since the SMPP protocol is duplex, one can create a SMS-gate of full value for cell network with the paging one. Then the owner of a cell phone will be able to send a message to the pager without resorting to the services of operator's communication but simply sending an SMS-message.
The interface part does not enable the functions of the graphics subsystem, thus the start of an application can be realized in the detach mode.
The received messages are put in the text format stated below in the directory specified by You
and are available for processing by all the means including Rexx.
In case if integration with the paging system which is already installed is required,
You can seek the author's assistance.
At the start the information on the read system settings will be displayed on the screen,
and during the operation, as connections occur, - the information on the established connections
with IP addresses of remote systems. The program exit can be made with the combination Ctrl-X.
The program processes most of error situations correctly. To increase the reliability of
autopilot systems it is recommended to transfer the OS/2 system to the PROTECT ONLY mode and
write an *.CMD file requesting the SNPP Server cyclewise.
The minimum requirements are 486DX2-66 16Mb RAM. The optimal requirements are
Pentium 266 32Mb RAM. It is desirable to configure OS/2 for operation on the HPFS disc.
The data base may occupy fairly much space on the disc - 42 byes for one number.
The program makes use of the environment variable ETC. Before you start the work,
make sure that this variable is set and check up its value. The TCPIP support must be
necessarily installed. After that it is necessary to create the following files in the
directory set forth in the environment variable ETC:
SMSD.PWD - passwords for the session
SMSD.CFG - server configuration (rather complicated)
SMSD.ID - data base with the possibility of alias (optional)
File content | Note |
SMSD.PWD | |
Login1 Password1 0 127.0.0.1 866 1000 7 Login2 Password2 0 * 1251 1000 0 | For users account
|
Login3 Password3 9 127.0.0.1 866 1000 0 |
For administrator account |
SMSD.CFG | |
ROBOT 001 ROBOT 002 ... ROBOT 999 |
Allows the use in the net of several robots for receiving messages. The code is three signs. |
SWAPDIR X:\NOW\ |
Prior to version 1.02. If the specification where to put the received is not specified, it is taken from the start command line. In version 1.03 and higher it is transferred to file PAGEINT.CFG. |
LOCALBASE ON LOCALBASE OFF |
To use or not to use the data base from SMSD.ID. |
TYPEIDCHECK LOCALBASEONLY TYPEIDCHECK REQUESTONLY TYPEIDCHECK LOCALBASEBEFOREREQUEST TYPEIDCHECK REQUESTBEFORELOCALBASE |
In what succession the local and the global data bases should be addressed (the support of the global base is possible only for systems PageLink and GRANIT and only in the full version) |
NOTINBASES ACCEPT NOTINBASES REJECT |
What to do if IDPage is not found in the base (I stress - just not found, and not non-active). ACCEPT - the pager will be deemed active (requests will be processed). |
LOGLEVEL 1 LOGLEVEL 2 LOGLEVEL 3 |
The level of detalization of the LOG which You will find in %ETC%\SMSD.LOG |
MESSAGEFLAGNAME X:\NOW\!MSG!.FLG |
In version 1.02 the variable is introduced which allows to indicate the path and name of the flag that will be created on appearance in the directory specified in SWAPDIR of the file containing the message. If the variable is not initialized, the flag is not created while receiving messages. In versions 1.03 and higher it is transferred to the PAGEINT.CFG file. |
SMSCOVE1 21 SMSCOVE2 22 SMSCOVE3 23 SMSCOVE4 24 |
Version 1.12 and higher. Zones (COVErage), indicating which the program will send messages through the connected cell phone. |
SMSCCOVE1 31 SMSCCOVE2 32 SMSCCOVE3 33 SMSCCOVE4 34 |
Version 1.14 and higher. Zones (COVErage), indicating which the program will send messages through SMS-center of the cell communication provider via the SMPP protocol. |
MYSQLIP | Version 3.28 and higher. IP adress MySQL server. |
MYSQLOGIN | Version 3.28 and higher. Login MySQL server. |
MYSQLPASSWORD | Version 3.28 and higher. Pasword MySQL server. |
DLLSMS32LOAD YES DLLSMS32LOAD NO | Version 3.30 and higher. Load/not load SMS32.DLL. If SMS32.DLL load then COM port lock. |
SENDSNPPSERVICE YES SENDSNPPSERVICE NO | Version 3.30 and higher. Strat/not start async SNPP service. Required connect to MySQL. |
SENDSMSDIRECTSERVICE YES SENDSMSDIRECTSERVICE NO | Version 3.30 and higher. Strat/not start async direct send service over GSM phone. Required connect to MySQL. |
SMPPDEFCOVE 7 | Version 3.30 and higher. Default coverage for SMPP message. |
UCPDEFCOVE 7 | Version 3.30 and higher. Default coverage for UCP message. |
!!!ATTENTION!!! Starting from version 1.03 a new configuration file has been introduced which contains the settings necessary for the interaction with Your paging system: PAGEINT.CFG | |
SWAPDIR X:\NOW\ |
The indication where to put the received, if not specified, is taken from the start command line. |
MESSAGEFLAGNAME X:\NOW\!MSG!.FLG |
Allows to specify the path and the name of the flag that will be created on appearance in the directory specified in SWAPDIR of the file containing the message. If the variable is not initialized, the flag will not be created while receiving messages. |
MESSAGECMD X:\NOW\MYCMD.CMD |
Starting from version 1.06 (version PAGEINT.DLL Page-Link Extended Interface v.0.02) the variable is added which allows to specify the name and location of the batch file that will be started while receiving a message after forming a file with a message. As an argument the first parameter transfers the path and the name of the work file. |
CAPSWAPDIR X:\NUCLON\TNPP\OUT\ |
Version 1.09 and higher. Where to put messages with the indication CapCode and all the necessary information for transmission (message transmission is via CapCode, not the pager number). Directory of connection with the paging system. |
INPUTDIR X:\NUCLON\TNPP\IN\ |
Version 1.09 and higher. Where to look for the messages intended for roaming. Directory of connection with the paging system. |
SMSD.ID | |
1 PINCODE A 1 10 A 10 100 A 100 1000 A 1000 10000 A 10000 10001 A 10001 10002 A 10002 10003 A 10003 10009 A 10009 1001 PINCODE A 1001 10010 A 10010 10011 A 10011 10012 A 10012 10013 A 10013 10019 A 10019 1002 A 1002 10020 A 10020 10021 A 10021 1003 A 1003 |
The lines are sorted to increase of the first field, but not as numbers and exactly as lines. As a unit there is a base built on this principle for 1 thousand of subscribers. From the first position comes the pager number, it can be alphabetical-numerical for 12 positions. From the 14th position comes the individual password of a subscriber for sending messages, 12 positions. The 27th position is a sign of activity: A shall mean active, any other shall mean inactive, a blank should not be used. From the 29th position comes the pager number used in Your system, 12 symbols. This number will be inserted in the output file on the receipt of a message on the number indicated in the beginning of a line. Thus it is possible to convert alphabetical-numerical numbers used when addressing the SNPP server, into numerical ones which are appropriate in Your system. All the lines have the length of 40 symbols and end with a standard chain CRLF. |
After all the said actions are fulfilled - it should work.
User manual (very brief).
Command | Description |
REPEat [n {m}] | Repeat the message n time, the interval of m minutes. |
RELOad | Re-read SMSD.PWD (only for the administrator account). |
GETU [Login] | Supply information about the user (only for the administrator account). |
Other | Not documented :) |
&112 27-01-00 12:10:15 1 5 0 PINCODE * * userid password 09-04-99 17:30:13 This is message. |--- -------- -------- | | | ------- --- ------ -------- ----------------- --------------- | | | | | | | | | | | | | | | | | | | | | | | | | Message before | | | | | | | | | | | | CRLF. | | | | | | | | | | | Date and time of the message receipt. | | | | | | | | | | Sender's password. | | | | | | | | | Sender's login. | | | | | | | | Technical parameters | | | | | | | | (v. 1.03+ IP and Host of the sending party). | | | | | | | Individual password for message sending from this pager. | | | | | | Sending zone (Coverage). | | | | | Interval in minutes. | | | | Number of repetitions. | | | Time of message sending (hh:mm:ss). | | Date of message sending (dd-mm-yy). | Pager number. The format sign. Always &. Unused and blank fields can be replaced with the * symbol.
If you have failed to understand anything in the format, contact the author
(how to contact the author is shown below).
Free unregistered OS/2 SMSD. For registration mail to Igor Vaskov.
There is a client program to the server SNPP
(WIN16-version,
OS/2-version)
combining the possibility of sending messages scanning the appropriate directory
regarding the arrival of files containing text, and also operating as a valuable work
seat of an operator. WIN16-version operates under the whole Windows family starting from 3.1.
There is DLL under OS/2 which realizes
SNPP V.1 and V.2, and also a small test utility to it allowing to send a text file to the pager
from the command line. It is an indispensable thing for automators, integrators and administrators
of large servers.
! - new; # - fixed bug; % - modifications. Version 1.02 ! Flag of an available message appeared. # Help error on Hold command # Error in the execution of the REPEat command. Version 1.03 ! The function of automatic reload of the application in case of an unprocessed error. It multiply increases the durability of the autopilot system. ! Support of national code pages appeared (Win-1251, KOI-8 & etc.). In the non-commercial version it is possible to use only the first two ones in the order of writing in the SMSD.cp file. The file format:The file must be located in the directory specified in the variable ETC. Conversion always takes place in the first line, that is if your main working encoding is DOS866, it is necessary to place first the bar with this symbol set. ! The CHCP command is added. CodePage_name must concur with those which are in SMSD.cp, otherwise an error message will appear. Example: CHCP 1251 % The arrangement is changed. All the parts of the program responsible for the interaction with the paging system are removed to a separate DLL. % Changes in the configuration files. Variables SWAPDIR and MESSAGEFLAGNAME are removed to the PAGEINT.CFG file located in the directory specified in the ETC variable. Version 1.04 ! To the pleasure of hackers one more level of protection appeared. In SMSD.CFG the USER [IPONLY, IPANDLOGIN, LOGINONLY] command is added. In regard to the addition in the user account of his IP address, the format of the SNPP.PWD file changed. Now it looks like this: userid password * IP_address Examples: userid password * 127.0.0.1 ;Administrator from a local computer. userid password 0 127.0.0.1 ;Common user from a local computer. user psw 0 199.12.48.55 ;Common user. * * 0 121.166.23.15 ;Common user, IPONLY registration. Version 1.05 # Freezing of a thread with the full load of the processor in case of session breakaway with the execution of the DATA command. % More efficient libraries of standard functions are used. Version 1.06 ! The keyboard monitoring diabled. % The timer and keyboard monitor code is changed to a more efficient one. Now every monitor is executed in a separate thread. ! User registration. You can learn more details from the author. ! Execution of the .cmd file after receipt of a message. Version 1.07 # Leakage of file descriptors in the mode of authentification IPOnly. % The code of file operations is changed. Efficiency incrementation with the simultaneous work with several users. Accidental and unstable errors are likely to have disappeared. % The code of thread generation is changed. Version 1.09 % Change to a new compiler (Virtual Pascal 2.0). % In the authorization list not the "administrator" sign but the access level is indicated. ! The LIST command is added. It provides the list of those registered in the PagerID base. This was done for compatibility with the Super Pager v.1.8. package. This command operates for the SNPP users with the access level 1 and higher. ! The format of delivery PagerID from Super Pager v.1.8 is supported. % The requirements to the depth of the stack for PageInt.dll are reduced. Version 1.10 % Change for a new compiler (Virtual Pascal 2.1). % The algorithm of work with sockets is completely rewritten. The size of the code is reduced, the operating speed is increased. % There is a new version of PageInt.dll as a unit - the universal interface of connection with three different paging systems. % Optimization for Pentium. Version 1.11 # A bug in the work with memory in PageInt.Dll is fixed. ! The possibility of sending messages to SMS is added. Into the distributive SMS32.DLL is included which allows to send messages via a cell phone. Version 1.12 # A bug is fixed in the SMS gate with the simultaneous work of several users. ! The possibility of zone selection for sending SMS is added. Version 1.14 ! The possibility of direct IP connection with the SMS-center of the cell communication provider is added for organization of the duplex gate via the SMPP protocol. Version 2.15 % The name of the program is changed. ! The EMI/UCP server was added for operation in test mode.