J'ai récemment travaillé sur un projet de migration de PRI vers un sip trunking pour un environnement Cisco CallManager 8.X.
Je ferais bientôt un article sur cette configuration.
Environnement:
- Cisco CallManager Publisher
- Cisco CallManager Subscriber
- Cisco 2811 cube
- Exchange UM 2010
Le call flow est spécifique du au non support de la méthode SIP Refer par l'opérateur IP, il a était nécéssaire de positionner Exchange UM derrière le Cisco CallManager:
Exchange UM - SIP - CUCM - H.323 - Cube - SIP - Opérateur IP
Le principal problème rencontré fut une absence de train de sonnerie lors d'un transfert d'appel des réceptions automatisées Exchange UM lors d'appels entrants.
Le premier point identifié fut un mismatch au niveau des codecs:
why the ringback is failing
the following region association is defined as g729, the call originally setup as g711
region1=*****-MTL-1, region2=Default Mismatch between these regions
12:58:54.033 |ConnectionManager - wait_AuConnectRequest(41500326,41500333)
region1=*****-MTL-1, region2=Default Mismatch between these regions
12:58:54.033 |MediaManager(19232)::preCheckCapabilities, region1=*****-MTL-1, region2=Default, capCount1=5, capCount2=5|2,100,56,1.283992^192.168.190.28^*
12:58:54.033 |RegionsServer::MatchCapabilities -- kbps=8, capACount=5, capBCount=5|*^*^*
Due to this mismatch CUCM attempts to allocate an Xcoder but does not find any
savedConnRes=MTP xcoderReqd=1 CI=41500334
12:58:54.033 |MediaResourceManager::waiting_MrmAllocateXcoderResourceReq - CI=41500334, Count=1|2,100,56,1.283992^192.168.190.28^*
12:58:54.033 |MediaResourceManager::waiting_MrmAllocateXcoderResourceReq - CREATING CHILD USING MRGL LIST|2,100,56,1.283992^192.168.190.28^*
12:58:54.033 |MRM::convertScmStringToStdString ANN_SUB-PUB:CONF_SUB-PUB:MOH_SUB-PUB:MTP_SUB|2,100,56,1.283992^192.168.190.28^*
12:58:54.033 |MRM::getXcodeDeviceGivenMrgl|2,100,56,1.283992^192.168.190.28^*
12:58:54.033 |MRM::getXcodeDeviceGivenMrgl GETTING XCODE FROM DEFAULT LIST|2,100,56,1.283992^192.168.190.28^*
12:58:54.033 |MediaResourceManager::sendAllocationResourceErr - ERROR - no transcoder device configured
12:58:54.034 |MediaCoordinator - wait_AuConnectErrorInd|2,100,56,1.283992^192.168.190.28^*
12:58:54.034 |MediaCoordinator - wait_AuConnectErrorInd - removing MediaManager(19232) from connection list|2,100,56,1.283992^192.168.190.28^*
12:58:54.034 |ConnectionManager - wait_AuConnectErrorInd(41500326,41500333)|2,100,56,1.283992^192.168.190.28^*
12:58:54.034 |ConnectionManager - deleteMediaInfoEntry(41500326): ENTRY DELETED, size=2|2,100,56,1.283992^192.168.190.28^*
12:58:54.034 |ConnectionManager - deleteMediaInfoEntry(41500333): ENTRY DELETED, size=1
At the same time the Ann is unallocated
12:58:54.034 |MRM::waiting_MrmDeallocateAnnResourceReq- Deallocate received for MRM TransactionId= 41500333|2,100,56,1.283992^192.168.190.28^*
12:58:54.034 |MRM::updateAnnCounter devName=ANN_2, countChange=-1
Résolution:
make sure that the Region association between ANN and H323 and SIP trunks is defined a G711, in order to not rely on Xcoder Allocation
region1=*****-MTL-1, region2=Default
Also restart the IPVMS
region1=*****-MTL-1, region2=Default
Malheureusement, cela n'a pas résolu le problème.
Le deuxième point soulevé est un problème de profil réseau local:
Line 1686: 16:42:15.681 | CANNAudio::GetAnnouncement() Ann(Alertingtone) AnnRingBack.wav(NW) AnnRingBack.wav(NW)
Line 1686: 16:42:15.681 | CANNAudio::GetAnnouncement() Ann(Alertingtone) AnnRingBack.wav(NW) AnnRingBack.wav(NW)
Line 1687: 16:42:15.681 |-->CANNAudio::isFileExist(AnnRingBack.wav)
Line 1688: 16:42:15.681 | CANNAudio::isFileExist(AnnRingBack.wav) isUserLocale(F) UserLocale(2) nwLocale(6) isCustom(F)
Line 1689: 16:42:15.681 | CANNAudio::isFileExist(AnnRingBack.wav) *ERROR* Announcement network locale not found ID(6)
Line 1690: 16:42:15.681 |<--CANNAudio::isFileExist(AnnRingBack.wav)
Line 1691: 16:42:15.681 | CANNAudio::GetAnnouncement() Ann file missing (AnnRingBack.wav) UserLocale(2) Country(6)
Line 11349: 16:43:06.345 | CANNAudio::GetAnnouncement() Ann(Alertingtone) AnnRingBack.wav(NW) AnnRingBack.wav(NW)
Line 11349: 16:43:06.345 | CANNAudio::GetAnnouncement() Ann(Alertingtone) AnnRingBack.wav(NW) AnnRingBack.wav(NW)
Line 11350: 16:43:06.345 |-->CANNAudio::isFileExist(AnnRingBack.wav)
Line 11351: 16:43:06.345 | CANNAudio::isFileExist(AnnRingBack.wav) isUserLocale(F) UserLocale(2) nwLocale(6) isCustom(F)
Line 11352: 16:43:06.345 | CANNAudio::isFileExist(AnnRingBack.wav) *ERROR* Announcement network locale not found ID(6)
Line 11353: 16:43:06.345 |<--CANNAudio::isFileExist(AnnRingBack.wav)
Line 11354: 16:43:06.345 | CANNAudio::GetAnnouncement() Ann file missing (AnnRingBack.wav) UserLocale(2) Country(6)
Résolution:
Dans notre cas de figure, le paramètre "network locale" est "Canada".
En changeant pour "Etats-Unis" le paramètre "Default Network locale" dans Enterprise Parameters et au niveau de la gateway, bingo, cela fonctionne correctement.
En espérant que cela peut aider.