The problem of a telephony provider being audited annually by the Federal Network Agency and having to ensure that all number ranges in all countries are billed correctly is a complex challenge. This problem is particularly challenging because each country has implemented its own standard for publishing this information.
Each country has different number ranges and numbers formats. This ranges from different number lengths to specific prefixes for international calls. Each telephony provider must ensure that they apply the correct tariffs and billing rules for each country.
The goal is to have a list to automatically receive and retrieve the changes of the updates on the ITU page for the number ranges of all countries.
- Begin by cloning the repository to a designated local directory on your machine.
git clone https://github.com/jcivitel/py_itu_change.git
- Launch a Command Prompt (CMD) and navigate to the specified directory. Once in the directory, execute the following command:
python -m venv venv
- Once the virtual Python environment has been successfully created, it is now possible to execute the script by the following steps:
. venv/bin/activate
pip install -r requirements.txt
python3 py_itu_change.py <date>
./venv/Scripts/activate.bat
pip install -r requirements.txt
python3 py_itu_change.py <date>
Note
Note that you must replace <date>
with the date (YYYY-MM-DD
) from which you want to filter. All updates to the publications after this date will be taken into account.
python3 py_itu_change.py 2023-10-01
Country: Bahrain, Update Date: 2024-01-31
Country: Solomon Islands, Update Date: 2024-04-26
Country: Iridium, Update Date: 2023-09-01
Country: Qatar, Update Date: 2023-05-12
Country: Thailand, Update Date: 2024-06-28
Country: Saint Pierre and Miquelon, Update Date: 2024-08-30
Country: Gabon, Update Date: 2024-03-28
Country: Iran (Islamic Republic of), Update Date: 2024-03-28
Country: Morocco, Update Date: 2024-03-13
Country: Burundi, Update Date: 2023-11-29
Country: Slovakia, Update Date: 2023-07-11
Country: Netherlands, Update Date: 2024-07-09
Country: Seychelles, Update Date: 2024-07-12
Progress: |############--------------------------------------| 24.90%
-------------------------- ---------- --------------------------------------
Country Date Link
-------------------------- ---------- --------------------------------------
Morocco 2023-11-29 https://www.itu.int/oth/T0202000090/en
Senegal 2023-11-29 https://www.itu.int/oth/T02020000B8/en
Mauritius 2023-11-13 https://www.itu.int/oth/T0202000088/en
Nigeria 2023-11-29 https://www.itu.int/oth/T020200009C/en
Uganda 2023-11-13 https://www.itu.int/oth/T02020000F1/en
Burundi 2023-11-29 https://www.itu.int/oth/T0202000022/en
Botswana 2023-11-13 https://www.itu.int/oth/T020200001C/en
Iran (Islamic Republic of) 2023-11-29 https://www.itu.int/oth/T0202000066/en
-------------------------- ---------- --------------------------------------
8 countries have new updates
Tip
You can also use the Jenkinsfile in the project to carry out regular updates.