Перейти до вмісту

Приклади правил трансляції

Цей переклад зроблено автоматично і ще не вичитано. Читати англійську версію

На цій сторінці зібрано правила трансляції, про які оператори питають найчастіше. Кожне правило перевірено рушієм трансляції комутатора на наведеному прикладі номера. Вставте правило в поле CLD Translation Rule (правило трансляції CLD) або CLI Translation Rule (правило трансляції CLI) акаунта, правила автентифікації чи підключення і перевірте його на власних номерах, перш ніж на нього покладатися. Синтаксис пояснено в розділі Трансляція номерів.

Додавання, видалення або заміна префікса

Розділ «Додавання, видалення або заміна префікса»
Мета Правило Номер Результат
Видалити міжнародний префікс 00 s/^00// 00442079460123 442079460123
Видалити 00 або 011 s/^(00|011)// 01138056123456 38056123456
Додати префікс s/^/53872/ 123 53872123
Видалити + на початку s/^\+// +442079460123 442079460123
Додати +, якщо його ще немає s/^([0-9])/+\1/ 442079460123 +442079460123
Замінити +1 на 1 s/^\+1/1/ +123456789 123456789
Замінити +570 на 2222 s/^[+]570/2222/ +570123456789 2222123456789
Міжнародний формат у національний s/^44/0/ 442079460123 02079460123
Національний формат у міжнародний s/^0/44/ 02079460123 442079460123
Видалити 00, але не чіпати 000 s/^00([1-9])/\1/ 00850532166 850532166
Те саме правило, номер з 000 s/^00([1-9])/\1/ 000850532166 000850532166
Прибрати 90 після 4-символьного технічного префікса, що починається з B s/^(B...)90/\1/ B0439012345678 B04312345678
Прибрати перші п’ять цифр s/^[0-9]{5}// 666667 7

Дії залежно від довжини номера

Розділ «Дії залежно від довжини номера»
Мета Правило Номер Результат
Додати 1 до 10-значних номерів s/^(\d{10})$/1\1/ 2125550123 12125550123
Те саме правило, 11-значний номер s/^(\d{10})$/1\1/ 12125550123 12125550123
Додати 90312 до 10-значних номерів s/^(\d{10})$/90312\1/ 1234567890 903121234567890
0 і 10 цифр після нього стають 90 і цими цифрами s/^0(\d{10})$/90\1/ 01234567890 901234567890
Додати 30 до 8-значних номерів s/^(\d{8})$/30\1/ 12345678 3012345678
Доповнити 1-значний номер до 303333333X s/^(\d)$/303333333\1/ 5 3033333335
Доповнити 2-значний номер до 30333333XX s/^(\d{2})$/30333333\1/ 52 3033333352
Розгорнути 4-значний внутрішній номер до повного s/^(\d{4})$/0164828\1/ 6016 01648286016
Дописати 0000 до 7-значних номерів s/^([0-9]{7})$/\g<1>0000/ 1234567 12345670000
Залишити лише перші 7 цифр s/^([0-9]{7}).*/\1/ 1234567890 1234567
Прибрати першу цифру 11-значних номерів s/^\d(\d{10})$/\1/ 01234567890 1234567890
Прибрати 592 із 7-значних номерів s/^592(\d{4})$/\1/ 5929999 9999
Замінити CLI, коротші за 10 символів, фіксованим CLI s/^.{0,9}$/0123456789/ 601612345 0123456789
Те саме правило, 10-значний CLI s/^.{0,9}$/0123456789/ 6016123456 6016123456
Замінити будь-що завдовжки від 1 до 6 символів s/^.{1,6}$/test/ abcdeg test

Робота з кінцем номера

Розділ «Робота з кінцем номера»
Мета Правило Номер Результат
Дописати суфікс s/$/123/ 120264765 120264765123
Замінити суфікс 1110 на 1400 s/1110$/1400/ 1234561110 1234561400
Дописати 1122 до номерів вигляду 90XXX112 s/^(90\d{3}112)$/\g<1>1122/ 90666112 906661121122
Замінити CLI, що закінчується на 1234 s/^.*1234$/unknown/ 60161231234 unknown
Замінити те, що стоїть перед останніми сімома цифрами, на 90212 (перша із семи цифр — від 1 до 8) s/.*([1-8][0-9]{6})/90212\1/ 1234567890123 902127890123
Мета Правило Номер Результат
Прибрати все, що не є цифрою s/\D//g +1 (212) 555-0123 12125550123
Прибрати крапки s/\.//g 1.233.45 123345
Прибрати пробіли s/ //g 1 2 3 123
Перетворити +90 (310) 988 00 00 на цифри s/^[+]//;s/[() ]//g +90 (310) 988 00 00 903109880000

Заміна або блокування всього номера

Розділ «Заміна або блокування всього номера»

Слову на кшталт BLOCK не відповідає жодна ставка, тому дзвінок із CLD, переписаним на нього, відхиляється ще до маршрутизації. Дзвінок завершується з 403 і нічого не коштує.

Мета Правило Номер Результат
Замінити будь-який номер фіксованим 123456 999 123456
Задати CLI, коли абонент його не передав s/^$/123456/ 123456
Прибрати CLI s/^.*// 12345
Замінити CLI, що містить літери s/^.*[a-zA-Z].*$/1909/ anonymous 1909
Замінити CLI, що містить будь-що, крім цифр s/.*[^0-9].*/44444/ anonymous 44444
Додати префікс до CLI, що містить літери s/^(.*[a-zA-Z].*)$/123\1/ anonymous 123anonymous
Повторити номер двічі s/^(.*)$/\1\1/ 34565 3456534565
Замінити CLI, що містить #91 s/^.*#91.*/3444/ 124a8#9112555615 3444
Прибрати літери; якщо нічого не залишилося, використати Blank s/[a-zA-Z]//g;s/^$/Blank/ hello Blank
Те саме правило, залишаються цифри s/[a-zA-Z]//g;s/^$/Blank/ hello123 123
Блокувати номери, що містять літери s/^.*[a-zA-Z].*$/BLOCK/ B1231231236016 BLOCK
Блокувати номери, довжина яких не 12 символів s/^(?!.{12}$).*$/BLOCK/ 12345 BLOCK
Блокувати номери, що не починаються з 14 s/^(?!14).*$/BLOCK/ 15 BLOCK
Прибрати кожен CLI, що не починається з 78565 s/^(?!78565).*// 1785650000
Те саме правило, дозволений CLI s/^(?!78565).*// 785650000 785650000

Пропускати три дозволені CLI, а кожен інший CLI замінювати першим із них:

s/^(?!90312(1111111|2222222|3333333)$).*$/903121111111/

903122222222 залишається без змін; 903129999999 стає 903121111111.

Кілька замін поспіль

Розділ «Кілька замін поспіль»

Заміни одного правила виконуються одна за одною, кожна над результатом попередньої. Це дає змогу будувати умови, але також означає, що пізніша заміна може скасувати ранішу. Позначте проміжний результат символом, якого ніколи не буває в номерах, наприклад # або кількома літерами, і приберіть позначку наприкінці.

Мета Правило Номер Результат
Замінити 44 на 222, потім 2222 на 55 s/^44/222/;s/^2222/55/ 442333222111 55333222111
Поміняти місцями 111 і 222 s/^111$/#222/;s/^222$/111/;s/^#// 111 222
Те саме правило, інший номер s/^111$/#222/;s/^222$/111/;s/^#// 222 111
Залишити CLI, що починаються з 962, замінити всі інші s/^962/ZYX962/;s/^[0-9].*/96268009996/;s/^ZYX// 44123 96268009996
Те саме правило, CLI з 962 s/^962/ZYX962/;s/^[0-9].*/96268009996/;s/^ZYX// 962123 962123
Додати 011, якщо номер не починається з +1 s/^/011/;s/^011\+1/+1/ 13058946105 01113058946105
Те саме правило, номер з +1 s/^/011/;s/^011\+1/+1/ +13058946105 +13058946105
Видалити 011; залишити 1 на початку; інакше додати 1 s/^/a1/;s/^a1011//;s/^a11/1/;s/^a// 0112011555 2011555
Те саме правило, номер з 1 s/^/a1/;s/^a1011//;s/^a11/1/;s/^a// 12125550123 12125550123
Те саме правило, будь-який інший номер s/^/a1/;s/^a1011//;s/^a11/1/;s/^a// 2125550123 12125550123

У правилі обміну #222 не збігається з ^222$, тому друга заміна його не чіпає; третя прибирає позначку. Без позначки 111 став би 222, а потім знову 111.

Правила з ${R:…} дають інший результат на кожному дзвінку. Результати нижче — лише приклади.

Мета Правило Можливий результат
П’ять випадкових символів із 0, 1, 2, 3 і 6 s/.*/${R:[0-3,6]5}/ 16020
Фіксований префікс +17266 і вісім випадкових цифр s/.*/+17266${R:[0-9]8}/ +1726677763170
Прибрати 1 на початку, залишити наступні чотири цифри, додати шість випадкових цифр s/^1//;s/^(\d{4}).*$/\1/;s/$/${R:[1-9]1[0-9]4[1-9]1}/ 2026600081

Вибрати випадково один із шести фіксованих CLI: спочатку випадкова літера, потім по одній заміні на кожну літеру.

s/.*/${R:[a-f]}/;s/^a/+919995346432/;s/^b/+919995000100/;s/^c/+919846000012/;s/^d/+919746532512/;s/^e/+919783252017/;s/^f/+919230456789/

Скласти CLI з 57, блоку 300–305, 310–319 або 320–322 і семи випадкових цифр. Літери a, b, c вибирають блок, тому заміна одного блоку ніколи не збігається з результатом іншого:

s/.*/${R:[a-c]}/;s/^a$/5730${R:[0-5]}/;s/^b$/5731${R:[0-9]}/;s/^c$/5732${R:[0-2]}/;s/$/${R:[0-9]7}/

Можливий результат — 573202031518.

Пов’язані сторінки

Розділ «Пов’язані сторінки»