Difference between revisions of "Mobile Number Portability Addon"

From Kolmisoft Wiki
Jump to navigationJump to search
Line 19: Line 19:
manually enter numbers in MNP database (process described below) in order for this solution to work. mor_mnp database has
manually enter numbers in MNP database (process described below) in order for this solution to work. mor_mnp database has


to contain only the necessary data (telehone numbers).
to contain only the necessary data (telephone numbers).


<br><br>
<br><br>

Revision as of 09:11, 21 December 2010

Mobile number portability (MNP) enables mobile telephone users to retain their mobile telephone numbers when changing from one mobile network operator to another.


MNP Addon for MOR allows system owner to check number if it belongs to other network and if so - route it through different providers or bill it with different price.

Current implementation allows to save numbers in MySQL database on any server (possible not on local server).

Before each call MOR MNP Addon checks dialed number and if number is found in database - some prefix is added in front of it.

By prefix MOR can set different routing(LCR) or billing(Tariff) for this number.

Detailed technique is described here: LCR/Tariff change based on call prefix

MNP Addon for MOR is available from MOR v8

As Kolmisoft cannot make one unique database for all MNP services in all countries all over the world. MOR admin has to

manually enter numbers in MNP database (process described below) in order for this solution to work. mor_mnp database has

to contain only the necessary data (telephone numbers).



NOTE: It is important to take care of various number formats user can use to dial a number. As a solution to it is to insert MNP number into DB in several possible formats.



Installation

Do such steps:

  1. Upgrade MOR
  2. cd /usr/src/mor/sh_scripts
  3. ./install_mnp.sh 



Upgrade

After Upgrade MOR run /usr/src/mor/upgrade/9/mnp_reenable.sh



Database

Config to DB in: /usr/local/mor/mor_mnp.conf

It should be MySQL database mor_mnp:

DROP TABLE IF EXISTS `numbers`;
CREATE TABLE `numbers` (
 `number` varchar(50) NOT NULL,
 `prefix` varchar(20) NOT NULL,
 PRIMARY KEY  (`number`),
 UNIQUE KEY `number` (`number`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;




Make sure you have set correct MySQL permissions for mor_mnp database and also local or remote asterisk must have correct settings in /usr/local/mor/mor_mnp.conf . If your number is still not recognized, double check if you have it in your mor_mnp database!

An example how to set MySQL permissions:


GRANT REPLICATION SLAVE , REPLICATION CLIENT ON * . * TO 'mor'@'localhost' IDENTIFIED BY 'mor' WITH MAX_QUERIES_PER_HOUR 0
MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
GRANT ALL PRIVILEGES ON `mor_mnp` . * TO 'mor'@'localhost' WITH GRANT OPTION ;

See also