يقدم هذا المستند نموذجا لتكوين خطط الطلب القابلة للتطوير لشبكة VoIP باستخدام قواعد ترجمة IOS. عند قيامك بتثبيت شبكات الصوت والبيانات المدمجة، توجد مشكلة واحدة تتم مواجهتها بشكل متكرر وهي كيفية إدارة خطط الترقيم للنطاقات الفردية في مواقع مختلفة. واعتمادا على نوع Exchange ومعايير بروتوكول إرسال الإشارات وحتى الموقع، يمكن لمزود الخدمة تمرير نطاقات أرقام مماثلة إلى معدات المشترك في كل موقع بعيد. إذا تم توجيه هذه المكالمات مرة أخرى إلى موقع مركزي، فقد يكون هناك تداخل في الأرقام المسماة التي تنشأ من كل موقع من المواقع البعيدة. بما أن PBX يقوم باتخاذ قرار التوجيه بناء على أرقام فريدة تسمى، فقد يؤدي ذلك إلى حدوث مشاكل في قوائم انتظار توزيع المكالمات التلقائي (ACD) على أنظمة التبادل الفرعي الخاصة (PBX) . على سبيل المثال، قد يلزم توجيه المكالمات من كل موقع إلى مشغلين معينين يتحدثون اللغة المحلية من حيث نشأت المكالمة. إذا تداخل الأرقام المستلمة من كل موقع، فلا توجد أي طريقة لتعريف أصل مكالمة، وبالتالي فإن PBX غير قادر على توجيه المكالمة إلى قائمة انتظار ACD الصحيحة.
قد يتم تزويد بعض المواقع البعيدة بنطاق أرقام فردية يتكون من 2 أرقام بينما قد تحتوي المواقع الأخرى على نطاقات فردية تتكون من 3 أو 4 أرقام، لذلك يمكن أن تكون الأرقام المسماة من [00-99] إلى [0000-999]. مع وجود نطاقات الأرقام هذه، سيحتاج موجه الموقع الرئيسي إلى تكوينات لمعالجة خطط الترقيم المكونة من رقمين و 3 و 4 أرقام. قد يضيف هذا إلى التعقيد الإجمالي لتكوين الموجه.
يكمن الحل لهذه المشاكل في إستخدام قواعد ترجمة أرقام IOS في كل موقع بعيد لترتيب أرقام لنطاق الأرقام الواردة من شبكة الهاتف. ومن ثم، يؤدي ذلك إلى إنشاء خطة ترقيم قياسية عبر شبكة العميل والسماح بإضافة المواقع الجديدة تدريجيا دون إجراء تغييرات كبيرة على باقي الشبكة.
ملاحظة: تتيح قواعد ترجمة أرقام Cisco IOS للمستخدمين معالجة أرقام تعريف الرقم التلقائي (ANI) لمكالمة وهي أرقام الاتصال أو خدمة التعرف على الرقم المطلوب (DNIS) الخاصة بمكالمة ما وهي الرقم المستدعى. وبشكل إختياري، يمكن أيضا تعديل أنواع الترقيم لهذه الحقول باستخدام قواعد الترجمة.
وفي دراسة الحالة المقدمة في هذه الوثيقة، يتمثل الهدف في توحيد خطة الترقيم. وتتضمن الاقتراحات ما يلي:
إستخدام رمز وصول خط الاتصال.
إستخدام رمز موقع (منطقة). هذه طريقة سهلة لإنشاء رمز موقع فريد لاستخدام رمز منطقة شبكة هاتف محولة عامة (PSTN) للموقع البعيد.
قم بتوسيع (إخراج البيانات) الرقم الأصلي المستدعى باستخدام أصفار بادئة لإنتاج رقم امتداد من 4 خانات.
يجب أن يكون القراء على علم بما يلي:
تكوين الصوت و POTS للطلب النظير
تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج والمكونات المادية التالية:
الموجهات Cisco 3660 و 7206VXR التي تشغل IOS، الإصدار 12.3(4)
تم إدخال قواعد ترجمة IOS في الإصدار 12.07XK1 IOS وهي متوفرة على جميع منصات Cisco التي تدعم منافذ الصوت.
تم إنشاء المعلومات المُقدمة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كنت تعمل في شبكة مباشرة، فتأكد من فهمك للتأثير المحتمل لأي أمر قبل استخدامه.
للحصول على مزيد من المعلومات حول اصطلاحات المستندات، ارجع إلى اصطلاحات تلميحات Cisco التقنية.
يستخدم هذا القسم دراسة الحالة: مثال "Calcutta (موقع بعيد)" لشرح تنفيذ قواعد الترجمة. راجع الرسم التخطيطي للشبكة للحصول على مزيد من المعلومات.
في مثالنا، يحتوي الموقع البعيد (Calcutta) على خط اتصال E1 الذي يمر بسلسلة طلب من 3 أرقام في النطاق من 000 إلى 999. يقبل موجه الموقع الرئيسي المكالمات من مواقع بعيدة متعددة قد تغطي أيضا النطاق من 000 إلى 999.
يتم إستخدام قواعد الترجمة في موجه Calcutta لترميز رمز موقع يحدد بشكل فريد المكالمات من Calcutta (استنادا إلى الرقم المستدعي) إلى PBX الموقع الرئيسي. على سبيل المثال، يتم إستخدام سلسلة طلب رمز المنطقة "033" كرمز موقع. وبالإضافة إلى ذلك، تتم إضافة رقم رمز وصول خط الاتصال للسماح بتحديد خطوط اتصال معينة في موجه الموقع الرئيسي الوجهة. توضح هذه العبارات إجراء الترجمة في موجه كالكوتا:
يسمى الرقم الأصلي (أي 3 أرقام في النطاق من 000 إلى 999)— ...
ترجمة الرقم - "1033... "الرقم "1": رمز وصول خط الاتصال، الأرقام "033": رمز الموقع
عند إجراء مكالمة من موقع Calcutta، يقوم موجه Calcutta بتطبيق قاعدة الترجمة المطبقة في منفذ POTS الصوتي الخاص به . يمكنك التحقق من هذا في تكوين المنفذ الصوتي 1/0:1 لموجه الكالكوتا.
يتم تطبيق قاعدة الترجمة على منفذ الصوت حيث يأتي الاستدعاء إلى الموجه. عندما تأتي مكالمة من شبكة الهاتف نحو الموجه، يتم ترجمة الرقم المستدعي قبل مطابقته على أي نظير من نظراء الطلب.
تطبق قاعدة الترجمة على النحو التالي لموقع كلكتا للرقم المطلوب - 987 على الموقع الرئيسي.
في الرقم المسمى ب 3 أرقام- 987، يتم أخذ الرقم الأول- 9 من ال LHS (الجانب الأيسر) ومقارنته في قاعدة الترجمة لاستبدال الأرقام.
رقم الاستبدال ل 9 في قاعدة الترجمة هو - 103309، يتم إستبدال هذا الرقم لأول رقم 9.
بعد إستبدال أول رقم 9 ب 103309، يتم إضافة الخانتين المتبقيين - 87 إلى الرقم 103309 الذي تم إستبداله والذي يصبح 10330987، ويتم توجيه المكالمة إلى نظير طلب VoIP كنمط الوجهة - 10330... تطابقات.
يلزم دمج موقعين آخرين بعيدين في الشبكة. ويستخدم موقع نيو دلهى نطاقا أصليا من 2 خانات بينما يستخدم موقع تشيناى نطاقا أصليا من 4 خانات. من خلال تعليق مسبق لرمز وصول خط اتصال ورمز موقع للرقم المسمى، لديك الآن خطة طلب كما يلي:
رمز وصول/موقع خط الاتصال هذا... | ...يمثل خطة الطلب هذه |
---|---|
" 1011.. " | رقم واحد من 2 خانات مع رمز المنطقة 011 |
" 1033... " | رقم أصلي من 3 أرقام مع رمز منطقة 033 |
"1044.... " | رقم أصلي من 4 أرقام مع رمز منطقة 044 |
تتكون خطة الطلب هذه من أرقام من 6 و 7 و 8 أرقام، بحيث يمكن معايرتها عن طريق إضافة الأرقام الأصلية المسماة إلى أصفار بادئة لتوفير رمز وصول من 1 أرقام ورمز موقع من 3 أرقام وامتداد من 4 أرقام:
رمز الموقع/ الوصول إلى خط الاتصال هذا... | ...ترجمت إلى |
---|---|
" 1011.. " | " 101100.. " |
" 1033... " | " 10330.. " |
"1044.... " | "1044...." |
أصبحت خطة الأرقام في بوابة/موجه الموقع الرئيسي الآن مكونة من 8 أرقام متناسقة: (رمز وصول خط الاتصال المكون من 1 أرقام ورمز الموقع المكون من 3 أرقام ورقم مكون من 4 أرقام يسمى الرقم المضاف مع أصفار بادئة). بمجرد وصول المكالمة إلى بوابة/موجه الموقع الرئيسي، يتم نزع رمز الوصول ويتم إرسال الأرقام السبعة التالية إلى PBX.
في دراسة الحالة هذه، هناك ثلاثة مواقع بعيدة (نيودلهي وكالكوتا وتشيناي) تقوم بتوجيه مكالمات بروتوكول VoIP إلى مركز مكالمات الموقع الرئيسي. يتطلب العميل وجود نظام يقوم بتوجيه المكالمات من المواقع البعيدة فقط إلى الموقع الرئيسي. لا يوجد أي اعتماد للمكالمات المرتجعة من الموقع الرئيسي إلى المواقع البعيدة. تحتوي بوابة/موجه الموقع الرئيسي على 4 خطوط اتصال تتصل ب PBX لمركز الاتصال.
ملاحظة: للعثور على معلومات إضافية حول الأوامر المستخدمة في هذا المستند، أستخدم أداة بحث الأوامر (للعملاء المسجلين فقط).
يستخدم هذا المستند إعداد الشبكة الموضح في الرسم التخطيطي هنا:
يستخدم هذا المستند التكوينات الموضحة هنا:
نيودلهي (نطاق فردي من خانتين) |
---|
!--- Only relevant "IOS translation rule" output is presented ! translation-rule 1 !-- The "1" above is the tag for the set. rule 0 ^0. 1011000 rule 1 ^1. 1011001 rule 2 ^2. 1011002 rule 3 ^3. 1011003 rule 4 ^4. 1011004 rule 5 ^5. 1011005 rule 6 ^6. 1011006 rule 7 ^7. 1011007 rule 8 ^8. 1011008 rule 9 ^9. 1011009 ! !-- These rules replace the first digit of a 2-digit number with the corresponding !-- translation. The router looks for a 2-digit number starting with a leading [0-9]. !-- The caret, "^" ensures the match only happens at the start of the digit string !-- rather than any occurrence in a digit string. This ensures the router makes the !-- translation only for the leading digits. By default, if an explicit match is made !-- on a digit (in this case the first digit) the router replaces it with the new !-- digits. Therefore, to keep the original numbering, the matched digit needs to be !-- replaced with the same digit at the end of the modified string. Once the call !-- comes in, the called number prepended with 101100 followed by the !-- original 2 digits. ! voice-port 1/0:1 translate called 1 cptone IN compand-type a-law ! !-- The translation rule is applied to the voice port where the !-- call comes in to the router. When a call comes in from the !-- telephone network towards the router, the called number !-- is translated before it is matched on any dial peers. ! dial-peer voice 100 voip destination-pattern 101100.. session target ipv4:main site IP address ip precedence 5 dtmf-relay h245-alphanumeric ! !-- The VoIP dial peer needs to be configured to match on the new numbering plan |
كلكتا (نطاق إنديالي مكون من 3 أرقام) |
---|
!--- Only relevant output is presented ! translation-rule 1 rule 0 ^0.. 103300 rule 1 ^1.. 103301 rule 2 ^2.. 103302 rule 3 ^3.. 103303 rule 4 ^4.. 103304 rule 5 ^5.. 103305 rule 6 ^6.. 103306 rule 7 ^7.. 103307 rule 8 ^8.. 103308 rule 9 ^9.. 103309 ! !-- The router looks for a 3-digit called number in the range 000 - 999. It !-- then prepends 10330 to this number before making a match on any other dial peers. !-- Note: rules are executed before incoming POTS dial peer matching takes place. ! voice-port 1/0:1 translate called 1 !-- The translation rule is applied to the voice port: cptone IN compand-type a-law ! dial-peer voice 100 voip destination-pattern 10330... session target ipv4:main site IP address ip precedence 5 dtmf-relay h245-alphanumeric ! !-- The VoIP dial peer needs to be configured to match on the new numbering plan. |
تشيناي (نطاق أصلي من 4 خانات) |
---|
! translation-rule 11 rule 0 ^0... 10440 rule 1 ^1... 10441 rule 2 ^2... 10442 rule 3 ^3... 10443 rule 4 ^4... 10444 rule 5 ^5... 10445 rule 6 ^6... 10446 rule 7 ^7... 10447 rule 8 ^8... 10448 rule 9 ^9... 10449 ! !-- The router looks for a 4-digit called !-- number in the range 0000 - 9999. !-- It then prepends 1044 to this number !-- before making a match on any other dial peers. ! voice-port 1/0:1 translate called 1 cptone IN compand-type a-law ! !-- The translation rule is applied to the voice port: dial-peer voice 100 voip destination-pattern 1044…. session target ipv4:main site IP address ip precedence 5 dtmf-relay h245-alphanumeric ! !-- The VoIP dial peer needs to be configured to match on the new numbering plan |
موقع رئيسي |
---|
!-- By default, in POTS dial peers, matched digits get stripped off after a dial !-- peer is matched. Then, the remaining digits are outputed to the PSTN/PBX. dial-peer voice 20 pots description - Call Center voice port 2/0 destination-pattern 1....... port 2/0:1 ! dial-peer voice 21 pots description - Call Center voice port 2/1 destination-pattern 1....... port 2/1:1 ! dial-peer voice 30 pots description - Call Center voice port 3/0 destination-pattern 1....... port 3/0:1 ! dial-peer voice 31 pots description - Call Center voice port 3/1 destination-pattern 1....... port 3/1:1 ! !-- The trunk access code (leading 1) can be used to route the call out the Main Site !-- router towards the Call-Center PBX. This digit is stripped off and the following !-- 7 digits are sent to the external PBX. A single dial peer for each active voice !-- port on the main site gateway router directs calls from the remote sites to !-- the PBX. |
ملاحظة: بما أن الموقع الرئيسي PBX لا يتطلب رمز الوصول إلى خط الاتصال، فإن موجه الموقع الرئيسي سينزعه. لذلك، يتم تحديد الاستدعاء للموقع الرئيسي PBX برمز موقع مكون من 3 أرقام وملحق من 4 أرقام. قد يحتاج PBX إلى بعض تغييرات التكوين لمطابقة خطة الترقيم هذه، ولكن الميزة هي أنه يمكنه التعرف على رمز الموقع من الرقم المستدعى وتوجيه المكالمة إلى قائمة انتظار ACD معينة تم إعدادها لكل موقع. عندما تأتي مكالمة من منطقة وطنية معينة، فإنها موجهة إلى العملاء الذين يتكلمون اللغة المحلية.
ملاحظة: للحصول على مزيد من المعلومات حول الأوامر، ارجع إلى أداة بحث الأوامر (للعملاء المسجلين فقط).
يوفر هذا القسم معلومات يمكنك إستخدامها للتأكد من أن التكوين يعمل بشكل صحيح.
يتم دعم بعض أوامر العرض بواسطة أداة مترجم الإخراج (العملاء المسجلون فقط)، والتي تتيح لك عرض تحليل إخراج أمر العرض.
إختبار رقم إدخال قاعدة الترجمة-name-tag - يستخدم لاختبار تنفيذ قواعد الترجمة على علامة اسم محددة. يتم وصف الضريبة الخاصة بهذا الأمر في هذا الجدول:
بناء جملة | الوصف |
---|---|
name-tag
|
رقم العلامة الذي تتم الإشارة من خلاله إلى مجموعة القواعد. |
input-number
|
سلسلة إدخال الأرقام التي يتم إجراء مطابقة النموذج لها. |
إظهار قاعدة الترجمة [name-tag]—المستخدمة لعرض محتويات القواعد التي تم تكوينها لاسم ترجمة محدد. يتم وصف الصياغة لهذا الأمر في هذا الجدول:
بناء جملة | الوصف |
---|---|
name-tag
|
(إختياري) رقم العلامة الذي تتم الإشارة من خلاله إلى مجموعة القواعد |
تم التقاط هذا الإخراج من موجه نيودلهي الذي يظهر قواعد الترجمة المطبقة أثناء الاتصال من موقع نيودلهي.
نيودلهي الإنتاج |
---|
!-- It is possible to confirm the translation rules are working: ! ! NewDelhi# test translation-rule 1 99 !-- Original called number is "99" The replaced number: 10110099 !-- Translated to 8 digits NewDelhi# show translation-rule 1 Translation rule address: 0x64ADC2A8 Tag name: 1 Translation rule in_used 1 **** Xrule rule table ******* Rule : 0 in_used state: 1 Match pattern: ^0. Sub pattern: 1011000 **** Xrule rule table ******* Rule : 1 in_used state: 1 Match pattern: ^1. Sub pattern: 1011001 **** Xrule rule table ******* Rule : 2 in_used state: 1 Match pattern: ^2. Sub pattern: 1011002 **** Xrule rule table ******* Rule : 3 in_used state: 1 Match pattern: ^3. Sub pattern: 1011003 **** Xrule rule table ******* Rule : 4 in_used state: 1 Match pattern: ^4. Sub pattern: 1011004 **** Xrule rule table ******* Rule : 5 in_used state: 1 Match pattern: ^5. Sub pattern: 1011005 **** Xrule rule table ******* Rule : 6 in_used state: 1 Match pattern: ^6. Sub pattern: 1011006 **** Xrule rule table ******* Rule : 7 in_used state: 1 Match pattern: ^7. Sub pattern: 1011007 **** Xrule rule table ******* Rule : 8 in_used state: 1 Match pattern: ^8. Sub pattern: 1011008 **** Xrule rule table ******* Rule : 9 in_used state: 1 Match pattern: ^9. Sub pattern: 1011009 NewDelhi# |
يوفر هذا القسم معلومات يمكنك استخدامها لاستكشاف أخطاء التكوين وإصلاحها.
ملاحظة: قبل إصدار أوامر تصحيح الأخطاء، راجع المعلومات المهمة في أوامر تصحيح الأخطاء.
تصحيح أخطاء الترجمة {detail | min} — يستخدم لتصحيح أخطاء تتبع الترجمة الرقمية باستخدام الخيارات الموضحة في هذا الجدول:
خيار | الوصف |
---|---|
detail |
تمكين تتبع تصحيح مفصل. |
min |
تمكين الحد الأدنى لتتبع تصحيح الأخطاء. |
نيودلهي الإنتاج |
---|
NewDelhi#debug translation detail xrule detail tracing is enabled *Apr 4 04:52:57.124: xrule_checking *Apr 4 04:52:57.124: xrule_checking calling , called *Apr 4 04:52:57.124: xrule_checking peer_tag 0, direction 1, protocol 6 *Apr 4 04:52:57.124: xrule_translation *Apr 4 04:52:57.124: xrule_translation callednumber , strlen 0 *Apr 4 04:52:57.124: xrule_translation callednumber null xruleCalledTag=1 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 0, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^0. *Apr 4 04:52:57.124: dpMatchString match_tmp 0, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 0,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 0 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 1, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^1. *Apr 4 04:52:57.124: dpMatchString match_tmp 1, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 1,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 1 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 2, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^2. *Apr 4 04:52:57.124: dpMatchString match_tmp 2, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 2,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 2 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 3, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^3. *Apr 4 04:52:57.124: dpMatchString match_tmp 3, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 3,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 3 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 4, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^4. *Apr 4 04:52:57.124: dpMatchString match_tmp 4, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 4,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 4 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 5, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^5. *Apr 4 04:52:57.124: dpMatchString match_tmp 5, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 5,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 5 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 6, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^6. *Apr 4 04:52:57.124: dpMatchString match_tmp 6, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 6,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 6 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 7, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^7. *Apr 4 04:52:57.124: dpMatchString match_tmp 7, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 7,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 7 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 8, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^8. *Apr 4 04:52:57.124: dpMatchString match_tmp 8, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 8,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 8 *Apr 4 04:52:57.124: xrule_translation called Callparms Numpertype 0x81, match_type 0x0 *Apr 4 04:52:57.124: xrule_translation Xrule index 9, Numpertype 0x9 *Apr 4 04:52:57.124: dpMatchString, target_number null, match_number ^9. *Apr 4 04:52:57.124: dpMatchString match_tmp 9, match_len 1 *Apr 4 04:52:57.124: dpMatchString beginning_replace 1, match_tmp 9,target null *Apr 4 04:52:57.124: dpMatchString: len 4 *Apr 4 04:52:57.124: xrule_translation there was no match index 9 *Apr 4 04:52:57.124: xrule_translation Return rc = -4 any_match 0 *Apr 4 04:52:57.124: xrule_checking Return rc = -4 *Apr 4 04:52:59.396: xrule_checking *Apr 4 04:52:59.396: xrule_checking calling , called 9 *Apr 4 04:52:59.396: xrule_checking peer_tag 0, direction 1, protocol 6 *Apr 4 04:52:59.396: xrule_translation *Apr 4 04:52:59.396: xrule_translation callednumber 9, strlen 1 *Apr 4 04:52:59.396: xrule_translation callednumber 9 xruleCalledTag=1 *Apr 4 04:52:59.396: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.396: xrule_translation Xrule index 0, Numpertype 0x9 *Apr 4 04:52:59.396: dpMatchString, target_number 9, match_number ^0. *Apr 4 04:52:59.396: dpMatchString match_tmp 0, match_len 1 *Apr 4 04:52:59.396: dpMatchString beginning_replace 1, match_tmp 0,target 9 *Apr 4 04:52:59.396: dpMatchString: len 1 *Apr 4 04:52:59.396: xrule_translation there was no match index 0 *Apr 4 04:52:59.396: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.396: xrule_translation Xrule index 1, Numpertype 0x9 *Apr 4 04:52:59.396: dpMatchString, target_number 9, match_number ^1. *Apr 4 04:52:59.396: dpMatchString match_tmp 1, match_len 1 *Apr 4 04:52:59.396: dpMatchString beginning_replace 1, match_tmp 1,target 9 *Apr 4 04:52:59.396: dpMatchString: len 1 *Apr 4 04:52:59.396: xrule_translation there was no match index 1 *Apr 4 04:52:59.396: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.396: xrule_translation Xrule index 2, Numpertype 0x9 *Apr 4 04:52:59.396: dpMatchString, target_number 9, match_number ^2. *Apr 4 04:52:59.396: dpMatchString match_tmp 2, match_len 1 *Apr 4 04:52:59.396: dpMatchString beginning_replace 1, match_tmp 2,target 9 *Apr 4 04:52:59.396: dpMatchString: len 1 *Apr 4 04:52:59.396: xrule_translation there was no match index 2 *Apr 4 04:52:59.396: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.396: xrule_translation Xrule index 3, Numpertype 0x9 *Apr 4 04:52:59.396: dpMatchString, target_number 9, match_number ^3. *Apr 4 04:52:59.396: dpMatchString match_tmp 3, match_len 1 *Apr 4 04:52:59.396: dpMatchString beginning_replace 1, match_tmp 3,target 9 *Apr 4 04:52:59.396: dpMatchString: len 1 *Apr 4 04:52:59.396: xrule_translation there was no match index 3 *Apr 4 04:52:59.396: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.396: xrule_translation Xrule index 4, Numpertype 0x9 *Apr 4 04:52:59.396: dpMatchString, target_number 9, match_number ^4. *Apr 4 04:52:59.396: dpMatchString match_tmp 4, match_len 1 *Apr 4 04:52:59.396: dpMatchString beginning_replace 1, match_tmp 4,target 9 *Apr 4 04:52:59.396: dpMatchString: len 1 *Apr 4 04:52:59.396: xrule_translation there was no match index 4 *Apr 4 04:52:59.396: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.396: xrule_translation Xrule index 5, Numpertype 0x9 *Apr 4 04:52:59.396: dpMatchString, target_number 9, match_number ^5. *Apr 4 04:52:59.396: dpMatchString match_tmp 5, match_len 1 *Apr 4 04:52:59.396: dpMatchString beginning_replace 1, match_tmp 5,target 9 *Apr 4 04:52:59.396: dpMatchString: len 1 *Apr 4 04:52:59.396: xrule_translation there was no match index 5 *Apr 4 04:52:59.400: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.400: xrule_translation Xrule index 6, Numpertype 0x9 *Apr 4 04:52:59.400: dpMatchString, target_number 9, match_number ^6. *Apr 4 04:52:59.400: dpMatchString match_tmp 6, match_len 1 *Apr 4 04:52:59.400: dpMatchString beginning_replace 1, match_tmp 6,target 9 *Apr 4 04:52:59.400: dpMatchString: len 1 *Apr 4 04:52:59.400: xrule_translation there was no match index 6 *Apr 4 04:52:59.400: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.400: xrule_translation Xrule index 7, Numpertype 0x9 *Apr 4 04:52:59.400: dpMatchString, target_number 9, match_number ^7. *Apr 4 04:52:59.400: dpMatchString match_tmp 7, match_len 1 *Apr 4 04:52:59.400: dpMatchString beginning_replace 1, match_tmp 7,target 9 *Apr 4 04:52:59.400: dpMatchString: len 1 *Apr 4 04:52:59.400: xrule_translation there was no match index 7 *Apr 4 04:52:59.400: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.400: xrule_translation Xrule index 8, Numpertype 0x9 *Apr 4 04:52:59.400: dpMatchString, target_number 9, match_number ^8. *Apr 4 04:52:59.400: dpMatchString match_tmp 8, match_len 1 *Apr 4 04:52:59.400: dpMatchString beginning_replace 1, match_tmp 8,target 9 *Apr 4 04:52:59.400: dpMatchString: len 1 *Apr 4 04:52:59.400: xrule_translation there was no match index 8 *Apr 4 04:52:59.400: xrule_translation called Callparms Numpertype 0x0, match_type 0x0 *Apr 4 04:52:59.400: xrule_translation Xrule index 9, Numpertype 0x9 *Apr 4 04:52:59.400: dpMatchString, target_number 9, match_number ^9. *Apr 4 04:52:59.400: dpMatchString match_tmp 9, match_len 1 *Apr 4 04:52:59.400: dpMatchString beginning_replace 1, match_tmp 9,target 9 *Apr 4 04:52:59.400: dpMatchString 0. target 9,match_tmp 9,match_len 1 *Apr 4 04:52:59.400: replace_string *Apr 4 04:52:59.400: replace_string match ^9., replace 1011009 *Apr 4 04:52:59.400: translation_format replace_rule ^9., strip_proceeding 0 *Apr 4 04:52:59.400: replace_string match_tmp ^9., strip_proceeding 0 *Apr 4 04:52:59.400: replace_string match_tmp 9 *Apr 4 04:52:59.400: replace_string direction 1, callparty 2 *Apr 4 04:52:59.400: replace_string direction 1, callparty 2, target 9 *Apr 4 04:52:59.400: replace_string match_tmp 9,replace 1011009 *Apr 4 04:52:59.400: replace_string0.replace19,target,current,match_tmp *Apr 4 04:52:59.400: replace_string0.1 compare_len 1,match_len 1 *Apr 4 04:52:59.400: replace_string 3. replace1 9, compare_len 1 *Apr 4 04:52:59.400: replace_string 4. replace1 1,compare_len 0,replace 011009 *Apr 4 04:52:59.400: replace_string 4. replace1 10,compare_len -1,replace 11009 *Apr 4 04:52:59.400: replace_string 4. replace1 101,compare_len -2,replace 1009 *Apr 4 04:52:59.400: replace_string 4. replace1 1011,compare_len -3,replace 009 *Apr 4 04:52:59.400: replace_string 4. replace1 10110,compare_len -4,replace 09 *Apr 4 04:52:59.400: replace_string 4. replace1 101100,compare_len -5,replace 9 *Apr 4 04:52:59.400: replace_string 4. replace1 1011009,compare_len -6,replace *Apr 4 04:52:59.400: replace_string 5. replace1 1011009, compare_len -6,match_l en 1 *Apr 4 04:52:59.400: replace_string 6. replace1 1011009,compare_len -6,current *Apr 4 04:52:59.400: replace_string buffer 1011009 *Apr 4 04:52:59.400: xrule_translation index 9,xrule_number 1011009, callparty 2 *Apr 4 04:52:59.400: xrule_translation Return rc = 0 any_match 0 *Apr 4 04:52:59.400: xrule_checking Return rc = 0 *Apr 4 04:53:00.156: xrule_checking *Apr 4 04:53:00.156: xrule_checking calling 4444, called 10110099 *Apr 4 04:53:00.156: xrule_checking peer_tag 100, direction 2, protocol 0 *Apr 4 04:53:00.156: xrule_checking Return rc = -5 NewDelhi#debug translation min *Apr 4 02:37:17.045: xrule_checking *Apr 4 02:37:17.045: xrule_translation *Apr 4 02:37:17.045: xrule_translation callednumber , strlen 0 *Apr 4 02:37:17.045: xrule_translation callednumber null xruleCalledTag=1 *Apr 4 02:37:19.457: xrule_checking *Apr 4 02:37:19.457: xrule_translation *Apr 4 02:37:19.457: xrule_translation callednumber 9, strlen 1 *Apr 4 02:37:19.457: xrule_translation callednumber 9 xruleCalledTag=1 *Apr 4 02:37:19.457: dpMatchString 0. target 9,match_tmp 9,match_len 1 *Apr 4 02:37:19.457: replace_string *Apr 4 02:37:19.461: replace_string0.replace19,target,current,match_tmp *Apr 4 02:37:19.461: replace_string0.1 compare_len 1,match_len 1 *Apr 4 02:37:19.461: replace_string 3. replace1 9, compare_len 1 *Apr 4 02:37:19.461: replace_string 4. replace1 1,compare_len 0,replace 011009 *Apr 4 02:37:19.461: replace_string 4. replace1 10,compare_len -1,replace 11009 *Apr 4 02:37:19.461: replace_string 4. replace1 101,compare_len -2,replace 1009 *Apr 4 02:37:19.461: replace_string 4. replace1 1011,compare_len -3,replace 009 *Apr 4 02:37:19.461: replace_string 4. replace1 10110,compare_len -4,replace 09 *Apr 4 02:37:19.461: replace_string 4. replace1 101100,compare_len -5,replace 9 *Apr 4 02:37:19.461: replace_string 4. replace1 1011009,compare_len -6,replace *Apr 4 02:37:19.461: replace_string 5. replace1 1011009, compare_len -6,match_l en 1 *Apr 4 02:37:19.461: replace_string 6. replace1 1011009,compare_len -6,current *Apr 4 02:37:19.461: replace_string buffer 1011009 *Apr 4 02:37:19.461: xrule_translation index 9,xrule_number 1011009, callparty 2 *Apr 4 02:37:19.841: xrule_checking |