TSP Lab SgaMSMS - The SMS receiver SgaMSMS

The SMS receiver module
("SgaMSMS")

Features

Basic operation

User interface

The main menu

Menu Menuitem Shortcut(s) Meaning
[Log]
  Find line containing... (Ctrl-F) Finds text in log window
  Find next matching line (F3) Finds next occurrence of text in log window
  Details   Detail level of logging (Off, Normal, Detailed, or Debug)
[Subscribers]
  Auto-send UpdLoc's (Ctrl-A, or ) Allows automatic sending of the Update Location MSUs for the active subscribers
  Send PurgeMS for all active (Ctrl-P) Sends MAP/PurgeMS MSUs to the HLR with the corresponding identifier for the all subscribers
  Import list from file   Refreshes the list of the subscribers from the Subscribers.lst file
  Export list to file   (Not available in this version)
  Zero SM counter of *all* subscribers   Resets all short message counters to zero
[Options]
  Auto scroll (ScrollLock, or ) Allows automatic scrolling of the log screen
  Show log (Ctrl-Tab) Shows the log screen
  Show subscriber list (Ctrl-Tab) Shows the subscriber list screen
  Save settings   Saves actual settings into the configuration (SgaMSMS.ini) file

The columns of the subscriber list screen

The colors of the subscriber list screen

The popup menu of the subscriber list screen

Right-click on the subscriber list screen window to access this menu!
  Menuitem Shortcut(s) Meaning
  Change active state of this subscriber   (Not available in this version)
  Zero SM counter of this subscriber   Resets short message counter for the selected subscriber
  Update Location for this subscriber   Sends MAP/UpdLoc MSU to HLR for the selected subscriber
  Purge this subscriber from HLR   Sends MAP/PurgeMS MSU with the selected subscriber identifier to the HLR
  Forget pending UpdLoc (or PurgeMS) request of this subscriber   Cancels pending UpdLoc (or PurgeMS) request of this subscriber at TCAP level
  Create test SM for this subscriber   (Not available in this version)

The bottom status-line

Configuration (INI) file settings

Section Entry Example Meaning
[Position]
  iLeft 140 Position of the program module on the display screen
  iTop 72 Position of the program module on the display screen
  iWidth 995 Position of the program module on the display screen
  iHeight 694 Position of the program module on the display screen
[Options]
  bAutoScroll True (Refer to the [Options]/Auto scroll menu item!)
[SS7]
  wLocalPointCode 200 The SS7 Point Code of the SGA-MSMS system
  sLocalGlobalTitle 36309489931F The SS7 Global Title of the SGA-MSMS system
  dwLocUpdValiditySec 900 Refresh time for periodical Location Update
  byReturnMAPError 13 Error code value returned in the TCAP END ForwardSM_Result MSU when an incoming short message is refused due to filter settings.
[SS7 over GyX]
  sRemoteIPAddress 127.0.0.3 IP address of GyX_SCTP module
  wRemoteTCPPort 9068 TCP port of GyX_SCTP
  wConnectRetryDelaySec 3 Period of attempts to reconnect
[Subscribers]
  bAutosendLocupds False (Refer to the [Subscribers]/Auto-send UpdLoc's menu item!)
  sListFile Subscribers.lst Specifies the file that contains subscriber data
[CDR File]
  sCDRFilePath f:\Work\Sga-MSMS\Sga-MSMS\CDRFiles Path for the CDR files
  dwNextFileID 45 Filled automatically by application
  dwFlushPeriod 900 CDR file closing period.
  sSystemID 1 The value of 'system_id' in the CDR file name.
Also used for generating 'ch7SwitchID' fields in CDR files [generated as ("MSMS-%02u",byCDRFileSystemID)]
[WarmReserve] About WarmReserve feature see the corresponding part of this document
  sIPAddress 11.22.33.44 IP address of the reserve Sga-MassSMS system
  wUDPPort 1971 UDP port on the reserve Sga-MassSMS system
  dwTimeOutSec 90 If the sum of UpdLocAck+FwdSMRx on the other side does not increase in this period the local side will switch "Auto-send UpdLoc's" ON
  bIAmTheReserve True If it is TRUE and the correspondig sum from the remote side after the time-out increases the local side will switch "Auto-send UpdLoc's" OFF
  sIPAddressAlternateN 11.22.33.44 Alternate IPAddresses can be defined for the automatic WarmReserve feature.
N is from 1 to 4.
[RemoteRequest2]
  sIPAddress 192.168.0.111 IP address of the remote station from where the subscriber list can be reloaded. Default value is 0 means no IP address restriction.
  wUDPPort 1968 Port where the remote loader module can be connected. Default is 0 which means off.
[Advanced]
  wLogDetailLevel 3 (Equals to the listed order; refer to the [Log]/Details menu item!)
  dwMaxLinesInLogWindow 1000 Number of lines in the log window on screen
  sSMSPathNN c:\Sga-MSMS\SMSFiles_00 The NN can vary between 00 and 99. It defines the paths for storing the received short messages in SMS files.
  dwSMSPathNNLimit 5000 The NN can vary between 00 and 99. It defines the maximal number of SMS files in the corresponding directory (-1 means unlimited).
  sLogFilesPath c:\Sga-LogFiles\MSMS1 Path for the LOG files
  sTrapFilesPath c:\Sga-Trapper\Traps Path for the SNMP Trap files to be sent
  bAcceptRemoteLocUpdRequests True Allows accepting remote location update request from the client program
  bAlternateTrapUID False Allows using fixed UIDs in SNMP traps (See SNMP trap list below for details)
  bExtendedSMSFile True If it is TRUE extended SMS files are generated (including SMSC GT)
[ANumberSubstitute]
  85*72004 91*123456789 Entries for ANumber and its ToN+NP substitution.
Its contents is checked on-the-fly (so no need to restart after being modified).
[IMSIPref=OPPref] This section is for IMSIPref<--->MGTPref translation (BEGIN/UpdLoc, BEGIN/PurgeMS, and CONT/empty MSU's are addressed with IMSI-based MGT instead of HLR's DPC)
  21670 3670 Using MGT addressing the given IMSI prefix will be replaced by the operator prefix.
[SMSCConfigFiles] This section contains entries for identifying SMSC configuration files, used in subscriber.lst file.
  SMSCCfg1 f:\work\Sga-MSMS\Sga-MSMS\My_SMSC_Config_001.txt The SMSCCfg1 is an example, any string can be used instead it. This entry name can be used in the subscriber.lst file in the 5th column for referring to the corresponding configuration file.
[ANumberConfigFiles] This section contains entries for identifying A number configuration files, used in subscriber.lst file.
  ANumCfg1 f:\work\Sga-MSMS\Sga-MSMS\My_ANumber_Config_001.txt The ANumCfg1 is an example, any string can be used instead it. This entry name can be used in the subscriber.lst file in the 6th column for referring to the corresponding configuration file.

The subscriber list

An example line of the file:
+ 216012780080055F 36208770055123456    SMSCCfg1 ANumCfg1 0 ;


Parameter No. Value Example Meaning
1 + | - + Set enables or disables the subscriber entry
2 <nnnnnnnnnnnnnnnF> 216554001110951F The IMSI number of the subscriber
3 <nnnnnnnnnnn> 36559700007 The MSISDN number of the subscriber
4 [SMSCConfigFiles]/SMSCCfgEntry SMSCCfg1 Specifies a SMSC configuration file for message filtering. (Refers to a file described with an entry in SgaMSMS.ini/[SMSCConfigFiles] section)
5 [ANumberConfigFiles]/ANumCfgEntry ANumCfg1 Specifies an A number configuration file for message filtering and storing into directories. (Refers to a file described with an entry in SgaMSMS.ini/[ANumberConfigFiles] section)
6 0 .. 9 1 Indicates number of cyclic digits to be concatenated to BNumber

The SMSC configuration files

Example lines of the file:
	36559300098          REJECT ;
  	3655930*             ACCEPT ;

Parameter No. Value Example Meaning Remarks
1 <SMSCNumber> 3655930* Specifies a SMSC number Can contain wildcards as '.', '?' and '*'
The '.' matches zero or one character, the '?' matches one character and '*' matches zero or more character.
2 ACCEPT | REJECT | DELETE REJECT On ACCEPT the message will be accepted, on REJECT the receiving of the message will be rejected and on DELETE the message will be immediately deleted.  

The A number configuration files

Example lines of the file:
	3655?3?0?98          REJECT    ;
	365593034*           ACCEPT 99 ;
	36559300097          DELETE    ;

Parameter No. Value Example Meaning Remarks
1 <ANumber> 3655?3?0?98 Specifies a A number Can contain wildcards as '.', '?' and '*'
The '.' matches zero or one character, the '?' matches one character and '*' matches zero or more character.
2 ACCEPT | REJECT | DELETE REJECT On ACCEPT the message will be accepted, on REJECT the receiving of the message will be rejected and on DELETE the message will be immediately deleted.  
3 00 .. 99 12 This parameter appears only with ACCEPT, and specifies the directory where the short messages of the subscriber will be stored (Refers to [Advanced]/sSMSPathXX value from the SgaMSMS.ini file)  

Automatic Location Update feature

Remote Location Update feature

Creating CDR files

Monitoring of SMS list length

The automatic WarmReserve feature

SNMP trap list

UID Type Text Remarks To Do
If bAlternateTrapUID is set to TRUE
9 CEA '[MAINCAPTION]' module is started. Send a welcome message  
9 CRI '[MAINCAPTION]' module has been shut down by operator. Send a farewell WARning message Start the '[MAINCAPTION]' module
90 CEA GyX: Connection to remote module established.    
90 CRI GyX: Connection to remote module is lost.   Check the state of GyX module.
92 CRI UpdLoc attempt failed 5 times for subscriber '#IMSI#'.   Check the signaling path or the format of IMSI in Subscriber.lst or its state in HLR.
92 CEA UpdLoc attempt succeeded for subscriber '#IMSI#'.    
93 CRI Permanently could not open SMS files for writing. tried to create SMS file 25 times, but all attempts failed Check if there are SMS file in the path defined in the configuration file
93 CRI Failed to create an(y) SMS file. generating temporary file name for SMS file failed Check if the settings are correct in the SgaMSMS.INI configuration file or if there is the directory where the SMS files have to be placed
94 WAR Received an unexpected MSU, or its format is unknown.   Incoming MSU is not a ForwardSM or the answer is CONT instead of END or the MSU in uninterpretable or the answer's TID does not correspond with any pending request.
95 CRI Memory Capacity Exceeded occurred now for "SMSPath".   Number of SMSs in SMSPath reached its limit ([Advanced]/dwSMSPathNNLimit). Increase limit and/or delete SMS files from SMSPath.
If bAlternateTrapUID is set to FALSE
0 INF '[MAINCAPTION]' module is started. Send a welcome message  
0 WAR '[MAINCAPTION]' module has been shut down by operator. Send a farewell WARning message Start the '[MAINCAPTION]' module
++N INF GyX: Connection to remote module established. When GyX connection is up first  
++N CRI GyX: Connection to remote module is lost.   Check the state of GyX module.
N CEA GyX: Connection to remote module established. When GyX connection is up after a disconnection  
++N CRI Permanently could not open SMS files for writing. tried to create SMS file 25 times, but all attempts failed Check if there are SMS file in the path defined in the configuration file
++N CRI Failed to create an(y) SMS file. generating temporary file name for SMS file failed Check if the settings are correct in the SgaMSMS.INI configuration file or if there is the directory where the SMS files have to be placed

Version history