Wednesday, December 19, 2012

Mediation

Hi Folks,

This will be my first week in Telco vendor Mediation Multi National company. Wish me luck allz!!

I wish to gain my experience and knowledge here and succeed in company.


Faizal
20121217, Monday

Wednesday, July 25, 2012

International Numbering Plan

Hi Again,

       On top of the Malaysian MNP number verification, I would also like to share the International Numbering Plan where you can look at your mobile number and the Original Network provider that you currently using.

        Here are the snapshot of the web-page and you can see there has a lot of options that you can look around. Please give a try and enjoy!


One of the menu in there.

Some sample using the Malaysian MSISDN.

Malaysia MCMC MNP

Hi Folks,

       Please refer to below web-page if you would like to check which Telco Operator that your family member, buddy, colleague tied to. This would be easy for you to check whether you are calling on-net or off-network. Enjoy!

http://mnpcheck.skmm.gov.my/MNPQuery.aspx

MTN Nigeria employs Ericcson SSR 8020

Please refer below link for article details:

http://telecommunicationnews.net/2012/07/25/mtn-nigeria-employs-ericssons-ssr-8020-to-build-ip-network-of-future/

Wednesday, July 4, 2012

SMPP Error code

Error NumberError NameError Description
0x00000000ESME_ROK No Error
0x00000001ESME_RINVMSGLEN Message too long
0x00000002ESME_RINVCMDLEN Command length is invalid
0x00000003ESME_RINVCMDID Command ID is invalid or not supported
0x00000004ESME_RINVBNDSTS Incorrect bind status for given command
0x00000005ESME_RALYBND Already bound
0x00000006ESME_RINVPRTFLG Invalid Priority Flag
0x00000007ESME_RINVREGDLVFLG Invalid registered delivery flag
0x00000008ESME_RSYSERR System error
0x0000000AESME_RINVSRCADR Invalid source address
0x0000000BESME_RINVDSTADR Invalid destination address
0x0000000CESME_RINVMSGID Message ID is invalid
0x0000000DESME_RBINDFAIL Bind failed
0x0000000EESME_RINVPASWD Invalid password
0x0000000FESME_RINVSYSID Invalid System ID
0x00000011ESME_RCANCELFAIL Cancelling message failed
0x00000013ESME_RREPLACEFAIL Message recplacement failed
0x00000014ESME_RMSSQFUL Message queue full
0x00000015ESME_RINVSERTYP Invalid service type
0x00000033ESME_RINVNUMDESTS Invalid number of destinations
0x00000034ESME_RINVDLNAME Invalid distribution list name
0x00000040ESME_RINVDESTFLAG Invalid destination flag
0x00000042ESME_RINVSUBREP Invalid submit with replace request
0x00000043ESME_RINVESMCLASS Invalid esm class set
0x00000044ESME_RCNTSUBDL Invalid submit to ditribution list
0x00000045ESME_RSUBMITFAIL Submitting message has failed
0x00000048ESME_RINVSRCTON Invalid source address type of number ( TON )
0x00000049ESME_RINVSRCNPI Invalid source address numbering plan ( NPI )
0x00000050ESME_RINVDSTTON Invalid destination address type of number ( TON )
0x00000051ESME_RINVDSTNPI Invalid destination address numbering plan ( NPI )
0x00000053ESME_RINVSYSTYP Invalid system type
0x00000054ESME_RINVREPFLAG Invalid replace_if_present flag
0x00000055ESME_RINVNUMMSGS Invalid number of messages
0x00000058ESME_RTHROTTLED Throttling error
0x00000061ESME_RINVSCHED Invalid scheduled delivery time
0x00000062ESME_RINVEXPIRY Invalid Validty Period value
0x00000063ESME_RINVDFTMSGID Predefined message not found
0x00000064ESME_RX_T_APPN ESME Receiver temporary error
0x00000065ESME_RX_P_APPN ESME Receiver permanent error
0x00000066ESME_RX_R_APPN ESME Receiver reject message error
0x00000067ESME_RQUERYFAIL Message query request failed
0x000000C0ESME_RINVTLVSTREAM Error in the optional part of the PDU body
0x000000C1ESME_RTLVNOTALLWD TLV not allowed
0x000000C2ESME_RINVTLVLEN Invalid parameter length
0x000000C3ESME_RMISSINGTLV Expected TLV missing
0x000000C4ESME_RINVTLVVAL Invalid TLV value
0x000000FEESME_RDELIVERYFAILURE Transaction delivery failure
0x000000FFESME_RUNKNOWNERR Unknown error
0x00000100ESME_RSERTYPUNAUTH ESME not authorised to use specified servicetype
0x00000101ESME_RPROHIBITED ESME prohibited from using specified operation
0x00000102ESME_RSERTYPUNAVAIL Specified servicetype is unavailable
0x00000103ESME_RSERTYPDENIED Specified servicetype is denied
0x00000104ESME_RINVDCS Invalid data coding scheme
0x00000105ESME_RINVSRCADDRSUBUNIT Invalid source address subunit
0x00000106ESME_RINVSTDADDRSUBUNIR Invalid destination address subunit
0x0000040BESME_RINVBALANCE Insufficient credits to send message
0x0000040CESME_RUNESME_SPRTDDESTADDR Destination address blocked by the ActiveXperts SMPP Demo Server

Friday, June 22, 2012

How do I configure SMPP?

The short message peer-to-peer protocol (SMPP) is a telecommunications industry protocol for exchanging SMS messages between SMS peer entities such as short message service centers. It is often used to allow third parties (for example, value-added service providers like news organizations) to submit messages, sometimes in bulk.
The protocol is based on pairs of request/response PDUs (protocol data units, or packets) exchanged over OSI layer 4 (TCP/IP session or X.25 SVC3) connections. PDUs are binary encoded for efficiency.
The most commonly used versions of SMPP are v3.3 (the most widely supported standard) and v3.4, which adds transceiver support (single connections that can send and receive messages). Data exchange can be synchronous, (each peer waits for a response for each PDU being sent) or asynchronous (messages are received and transmitted in independent threads with the use of buffers and timers). The latest version of SMPP is v5.0.

Monday, June 18, 2012

How the Intelligent Network works?

In telecommunication company, telecommunications services that provided to their customer is very important. Company will get revenue by providing value-added service to their customer. One of value-added service enabler for telecommunication company is Intelligent Network or known as IN. IN can provide and differentiate their product between their competitor. IN mainly used for Prepaid Charging, in Prepaid Charging system IN hold configuration about charging matrix, discount, bonus and many other prepaid charging service can provided by IN.
Beside used for prepaid charging, IN also can provide another telecommunication service, such as Friend and Family Promo, Corporate User Group, Single IMSI multiple MMDN and many other
 telecommunication service can be provided. IN consist of some network element such as: SCP(service control point), SMP(service management point), SDP(service data point) and RBI. Lets give a brief overview of IN network element:
  • SCP : SCP mainly used for call control that communicate to MSC or STP. SCP usually also act as the charging and rating application.
  • SMP: SMP used for management of IN. It interact with person or application to make modification of all network element in IN.
  • SDP: SDP used for data management, it will used for manipulating and querying data in realtime. All deduction of prepaid subscriber will be done by SDP in realtime
  • RBI: RBI used for hold Call Data Record. It will be used by another party to calculate revenue from Intelligent Network. Usually Datawarehouse will used data on RBI.
All of this network element communicate in SS7 and IP based. With the integration of all network element in IN Telecommunications Services will be provided to the customer and revenue will come to the telecommunication company.

Monday, June 11, 2012

LTE Telecommunications

LTE (an initialism of Long Term Evolution), marketed as 4G LTE, is a standard for wireless communication of high-speed data for mobile phones and data terminals. It is based on the GSM/EDGE and UMTS/HSPA network technologies, increasing the capacity and speed using new modulation techniques.[1][2] The standard is developed by the 3GPP (3rd Generation Partnership Project) and is specified in its Release 8 document series, with minor enhancements described in Release 9.

The world's first publicly available LTE service was launched by TeliaSonera in Oslo and Stockholm on 14 December 2009.[3] LTE is the natural upgrade path for carriers with GSM/UMTS networks, but even CDMA holdouts such as Verizon Wireless, who launched the first large-scale LTE network in North America in 2010,[4][5] and au by KDDI in Japan have announced they will migrate to LTE. LTE is, therefore, anticipated to become the first truly global mobile phone standard, although the use of different frequency bands in different countries will mean that only multi-band phones will be able to utilize LTE in all countries where it is supported.
Although marketed as a 4G wireless service, LTE as specified in the 3GPP Release 8 and 9 document series does not satisfy the technical requirements the 3GPP consortium has adopted for its new standard generation, and which are set forth by the ITU-R organization in its IMT-Advanced specification. The LTE Advanced standard formally satisfies the ITU-R requirements to be considered IMT-Advanced.[6]




Monday, June 4, 2012

What is GSM MAP operations?

Hi Folks,

If you wondering what is the GSM MAP operations, this article would tell you what exactly does it means. GSM MAP stands for Global System for Mobile Communication Mobile Application Part where it's include all the following operations:


                                 i.            location registration

                               ii.            gprs location registration

                              iii.            subscriber information enquiry

                             iv.            subscriber management

                               v.            imei management

To get details about complete MAP operations, you can refer to the below links:

Tuesday, May 29, 2012

VMWare ESX vs ESXi

VMware makes available two bare-metal hypervisors; ESX and ESXi, which form the foundation of their virtualization product line. both hypervisors do the same thing when it comes to virtualization, they only differ in packaging. ESX is shipped with a Linux derived operating system called service console, and a VMware kernel called VMkernel. the service console include features found on operating systems like firewall, Networking features, and web browser – basically, the service console is a streamed line Linux operating system that let you execute and run many operating system like commands. VMkernel is the foundation of ESX and ESXi virtualization, and it is in charge of allocating and scheduling resources for guest virtual machines. in other words, VMkernel is the real “operating system” of ESX and ESXi.
As you probably figured, the hypervisor does not need the service console to run, so that’s what they did with ESXi, they removed the service console from the hypervisor. the good thing is that by doing that the hypervisor is now very small, and the bad thing is that by stripping off the service console ESXi has less support for hardware, and updating drivers on ESXi requires a VMkernel update also.

So, which is better, ESX or ESXi?

you can do the same thing on both hypervisor, they both support the same virtualization features, so it becomes a matter of preference. I personally like ESX for the custom options it offers, and size partitioning. though I trust VMware with the ESXi speed-light installation without any decision on my side, I rather customize the installation myself.
so to summarize everything, the difference between ESX and ESXi is the service console. remember ESX has a service console, ESXi does not.

Monday, May 28, 2012

Linux Ubuntu

currently installing ubuntu new version (v.12) in my pc that running windows se7en!

short info from wikipedia...

Ubuntu (play /ʊˈbʊnt/ oo-BOON-too)[4][5] is a computer operating system based on the Debian Linux distribution and distributed as free and open source software, using its own desktop environment. It is named after the Southern African philosophy of ubuntu ("humanity towards others").[6] Ubuntu is designed primarily for use on personal computers, although a server edition also exists.
Ubuntu is sponsored by the UK-based company Canonical Ltd., owned by South African entrepreneur Mark Shuttleworth. Canonical generates revenue by selling technical support and services related to Ubuntu, while the operating system itself is entirely free of charge. The Ubuntu project is committed to the principles of free software development; people are encouraged to use free software, improve it, and pass it on.[7]

Wednesday, May 2, 2012

Home Location Register - HLR

What is Home Location Register - HLR


A HLR is a database of user (subscriber) information, i.e., customer profiles, used in mobile (cellular) networks. It is a key component of mobile networks such as GSM, TDMA, and CDMA networks. A HLR contains user information such as account information, account status, user preferences, features subscribed to by the user, user’s current location, etc. The data stored in HLRs for the different types of networks is similar but does differ in some details.

HLRs are used by the Mobile Switching Centers (MSCs) to originate and deliver arriving mobile calls.

Wednesday, April 25, 2012

Sample Linux Shell script > grepping info from MySQL DB

Hi Folks,

Today I finished creating customization script to one of the customer. The objective to create this customization script is to deliver the report immediately to customer since they do not have this kind of delivery report in current system. Take a look and let me know if you have any questions.

#!/bin/sh
export dir=/var/lib/mysql/MT-Support
export script=/var/lib/mysql/MT-Support/scripts
export log=/var/lib/mysql/MT-Support/log
export in=/var/lib/mysql/MT-Support/in
export out=/var/lib/mysql/MT-Support/out

DateTime=`date +%Y-%m-%d-%H-%M-%S`
Date=`date +%Y-%m-%d`

echo "--------------------------------------------" >> $log/ChkDataEnabled-$DateTime.log
echo "START TIME: $DateTime" >> $log/ChkDataEnabled-$DateTime.log
counter=1

### while loop to read the source file from GLO.
while read rline
do

###check1 the current terminal used by subscribers.
mysql -udba -pwApNoMore -hdba-srv-01 -e "use tac; select subscriber.detection.msisdn, subscriber.detection.imsi, subscriber.detection.imei, if(subscriber.detection.last_configured is NULL, 'YES', 'NO') AS last_configured, tac.tac_terminal_mapper.make_name, tac.tac_terminal_mapper.terminal_name from tac.tac_terminal_mapper, subscriber.detection where subscriber.detection.msisdn='234$rline' and substring(subscriber.detection.imei,1,8) in (tac.tac_terminal_mapper.tac) order by subscriber.detection.last_detected desc limit 1 into outfile '$out/234$rline-subs-detection.csv' fields terminated by ',';"

###check2 if MSISDN detected by ADD or not and whether there no configuration sent to subs due to settings not released yet...
rowCount=`cat $out/234$rline-subs-detection.csv | wc -l`
 if [ "$rowCount" -eq 0 ]; then
  echo "No record found in detection table for MSISDN: 234$rline !" >> $log/ChkDataEnabled-$DateTime.log
  rm $out/234$rline-subs-detection.csv

 elif [ "$rowCount" -eq 1 ]; then
  chkNULL=`cat $out/234$rline-subs-detection.csv | awk -F "," '{print $4}'`

  getMSISDN=`cat $out/234$rline-subs-detection.csv | awk -F "," '{print $1}'`
  getIMSI=`cat $out/234$rline-subs-detection.csv | awk -F "," '{print $2}'`
  getIMEI=`cat $out/234$rline-subs-detection.csv | awk -F "," '{print $3}'`
  getMAKE=`cat $out/234$rline-subs-detection.csv | awk -F "," '{print $5}'`
  getTERMINAL=`cat $out/234$rline-subs-detection.csv | awk -F "," '{print $6}'`

  if [ "$chkNULL" = "YES" ]; then
   echo "Phone not configured due to settings not released yet for MSISDN: $getMSISDN, IMSI: $getIMSI, IMEI: $getIMEI, MAKE: $getMAKE, MODEL: $getTERMINAL  !" >> $log/ChkDataEnabled-$DateTime.log

  else  
   ###check3 in otapmanager DB, om_history table to get the setting name that had sent before...
   mysql -udba -pwApNoMore -hdba-srv-01 -e "use otapmanager; select vendor, model, settingname, updatedate, channel from om_history where da='$getMSISDN' and imei='$getIMEI' and settingname != 'sms' order by createdate desc limit 1 into outfile '$out/234$rline-subs-history.csv' fields terminated by ',';"
  
   rowCount2=`cat $out/234$rline-subs-history.csv | wc -l`

   if [ "$rowCount2" -eq 0 ]; then
    echo "No record found in history table for MSISDN: 234$rline !" >> $log/ChkDataEnabled-$DateTime.log

   elif [ "$rowCount2" -eq 1 ]; then
    echo "Record greped from om_history table for MSISDN: 234$rline !" >> $log/ChkDataEnabled-$DateTime.log
   
    getOM_history=`cat $out/234$rline-subs-history.csv`
    echo "$getMSISDN, $getIMSI, $getIMEI, $getOM_history" >> $out/$DateTime-subs-data-enabled.csv
   fi

   rm $out/234$rline-subs-history.csv
  fi
   rm $out/234$rline-subs-detection.csv
        fi
echo "Successfull check row number: $counter" >> $log/ChkDataEnabled-$DateTime.log

counter=`expr $counter + 1`
done < $in/gbamactiv.txt


#gzip $out/$Date-subs-data-enabled.csv
DateTime2=`date +%Y-%m-%d-%H-%M-%S`
echo "END TIME: $DateTime2" >> $log/ChkDataEnabled-$DateTime.log
echo "" >> $log/ChkDataEnabled-$DateTime.log

Tuesday, April 24, 2012

Device Management System - DMS


Device Management System - DMS
DMS is a product that will give mobile operators a powerful solution for automatic configuration of mobile devices for internet, mms, email and other value added services via Over-The-Air (OTA) settings, step-by-step guides and many more.
Over the Air - OTA
Over the Air (OTA) capabilities are considered a main component of mobile network operator and enterprise-grade Device Management System software. These include the ability to remotely configure a single mobile device, an entire fleet of mobile devices or any IT-defined set of mobile devices; send software and OS updates; remotely lock and wipe a device, which protects the data stored on the device when it is lost or stolen; and remote troubleshooting. OTA commands are sent as a binary SMS message.
Device Management System software enables corporate IT departments to manage the many mobile devices used across the enterprise; subsequently, over-the-air capabilities are in high demand. Enterprises using OTA SMS as part of their DMS infrastructure demand high quality in the sending of OTA messages, what imposes on SMS gateway providers to offer a high level of quality and reliability.

Linux Shell String Comparison

Hi Folks,


If you remember when you work on creating own Linux/Unix shell script, you would always be involved in if-else, case comparison. Thus, this article to share the string comparison you can use while using if-else or other comparison method. Hope this helps!


String Comparisons

= equal
!= not equal
< less then
> greater then
-n s1 string s1 is not empty
-z s1 string s1 is empty


Bash File Testing

-b filename Block special file
-c filename Special character file
-d directoryname Check for directory existence
-e filename Check for file existence
-f filename Check for regular file existence not a directory
-G filename Check if file exists and is owned by effective group ID.
-g filename true if file exists and is set-group-id.
-k filename Sticky bit
-L filename Symbolic link
-O filename True if file exists and is owned by the effective user id.
-r filename Check if file is a readable
-S filename Check if file is socket
-s filename Check if file is nonzero size
-u filename Check if file set-ser-id bit is set
-w filename Check if file is writable
-x filename Check if file is executable

Thursday, April 19, 2012

How to find huge filesize in Linux?

Following are few options how it can be done:


1) du -sh *

2) find / -type f -size +100000k -exec ls -lh {} \; | awk '{ print $8 ": " $5 }'

3) ls -lt tms-apc.sdr2011* | awk '{tot += $5} END {tot=((tot/1024)/1024)/1024 ; printf(" TOTAL SIZE (GB): %4.2f\n",tot)}'

Fastest way, use the following:

du -shx  /var/log/* | grep G

Thursday, April 12, 2012

back after a year!

Hi there,

I am back after a year. Will continue post new learning material about telco. wait!!!