Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Block individual providers #80

Open
jpmens opened this issue Oct 1, 2014 · 2 comments
Open

Block individual providers #80

jpmens opened this issue Oct 1, 2014 · 2 comments

Comments

@jpmens
Copy link
Member

jpmens commented Oct 1, 2014

Some M2M providers do not offer blocking access to particular mobile zones (e.g. zone-3) because they want to keep their costs down. (It would be possible, they just don't do it.)

My contact has just had this problem with a different customer, and he suggests doing this on the device side. The way it works is to query (AT command) the modem for a list of providers, and block the ones we don't want the device to use.

IIRC, the list of operators is read with an AT +COPS=? (and this command takes quite a few seconds). A list of tuples is returned:

+COPS: (1,"Vodafone.de","","26202",2),(3,"T-Mobile D","TMO D","26201",2),(3,"T-Mobile D","TMO D","26201",0),(3,"E-Plus","E)

This needs discussing. It also needs a list of world-wide operators which I'm trying to obtain.

@jpmens
Copy link
Member Author

jpmens commented Oct 1, 2014

A PLMN is identified by the Mobile Country Code (MCC) and the Mobile Network Code (MNC). Each operator providing mobile services has its own PLMN. In other words: PLMN == MCC+MNC.

MCC-MNC codes for India

A full? and searchable list may be at http://www.mcc-mnc.com
And something we can also use is at [http://en.wikipedia.org/wiki/Mobile_country_code]

http://mcclist.com/mobile-network-codes-country-codes.asp

https://pypi.python.org/pypi/mobile-codes/0.4

@jpmens
Copy link
Member Author

jpmens commented Oct 1, 2014

Every mobile network (GSM, CDMA, UMTS, etc.) has a unique 5 or 6 digit number called a MNC (Mobile Network Code) that identifies the network. The ITU-T E.212 defines all MNC's and Country Codes, and is updated to reflect changes. The last update was Annex to ITU Operational Bulletin No. 901 – 1.II.2008 and can be downloaded here: E.212 (2008)

The first 3 numbers of the MNC is the Mobile Country Code (MCC), and is the same for all operators in a country (ex: 310 and 311 are the Country Codes for the USA).

The next 2 or 3 numbers is the operator specific code (ex: T-Mobile USA has a MNC 310800) Usually operators have only one MNC, but in large countries, like the USA, an operator may have different MNCs in different regions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant