Welcome Message

Hello my dear reader,

Welcome to my blog, which is dedicated to Cisco technologies. On its pages we will talk about the limitless world of telephony and networking.

We will focus mostly on Cisco collaboration solutions and technologies. These are IP PBX based on Cisco Unified Communications Manager and Cisco Unified Communications Manager Express, Cisco contact centers, Cisco Voice Gateways, etc. Also, I will introduce you the education news: Cisco authorized courses, my own developed training programs, our upcoming events, online learning.

If you have any questions regarding my posts, job or activities, please feel free to ask your questions. I will try to answer them when I have time.

If you are satisfied with the content of my blog, isn’t that worth a beer or coffee? Donations help me to continue supporting the blog and creating new posts here — things for which I spend hours of my free time! Thank you very much!

Sincerely, Dmytro Benda

Saturday, September 3, 2011

Hardware Media Resources on CUCME

Hello again, my dear colleagues! :)

Finally I got some time for another blog post. As always, there was a lot of work, despite the summer period, there was a business trip to our branch in Almaty, where I delivered my traditional Cisco voice courses. And, of course, there was a long-awaited vacation. :)

The reason for writing today's message was my joint work with one of my students - Adonis Troitsky from Almaty. Recently, I assisted him in solving a problem with the registration of hardware media resources (conference bridge and transcoder) on CUCME 8.0. The Cisco Authorized Courses go into some detail about how media resources work with the "server" Cisco Call Manager (CUCM), but they don't cover how to use it with CUCME (Cisco Unified Communication Manager Express). Let's compensate the vendor's omission and cover this topic in more detail.
Media resources in Cisco terminology are hardware or software devices that perform certain processing of voice streams / sessions. Voice stream processing operations include:
  • Voice Termination - conversion of "traditional" (ie analog or digital) speech signals into VoIP packets;
  • Conferencing - combining (multiplexing) several voice streams into a conference, i.e. a conversation of several users at the same time;
  • Transcoding - converting a codec used in a voice session by one device into a codec that can be used by another device.
  • Media Termination Point (MTP) - connection ("bridging") of two voice sessions with each other, for example, in cases where the session uses the same codec, but different packetization intervals or companding laws.
  • Music on Hold - play music when one of the participatns is put on hold
  • Annunciator - playing voice messages or acoustic signals in various situations, for example, when dialing a non-existent number, etc.
Some voice stream processing operations can only be performed in hardware (Voice Termination, Transcoding), while others can only be performed in software (Music on Hold, Annunciator). Conferencing and MTP can be implemented on both hardware and software resources. The use of hardware is preferable, since software resources increase the load on the processors of the servers and voice gateways. In most cases, DSP (Digital Signal Processor) of voice gateways are used as hardware. To work as a transcoder, conference bridge or MTP DSP chips are combined into a construction called dspfarm (literally: DSP farm). A dspfarm should always register on the CUCM. The CUCM uses the SCCP signaling protocol to manage media resources.

Let's consider the configuration of hardware media resources for CUCME using the example of a conference bridge and a transcoder. To use the DSP for transcoding or conference, you must perform the following steps (here I provide an example configuration of a Cisco 2811 router with CUCME functionality, explanations are given in italics; values ​​of matching parameters are highlighted in the same color):

voice-card 0the slot number where the  DSP cards are installed
dsp services dspfarm - enable dspfarm in slot 0
!
!
interface FastEthernet0/0
 no ip address
 duplex auto
 speed auto
!
interface FastEthernet0/0.124
 - Voice VLAN subinterface
 description BR-2 Phones
 encapsulation dot1Q 124
 ip address 10.2.4.102 255.255.255.0
!
interface FastEthernet0/0.125 - Data VLAN subinterface  
 description BR-2 Data
 encapsulation dot1Q 125
 ip address 10.2.5.102 255.255.255.0
!
interface Loopback 0
description For_CUCME
ip address 10.2.250.102 255.255.255.0
!
!
sccp local FastEthernet0/0.124
-  bind local interface for SCCP signaling
sccp ccm 10.2.250.102 identifier 1 version 7.0 -  configure the CUCME IP address on which media resources will be registered, its identifier and software version
sccp - enable SCCP signaling
!
sccp ccm group 1 - configure a CCM group for media resources registration (this is similar to CUCM media resources registration)  
associate ccm 1 priority 1 - configure the priority of the CUCME for media resources registration
associate profile 2 register Transcoder - configure the name of the profile for transcoder registration
associate profile 1 register HW_CFB - configure the name of the profile for conference bridge registration
!
dspfarm profile 2 transcode - create a profile for transcoder
 codec g711ulaw - specify the codecs, which can be processed by the transcoder 
 codec g711alaw
 codec g729ar8
 codec g729abr8
 codec g729r8
 maximum sessions 2 - maximum number of transcoder sessions
 associate application SCCP - activate SCCP signaling for this profile 
 no shutdown - enable the transcoder
!
dspfarm profile 1 conference - create a profile for conference bridge
 codec g711ulawspecify the codecs, which can be used during conference  
 codec g711alaw
 codec g729ar8
 codec g729abr8
 codec g729r8
 codec g729br8
 maximum sessions 2maximum number of conference sessions
 associate application SCCPactivate SCCP signaling for this profile  
 no shutdown - enable conference bridge 
!
!
telephony-service
- CUCME settings
 conference hardwareenable hardware conference 
 sdspfarm units 2number of the profiles for this CUCME 
 sdspfarm tag 1 HW_CFB - conference profile name (must match with the name of the DSP profile)
 sdspfarm tag 2 Transcoder -  transcoder profile name (must match with the name of the DSP profile)
 max-ephones 10
 max-dn 10
 ip source-address 10.2.250.102 port 2000
- CUCME IP address

When configuring dspfarm profiles, a situation may arise when the system will not allow you to enter the required number of sessions (maximum sessions). This indicates a lack of DSP resources. It is necessary either to add DSP card to your router, or to reduce the number of traditional telephony ports (analog phones, time slots on E1 links).

After configuring, check the registration of media resources:

BR-2#sh dspfarm profile 1
Dspfarm Profile Configuration
 Profile ID = 1, Service = CONFERENCING, Resource ID = 1
 Profile Description :
 Profile Service Mode : Non Secure
 Profile Admin State : UP Profile Operation State : ACTIVE Application : SCCP   Status : ASSOCIATED Resource Provider : FLEX_DSPRM   Status : UP
 Number of Resource Configured : 2
 Number of Resource Available : 2
 Codec Configuration
 Codec : g711ulaw, Maximum Packetization Period : 30 , Transcoder: Not Required
 Codec : g711alaw, Maximum Packetization Period : 30 , Transcoder: Not Required
 Codec : g729ar8, Maximum Packetization Period : 60 , Transcoder: Not Required
 Codec : g729abr8, Maximum Packetization Period : 60 , Transcoder: Not Required
 Codec : g729r8, Maximum Packetization Period : 60 , Transcoder: Not Required
 Codec : g729br8, Maximum Packetization Period : 60 , Transcoder: Not Required

BR-2#sh dspfarm profile 2
Dspfarm Profile Configuration
 Profile ID = 2, Service = TRANSCODING, Resource ID = 2
 Profile Description :
 Profile Service Mode : Non Secure
 Profile Admin State : UP Profile Operation State : ACTIVE Application : SCCP   Status : ASSOCIATED Resource Provider : FLEX_DSPRM   Status : UP
 Number of Resource Configured : 1
 Number of Resource Available : 1
 Codec Configuration
 Codec : g711ulaw, Maximum Packetization Period : 30
 Codec : g711alaw, Maximum Packetization Period : 30
 Codec : g729ar8, Maximum Packetization Period : 60
 Codec : g729abr8, Maximum Packetization Period : 60
 Codec : g729r8, Maximum Packetization Period : 60

From the output above, it can be seen that our hardware media resources have been successfully registered with CUCME and are ready for use (Operation State: ACTIVE, SCCP Status: ASSOSIATED). Sometimes it is not possible to immediately get the registration of hardware resources, in this case, the reinitialization of the SCCP protocol helps:

BR-2#(Config) no sccp
BR-2#(Config) sccp

103 comments:

  1. Здравствуйте! Я настраивал транскодинг по Вашей инструкции. И у меня такая есть проблема.
    Подскажите пожалуйста, как можно ее решить:
    У меня на Cisco 2921 всегда при установлении вызова задействуются ресурсы DSP, даже если этого не нужно.
    Например, при использовании на обоих плечах кодеков G711а---G711а работет транскодинг:
    Вот пример:

    SMA-Mos4a-R3#sh call active voice compact

    A/O FAX T Codec type Peer Address IP R:

    Total call-legs: 4

    1 ANS T28 g711alaw VOIP P88462057001 10.200.104.11:17774

    2 ORG T28 g711alaw VOIP P78469735050 91.218.111.140:40784

    3 ORG T28 g711alaw VOIP P 10.200.15.229:2000

    5 ORG T28 g711alaw VOIP P 10.200.15.229:2000

    ReplyDelete
    Replies
    1. Добрый день,

      Попробуем разобраться, почему так может быть. Для начала хотелось бы знать, между какими телефонами совершается данный звонок (между IP телефонами или между аналоговыми)?

      Также попрошу Вас привести вывод команды show dspfarm dsp active во время звонка между телефонами. Она показывает, какие ресурсы ДСП-фермы действительно заняты.

      Delete
    2. Звонок приходит по SIP от станции SI3000 и уходит по SIP через провайдеров VoIP.
      Вот что показывается при разговоре:
      SMA-Mos4a-R3#show dspfarm dsp active
      SLOT DSP VERSION STATUS CHNL USE TYPE RSC_ID BRIDGE_ID PKTS_TXED PKTS_RXED

      0 1 28.3.1 UP 1 USED xcode 1 27 1003 1203
      0 1 28.3.1 UP 1 USED xcode 1 26 1200 1005

      Total number of DSPFARM DSP channel(s) 1

      Портов FXS и плат с PRI в Cisco нет.

      Delete
    3. Да, действительно необычная ситуация. Давайте попробуем сделать еще вот такой дебаг:

      debug voip ccapi inout

      Посмотрим, что вызывает занятие транскодера.

      Delete
    4. Дабаг получился очень больше 4096 символов и не влез в окно блога. Выложил сздесь http://narod.ru/disk/50932401001.08f10e72bcb796b3305704a71cdc0922/1.txt.html
      Посмотрите пожалуйста!

      Delete
  2. Посмотрел, и пока обнаружил вот какую штуку

    000311: May 29 08:52:40.789: ccConferenceCreate: ret1=0, codecMask1=2, bytes1=160, negot1=1, dtmf1=0
    ret2=0, codecMask2=2, bytes2=160, negot2=1, dtmf2=6,

    Обратите внимание, что разный способ передачи dtmf (dtmf1=0 a dtmf2=6). Это может быть вероятной причиной того, что постоянно используется транскодер.

    Не могли бы Вы привести конфигурацию входящего и исходящего диалпиров?

    ReplyDelete
  3. Спасибо, огромное за подсказку. Дело было действительно в разных DTMF. Прописал на входящем пире команды:
    rtp payload-type nte 101
    voice-class sip dtmf-relay force rtp-nte
    Все заработало корректно.
    Странно, что команда voice-class sip dtmf-relay force rtp-nte не выдается по подсказкам.

    ReplyDelete
  4. Добрый день. Рад, что удалось победить проблему :) Действительно, из-за разных dtmf методов может постоянно заниматься транскодер.

    Извините за задержки с ответом - веду курс на этой неделе, и все внимание уделяю слушателям.

    ReplyDelete
  5. Много раз работал с CUCME и медиаресурсами на оном и вот дожил.... Не регистрируются медиаресурсы. Точнее, MTP то регистрируется, а вот остальыне - НЕТ. no sccp/sccp - не помогает.

    ReplyDelete
  6. Добрый день. Много раз работал с CUCME и настраивал ресурсы на оном. Но вот дожил....Ресурсы не регистрируются. Точнее MTP удалось,а вот с остальными беда. no sccp/sccp не помогает

    ReplyDelete
  7. Добрый день, присылайте фрагмент конфига - посмотрим, что там у Вас получается. Всяко бывает :)

    ReplyDelete
    Replies
    1. Спасибо. Разобрался сам.

      Delete
  8. Доброе утро! :)

    Рад, что у Вас получилось. Если сочтете возможным, расскажите, пожалуйста о том, какая проблема была. Лишний опыт - всегда хорошо.

    ReplyDelete
  9. Здравствуйте, уважаемый Дмитрий!
    Не могу настроить передачу DTMF-сигналов через SIP-trunk между CUCM 7.1 и Siemens Hipath 4000. Настраивал все по примеру из Cisco.com: http://www.cisco.com/en/US/solutions/collateral/ns340/ns414/ns728/ns784/7923951.pdf
    Не работает DTMF ни при звонке с цискофонов в город через SIP-trunk, ни донабор при использовании MVA (при звонке из города на MVA-номер). Помогите, пож., разобраться, а то мозги уже закипели.
    С уважением, Сергей.

    ReplyDelete
  10. Здравствуйте, Сергей!

    Прошу извинить за задержку с ответом - не было совершенно времени и в блог я не заходил.

    Я просмотрел тот документ, который Вы прислали. В нем все написано верно. На что Вам надо обратить внимание, так это на конфигурирование MTP, потому как именно МТР отвечают за преобразование ООВ DTMF в In-band DTMF (RFC 2833). Кроме того, в сип транке надо не забыть поставить галочку MTP Required, и ОБЯЗАТЕЛЬНО после сохранения нажать Apply Config -> Reset.

    Попробуйте еще раз все перепроверить и сообщите результат. Если не получится, то будем копать глубже.

    С уважением, Дмитрий.

    ReplyDelete
    Replies
    1. Еще раз добрый день, Дмитрий.
      Вот еще INVITE звонка с цискофона в город через SIP trunk: CUCM (192.168.251.52) - Siemens HiPath 4000 (192.168.251.14):

      INVITE sip:084957257660@192.168.251.14:5060 SIP/2.0
      Date: Mon, 27 Aug 2012 11:58:26 GMT
      Call-Info: ;method="NOTIFY;Event=telephone-event;Duration=500"
      Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY
      From: "Nikolaev S.L." ;tag=64416edd-2714-4f01-97d8-6d5908214519-28517748
      Allow-Events: presence, kpml
      P-Asserted-Identity: "Nikolaev S.L."
      Supported: timer,resource-priority,replaces
      Supported: X-cisco-srtp-fallback
      Supported: Geolocation
      Min-SE: 1800
      Remote-Party-ID: "Nikolaev S.L." ;party=calling;screen=yes;privacy=off
      Content-Length: 216
      User-Agent: Cisco-CUCM7.1
      To:
      Contact:
      Expires: 180
      Content-Type: application/sdp
      Call-ID: 80ee2280-3b160e2-9d-34fba8c0@192.168.251.52
      Via: SIP/2.0/TCP 192.168.251.52:5060;branch=z9hG4bK11c5fa14a4b
      CSeq: 101 INVITE
      Session-Expires: 1800
      Max-Forwards: 70

      v=0
      o=CiscoSystemsCCM-SIP 2000 1 IN IP4 192.168.251.52
      s=SIP Call
      c=IN IP4 192.168.251.53
      t=0 0
      m=audio 16858 RTP/AVP 0 101
      a=rtpmap:0 PCMU/8000
      a=ptime:20
      a=rtpmap:101 telephone-event/8000
      a=fmtp:101 0-15

      Обратите, пожалуйста, внимание на "method=NOTIFY".
      Такое ощущение, что CUCM хочет не RFC-2833, а sip-notify почему-то.

      Delete
  11. Здравствуйте, Дмитрий!
    В конфигурации SIP Trunk на CUCM стоит галка "MTP Required", DTMF Signaling Method "OOB and RFC 2833" (пробовал так же и только "RFC 2833"). Товарищ, который занимается настройкой Siemens (приходящий, но очень грамотный) утверждает, что в HiPath 4000 на транке - "DTMFCTRD=Y", что соответствует In-band DTMF (в примере на cisco.com так написано).

    Насколько я понял, SCCP телефоны хотят только OOB DTMF, SIP trunk хочет In-band (RFC-2833), а MTP должен перекодировать одно в другое?
    Часть конфига маршр-ра:
    voice rtp send-recv
    !
    voice service voip
    address-hiding
    allow-connections h323 to h323
    allow-connections h323 to sip
    allow-connections sip to h323
    allow-connections sip to sip
    redirect ip2ip
    sip
    history-info
    g729 annexb-all
    !
    voice class codec 1
    codec preference 1 g729r8
    codec preference 2 g711alaw
    codec preference 3 g711ulaw
    !
    !
    !
    !
    voice-card 0
    dspfarm
    dsp services dspfarm
    !
    !
    application
    service MVA http://192.168.251.52:8080/ccmivr/pages/IVRMainpage.vxml
    !...
    !...
    interface FastEthernet0/0
    description $ETH-LAN$$ETH-SW-LAUNCH$$INTF-INFO-FE 0/0$
    ip address 192.168.251.53 255.255.255.240
    duplex auto
    speed auto
    h323-gateway voip interface
    h323-gateway voip bind srcaddr 192.168.251.53
    !
    interface FastEthernet0/1
    no ip address
    shutdown
    duplex auto
    speed auto
    !
    ip forward-protocol nd
    no ip http server
    ip http access-class 23
    ip http authentication local
    no ip http secure-server
    ip http timeout-policy idle 60 life 86400 requests 10000
    !
    ip route 0.0.0.0 0.0.0.0 192.168.251.49
    !
    control-plane
    !
    mgcp fax t38 ecm
    !
    sccp local FastEthernet0/0
    sccp ccm 192.168.251.52 identifier 1 version 7.0
    sccp
    !
    sccp ccm group 1
    bind interface FastEthernet0/0
    associate ccm 1 priority 1
    associate profile 101 register mtp04c5a43f7e99
    associate profile 100 register mtp04c5a43f7e98
    associate profile 99 register cfb04c5a43f7e98
    !
    dspfarm profile 101 transcode
    codec g711ulaw
    codec g711alaw
    codec g729ar8
    codec g729abr8
    codec gsmamr-nb
    codec ilbc
    codec pass-through
    maximum sessions 6
    associate application SCCP
    !
    dspfarm profile 99 conference
    codec g711ulaw
    codec g711alaw
    codec g729ar8
    codec g729abr8
    codec g729r8
    codec g729br8
    maximum sessions 2
    associate application SCCP
    !
    dspfarm profile 100 mtp
    codec g711ulaw
    maximum sessions software 20
    associate application SCCP
    !
    dial-peer voice 5769 voip
    service mva
    incoming called-number 5769
    dtmf-relay rtp-nte digit-drop h245-signal h245-alphanumeric cisco-rtp
    codec g711ulaw
    no vad
    !
    dial-peer voice 5770 voip
    destination-pattern 5770
    session target ipv4:192.168.251.52
    dtmf-relay h245-signal rtp-nte h245-alphanumeric cisco-rtp
    codec g711ulaw
    no vad
    !
    !
    gateway
    timer receive-rtp 600

    С уважением, Сергей.
    P.S. Прошу извинить за потраченное Ваше время.

    ReplyDelete
  12. Здравствуйте Дмитрий,
    при настройки meet me выдается ошибка
    c2821#sh sdspfarm uni

    conf-1 Device:mtp001b54ca9aa2 TCP socket:[18] REGISTERED in SCCP ver 18/18
    actual_stream:48 max_stream 48 IP:10.27.120.7 * 65463 Conference Dixieland keepalive 0
    Supported codec:
    G711Ulaw
    G711Alaw
    G729
    G729a
    G729b
    G729ab

    max-mtps:2, max-streams:0, alloc-streams:0, act-streams:0
    c2821#

    может подскажите что не так

    ReplyDelete
  13. Здравствуйте, Ирина!

    А какая, собственно, ошибка выдается? Max-streams:0?

    ReplyDelete
  14. TCP socket:[18] разве это не ошибка

    ReplyDelete
  15. Дмитрий, спасибо что откликнулись, вроде настроено все правильно, но не работает никак,
    при создании конференции с телефона 1 звонок срабатывает, при вызове следующего абонента Нет доступных линий...........

    Спасибо
    С Уважение Ирина

    ReplyDelete
  16. Добрый день, Ирина!

    Нет, TCP socket:[18] REGISTERED in SCCP - это не ошибка. Наоборот, это сообщение говорит о том, что конференц-мост успешно зарегистрирован. А вот то, что мах-streams:0, у меня вызывает больше подозрений.

    Давайте для начала посмотрим, что нам показывает вывод команды show dspfarm dsp all (до установления конференции и после дозвона первого абонента на конфу MeetMe).

    Также хотелось бы взглянуть на части конфига маршрутизатора, отвечающие за конференц-мост и конференцию MeetMe.

    ReplyDelete
  17. c2821#sh dspfarm dsp all
    SLOT DSP VERSION STATUS CHNL USE TYPE RSC_ID BRIDGE_ID PKTS_TXED PKTS_RXED

    0 3 28.3.1 UP N/A FREE conf 1 - - -
    0 3 28.3.1 UP N/A FREE conf 1 - - -
    0 4 28.3.1 UP N/A FREE conf 1 - - -
    0 4 28.3.1 UP N/A FREE conf 1 - - -
    0 5 28.3.1 UP N/A FREE conf 1 - - -
    0 5 28.3.1 UP N/A FREE conf 1 - - -

    Total number of DSPFARM DSP channel(s) 6

    c2821#

    после дозвона 1 абонента
    ничего не изменилось


    c2821#
    voice call send-alert
    voice call carrier capacity active
    !
    voice service pots
    no direct-inward-dial isdn
    !
    voice service voip
    allow-connections h323 to h323
    redirect ip2ip
    !
    voice class codec 1
    codec preference 1 g711ulaw
    codec preference 2 g711alaw
    !
    voice class custom-cptone leavetone
    dualtone conference
    frequency 400 800
    cadence 400 50 200 50 200 50
    !
    voice class custom-cptone jointone
    dualtone conference
    frequency 600 900
    cadence 300 150 300 100 300 50
    !
    !
    voice register global
    !
    !
    !
    !
    voice-card 0
    dsp services dspfarm
    sccp ccm group 1
    bind interface GigabitEthernet0/1.7
    associate ccm 1 priority 1
    associate profile 1 register HW_CFB
    !
    dspfarm profile 1 conference
    codec g711ulaw
    codec g711alaw
    codec g729ar8
    codec g729abr8
    codec g729r8
    codec g729br8
    maximum sessions 6
    conference-join custom-cptone jointone
    conference-leave custom-cptone leavetone
    associate application SCCP


    telephony-service
    sdspfarm units 2
    sdspfarm tag 1 HW_CFB
    conference hardware
    max-ephones 58


    ephone-template 1
    conference drop-mode local
    conference add-mode creator
    conference admin
    softkeys hold Join Newcall Resume Select
    softkeys idle Cfwdall ConfList Dnd Join Newcall Pickup Redial RmLstC
    softkeys seized Endcall Redial Meetme Cfwdall Pickup
    softkeys alerting Callback Endcall
    softkeys connected ConfList Confrn Endcall Hold Join Park RmLstC Select Trnsfer
    softkeys ringing Answer Dnd
    keep-conference

    ephone-dn 29 dual-line
    number 27000
    conference meetme
    preference 1
    no huntstop
    !
    !
    ephone-dn 30 dual-line
    number 27000
    conference meetme
    preference 2
    no huntstop
    !
    !
    ephone-dn 31 dual-line
    number 27000
    conference meetme
    preference 3
    no huntstop

    ephone 1
    conference drop-mode creator
    conference add-mode creator
    conference admin
    device-security-mode none
    mac-address 001D.54CA.9AA2
    ephone-template 1
    type 7941
    button 1:25
    !
    СПАСИБО


    ReplyDelete
  18. c2821#sh run | sec sccp
    tftp-server flash:cvm41sccp.9-1-1TH1-16.sbn
    tftp-server flash:jar41sccp.9-1-1TH1-16.sbn
    tftp-server flash:/Phones/7911-7906/cvm11sccp.9-1-1TH1-16.sbn
    tftp-server flash:/Phones/7911-7906/jar11sccp.9-1-1TH1-16.sbn
    tftp-server flash:/Phones/7941-7961/cvm41sccp.9-1-1TH1-16.sbn
    tftp-server flash:/Phones/7941-7961/jar41sccp.9-1-1TH1-16.sbn
    tftp-server flash:/8.4/cvm41sccp.8-4-1-23.sbn
    tftp-server flash:/8.4/jar41sccp.8-4-1-23.sbn
    tftp-server flash:/mk-sccp.jar alias Russian_Federation/td-sccp.jar
    tftp-server flash:/mk-sccp.jar alias Russian_Russia/mk-sccp.jar
    tftp-server flash:/tc-sccp.jar alias Russian_Russia/tc-sccp.jar
    tftp-server flash:/Locale/ru-mk-sccp.jar
    tftp-server flash:/Locale/ru-tc-sccp.jar
    tftp-server flash:/Locale/ru-td-sccp.jar
    tftp-server flash:jar11sccp.8-3-3ES2.sbn
    tftp-server flash:cvm11sccp.8-3-3ES2.sbn
    tftp-server flash:7941-7961-sccp.8-4-2S.tar
    tftp-server flash:7906-7911-sccp.8-4-2S.tar
    tftp-server flash:cmterm-7941_7961-sccp.9-3-1-1.cop.sgn
    tftp-server flash:cvm41sccp.9-3-1TH2-5.sbn
    tftp-server flash:jar41sccp.9-3-1TH2-5.sbn
    sccp local GigabitEthernet0/1.7
    sccp ccm 10.27.120.7 identifier 1 version 7.0
    sccp
    sccp ccm group 1
    bind interface GigabitEthernet0/1.7
    associate ccm 1 priority 1
    associate profile 1 register HW_CFB
    keepalive retries 5
    c2821#

    c2821#sh sccp
    SCCP Admin State: UP
    Gateway Local Interface: GigabitEthernet0/1.7
    IPv4 Address: 10.27.120.7
    Port Number: 2000
    IP Precedence: 5
    User Masked Codec list: None
    Call Manager: 10.27.120.7, Port Number: 2000
    Priority: N/A, Version: 7.0, Identifier: 1
    Trustpoint: N/A

    Conferencing Oper State: ACTIVE - Cause Code: NONE
    Active Call Manager: 10.27.120.7, Port Number: 2000
    TCP Link Status: CONNECTED, Profile Identifier: 1
    Reported Max Streams: 48, Reported Max OOS Streams: 0
    Supported Codec: g711ulaw, Maximum Packetization Period: 30
    Supported Codec: g711alaw, Maximum Packetization Period: 30
    Supported Codec: g729ar8, Maximum Packetization Period: 60
    Supported Codec: g729abr8, Maximum Packetization Period: 60
    Supported Codec: g729r8, Maximum Packetization Period: 60
    Supported Codec: g729br8, Maximum Packetization Period: 60
    Supported Codec: rfc2833 dtmf, Maximum Packetization Period: 30
    Supported Codec: rfc2833 pass-thru, Maximum Packetization Period: 30
    Supported Codec: inband-dtmf to rfc2833 conversion, Maximum Packetization Period: 30
    TLS : ENABLED

    ReplyDelete
  19. c2821#sh telephony-service
    CONFIG (Version=8.6)
    =====================
    Version 8.6
    Max phoneload sccp version 17
    Max dspfarm sccp version 18
    Cisco Unified Communications Manager Express
    For on-line documentation please see:
    http://www.cisco.com/en/US/products/sw/ ... _home.html

    protocol mode default
    ip source-address 10.27.120.7 port 2000
    ip qos dscp:
    ef (the MS 6 bits, 46, in ToS, 0xB8) for media
    cs3 (the MS 6 bits, 24, in ToS, 0x60) for signal
    af41 (the MS 6 bits, 34, in ToS, 0x88) for video
    default (the MS 6 bits, 0, in ToS, 0x0) for serviceservice directed-pickup
    service dnis dir-lookup
    service dss
    load 7911 SCCP11.9-1-1SR1S
    load 7941 SCCP41.9-3-1-1S
    max-ephones 58
    max-dn 192
    max-conferences 16 gain -6
    dspfarm units 2
    dspfarm transcode sessions 0
    dspfarm 1 HW_CFB
    dspfarm 2
    conference hardware
    privacy
    no privacy-on-hold
    hunt-group report delay 1 hours
    hunt-group logout DND
    max-redirect 10
    cnf-file location: flash:
    cnf-file option: PER-PHONE
    network-locale[0] RU (This is the default network locale for this box)
    network-locale[1] US
    network-locale[2] US
    network-locale[3] US
    network-locale[4] US
    user-locale[0] RU (This is the default user locale for this box)
    user-locale[1] US
    user-locale[2] US
    user-locale[3] US
    user-locale[4] US
    srst mode auto-provision is OFF
    srst ephone template is 0
    srst dn template is 0
    srst dn line-mode single
    moh flash:music-on-hold.au
    time-format 24
    date-format dd-mm-yy
    timezone 51 Central Pacific Standard Time
    secondary-dialtone 9
    call-park system redirect
    transfer-pattern 1
    transfer-pattern 2
    keepalive 30 auxiliary 30
    timeout interdigit 5
    timeout busy 10
    timeout ringing 120
    timeout transfer-recall 20
    timeout ringin-callerid 8
    timeout night-service-bell 12
    caller-id name-only: enable
    system message Rosreestr 27
    web admin system name root password ********
    web admin customer name mikle password *******
    edit DN through Web: enabled.
    edit TIME through web: enabled.
    background save interval 10 minutes
    Log (table parameters):
    max-size: 1000
    retain-timer: 30
    create cnf-files version-stamp Jan 01 2002 00:00:00
    transfer-system full-consult
    transfer-digit-collect new-call
    multicast moh 239.10.16.4 port 16384
    route 10.27.120.5
    10.27.120.240
    local directory service: enabled.
    Extension-assigner tag-type ephone-tag.

    ReplyDelete
  20. Вот вроде все основные моменты в трех файлах потому что объем ограничен

    Спасибо
    С Уважением Ирина

    ReplyDelete
  21. Доброе утро, Ирина!

    На первый взгляд все настроено правильно. Однако, обратите внимание вот на что. У вас сконфигурировано 6 каналов и до звонка на MeetMe все они свободны. Но и после звонка и дозвона первого абонента они тоже свободны:

    "c2821#sh dspfarm dsp all
    SLOT DSP VERSION STATUS CHNL USE TYPE RSC_ID BRIDGE_ID PKTS_TXED PKTS_RXED

    0 3 28.3.1 UP N/A FREE conf 1 - - -
    0 3 28.3.1 UP N/A FREE conf 1 - - -
    0 4 28.3.1 UP N/A FREE conf 1 - - -
    0 4 28.3.1 UP N/A FREE conf 1 - - -
    0 5 28.3.1 UP N/A FREE conf 1 - - -
    0 5 28.3.1 UP N/A FREE conf 1 - - -

    Total number of DSPFARM DSP channel(s) 6

    c2821#

    после дозвона 1 абонента
    ничего не изменилось"

    Так не должно быть. После дозвона первого абонента уже должен быть занят один из каналов.

    Давайте проясним ситуацию, кто и как набирает. Судя по присланным конфигам, правильная последовательность должна быть такой:

    1. Инициатор конфы MeetMe снимает трубку, нажимает кнопку MeetMe и далее набирает номер MeetMe (27000).
    2. После этого инициатор входит в конфу.
    3. Следующий участник для присоединения конфы должен снять трубку, набрать номер 27000 и войти в конфу (КЛАВИША MEETME при этом не нажимается!!! - это является самой распространенной ошибкой при использовании данного типа конференции, поэтому специально обращаю внимание).

    Так ли у Вас собирается конференция?

    Работает ли обычная конференция (т.е обычная "ручная" конфа)?

    ReplyDelete
    Replies
    1. Дмитрий СПАСИБО ВАМ ОГРАМЕННОЕ,
      все заработало:
      c2821#sh dspf
      c2821#sh dspfarm dsp all
      SLOT DSP VERSION STATUS CHNL USE TYPE RSC_ID BRIDGE_ID PKTS_TXED PKTS_RXED

      0 3 28.3.1 UP N/A FREE conf 1 - - -
      0 3 28.3.1 UP N/A FREE conf 1 - - -
      0 4 28.3.1 UP 1 USED conf 1 136 2725 2726
      0 4 28.3.1 UP 1 USED conf 1 138 2284 2276
      0 4 28.3.1 UP 1 USED conf 1 140 1434 1426
      0 4 28.3.1 UP N/A FREE conf 1 - - -
      0 5 28.3.1 UP N/A FREE conf 1 - - -
      0 5 28.3.1 UP N/A FREE conf 1 - - -

      Total number of DSPFARM DSP channel(s) 6

      c2821#

      СПАСИБО, СПАСИБО, СПАСИБО

      С Огромным Уважением Ирина

      Delete
  22. Доброе утро, Ирина!

    Пожалуйста :) Рад, что все получилось и рад помочь! :)

    Хорошего дня!

    ReplyDelete
  23. День добрый, Дмитрий!

    Может у меня что-то не нак с руками, но конференция заработала только после того, как был создан DN для терминирования конференций:

    ephone-dn 101 octo-line
    number C001
    conference add-hoc

    Но вместе с этим возникла и другая проблема - все конференции "валятся" в одну DN несмотря на то, что я создал аналогичных DN по количеству max-conference и собираю конференции с разных аппаратов...

    Не подскажите, как их можно их раскидать?

    ReplyDelete
  24. Добрый день, Андрей!

    Создание отдельного ephone-dn для конференции является обязательным при конфигурировании именно аппаратной (hardware) конференции. Так что в том, что конференция заработала только после создания дополнительного номера, нет ничего необычного - так и должно быть.

    "Все конференции "валятся" в одну DN" - думаю, что это из-за того, что Вы сконфигурировали именно octo-line. Octo-line - для одного DN "включается" 8 голосовых каналов, и система пытается занять для конференции все свободные каналы на этом DN. Думаю, что тут все будет зависеть от того, сколько участников будет в той или иной конфе.

    Я бы предложил Вам попробовать создать DN'ы как dual-line. Например, по два одинаковых DN с dual-line(это даст 4 канала). И проверить, как это работает.

    ReplyDelete
    Replies
    1. Добрый день, Дмитрий!

      Странно, но с dual-line у меня возникли проблемы с подключением 4-го участника в конференцию... Но опять же самое что странное - octo-line заработал прекрасно просто после перегрузки роутера...

      Кстати, еще один вопрос по теме: если мы делаем профиль для конференций с множеством кодеков, то это снижает по факту количество параллельных конференций. Логична ли моя мысль, что есть смысл оставить профиль конференций только с одним g711ulaw кодеком, а если абонент будет с другим кодеком, то cucme обработает его сначала через профиль транскодирования, а уже потом он "пойдет" в саму конференцию? Тогда мы сможем экономить аппаратные рессурсы, не так ли?

      Спасибо за ответ и с праздником!

      Delete
  25. Добрый день, Андрей!

    Действительно, если сделать профиль для конференции с несколькими кодеками, то количество одновременных конференций будет меньше, так как DSP резервируются на случай сессий с разными кодеками.

    Однако, то же самое будет, если Вы дополнительно сконфигурируете транскодер, так как для него тоже нужны все те же DSP, которые точно так же будут резервироваться, только под транскодер. Думаю, что по факту с транскодером будет такая же ситуация, ведь по сути, конф мост при объединении сессий с разными кодеками играет сразу роль транскодера.

    Нужно добавлять DSP, если нужно больше одновременных конференций с разными кодеками. Это самый лучший, но и самый дорогой вариант. Или, использовать только G711... но тут все зависит от вашего решения телефонии, т.е где расположены телефоны, какие между ними каналы итд.

    Вас также поздравляю с НГ по старому стилю! :)

    ReplyDelete
    Replies
    1. Спасибо, Дмитрий!
      Вас так же с праздником, правда уже прошедшим...

      Delete
  26. добрый день Дмитрий!
    Не могли бы Вы привести краткие настройки на интерфейсе cisco, для передачи имени абонента через поток Е1 от АТС Меридиан на телефоны Cisco и обратно, схема включения вот такая АТС--Cisco3845-TA_7961
    Сигнализация на потоке QSIG
    Вот мои настройки
    interface Serial0/1/0:15
    description to_CS1000
    no ip address
    encapsulation hdlc
    isdn switch-type primary-qsig
    isdn protocol-emulate network
    isdn incoming-voice voice
    isdn send-alerting
    isdn outgoing ie facility
    isdn outgoing display-ie
    no cdp enable
    !

    ReplyDelete
  27. Добрый день, Алексей!

    Когда-то давно (года 4 назад) я стыковал Меридиан и Циску по QSIG согласно вот этого документа:

    http://www.cisco.com/en/US/docs/voice_ip_comm/cucme/pbx/interop/notes/460185nt.pdf

    Конфигурация Д-канала на циске приведена на стр.34. Все было супер, проблем с передачей имени не было.

    На первый взгляд, Ваша конфига выглядит правильной. Однако, если имя не передается, то попробуйте в Дканале циски дописать:

    isdn supp-service name calling

    ReplyDelete
  28. Не помогло. По трассировкам isdn вижу что имя передается в поле facility, но как его получить на дисплее ТА Cisco - ?

    ReplyDelete
  29. Доброе утро,

    А не включено ли, случайно, на Меридиане где-нить ограничение отображения номера?

    ReplyDelete
  30. Проверьте, чтобы в Д-канале Меридиана стояло:

    IFC ISGF

    и

    RCAP NDI

    ReplyDelete
  31. Дмитрий Здравствуйте,
    возник вопрос как называется, а главное как настраивается конференция, когда ты дозваниваешься на номера с которыми хочешь создать конференцию и возможно ли такое на CUCME.

    Спасибо
    С уважением, Ирина

    ReplyDelete
  32. Добрый вечер, Ирина!

    Такая конференция называется MeetMe, ее можно сделать и на CUCME. Вот пример конфигурации (т.е. того, что нужно добавить к конфигурации, описанной выше в посте):

    !
    ephone-template 1
    softkeys seized Endcall Redial Meetme Cfwdall Pickup
    !
    ephone-dn 10 octo-line
    description meet-me conference extension
    number 8000
    conference meetme
    no huntstop
    !
    ephone 1
    ephone-template 1

    Вроде все :), надеюсь, что ничего в конфиге не забыл :)

    ReplyDelete
  33. Дмитрий здравствуйте,
    ephone-dn 29 octo-line
    number 27270
    description mett-me conference extension
    conference meetme
    no huntstop
    !
    и ephone 29
    device-security-mode none
    mac-address 001D.450B.D768
    ephone-template 1
    type 7911

    не прописывается команда butt 1:29,
    и соответственно нет зуммера

    остался еще вопрос, как собрать такую конференцию


    Спасибо
    С уважением, Ирина

    ReplyDelete
    Replies
    1. Доброе утро, Ирина!

      А номер MeetMe не нужно прописывать на кнопку. СМЕ не принимает эту команду, потому что ephone-dn 29 - это номер для конференции meetme.

      По сборке: инициатор конференции поднимает трубку, нажимает клавишу MeetMe, далее набирает номер MeetMe (27270) и входит в конфу. Тот, кто желает присоединиться, просто снимает трубку и набирает этот же номер и все.

      Не буду доступен в сети аж до четверга... Пишите, если потребуется еще помощь, но смогу ответить Вам не ранее 27.06.

      Delete
  34. Здравствуйте, Дмитрий!
    срочно нужна Ваша помощь,
    в логах 2821 пишет
    Jul 8 00:14:27: %ENVMON-4-FAN_LOW_RPM: Fan 2 service recommended
    так все работает, но при организации конференции meem-me, конференция делает вызов сама на себя

    ReplyDelete
    Replies
    1. Доброе утро, Ирина!

      Jul 8 00:14:27: %ENVMON-4-FAN_LOW_RPM: Fan 2 service recommended - это сообщение говорит о проблеме с одним из вентиляторов охлаждения Вашего маршрутизатора. Нужно вскрывать и чистить или вообще менять сам вентилятор.

      По meet-me - пришлите, пожалуйста, конфиг Вашего маршрутизатора. Или напишите в коменте адрес почты (не буду этот комент публиковать), и далее спишемся по почте.

      Delete
  35. Добрый вечер, сразу оговорюсь, я в этом деле новичок. Я наверное что-то не так понимаю, или не понимаю вовсе.
    Собственно проблема это передача DTMF через sip транк в In-Band режиме c SCCP телефонов. Собственно конфигурация такая
    Есть C3825 (C3825-ADVENTERPRISEK9_IVS_LI-M , Version 12.4(24)T2 )с воткнутыми в нее pvdm2-32 и EVM-HD ( 8 - FXS )
    К ней подключено один 7961, один SIP телефон ( какой-то самый простой ), и два SLT телефона подключенных EVM-HD
    и SIP транк ( для примера я взял SIPNET ), настроены dial-peer -ы, в общем все на все звонит
    7961 умеет ставить звонки на паузу ( moh ) переводить звонок на другие номера и пр. SIP телефон не ставит на паузу ( хотя кнопка hold на нем есть но музыку не дает ),
    переводит но без assist ( впрочем этого от него никто и не требует т.к. в основной планируются SCCP телефоны ).

    Ели звонить SCCP<->SLT DTMF ходит нормально
    SIP <-> SCCP через раз проходят DTMF причем если SIP -> SCCP то всегда а SCCP -> SIP через раз ( хотя всегда при звонке sh call active voice выдает tx_DtmfRelay=rtp-nte
    ) - видимо кодек в SIP телефоне кривоват и не всегда ловит dtmf и передает в голосе )

    Собственно проблема в транке - провайдер передает в DTMF в rtp-nte (т.е. In-Band ) ( а SCCP телефоны только в Out_Of_Band ). Поиски решения собственно и привели меня в к таким понятиям
    как MTP и в частности к этой статье, за что автору огромная благодарность,( все очень четко расписано ). Так вот, делаю точно как у вас.
    Создаю только
    dspfarm profile 2 mtp и привязываю к telephony-service

    В итоге
    riuter# sh sccp
    SCCP Admin State: UP
    Gateway Local Interface: GigabitEthernet0/1.30
    IPv4 Address: 192.168.30.1
    Port Number: 2000
    IP Precedence: 5
    User Masked Codec list: None
    Call Manager: 10.2.2.1, Port Number: 2000
    Priority: N/A, Version: 7.0, Identifier: 1
    Trustpoint: N/A

    Conferencing Oper State: ACTIVE - Cause Code: NONE
    Active Call Manager: 10.2.2.1, Port Number: 2000
    TCP Link Status: CONNECTED, Profile Identifier: 1
    Reported Max Streams: 16, Reported Max OOS Streams: 0
    Supported Codec: g711ulaw, Maximum Packetization Period: 30
    .
    .
    .
    Supported Codec: inband-dtmf to rfc2833 conversion, Maximum Packetization Period: 30

    MTP Oper State: ACTIVE - Cause Code: NONE
    Active Call Manager: 10.2.2.1, Port Number: 2000
    TCP Link Status: CONNECTED, Profile Identifier: 2
    Reported Max Streams: 16, Reported Max OOS Streams: 0
    Supported Codec: g711alaw, Maximum Packetization Period: 30
    ...

    говорит что все хорошо
    и
    router#sh sccp ccm group 1
    CCM Group Identifier: 1
    Description: None
    Binded Interface: None
    Associated CCM Id: 1, Priority in this CCM Group: 1
    Associated Profile: 2, Registration Name: MTP00001
    Associated Profile: 1, Registration Name: HW_CFB


    тоже все привязал



    ReplyDelete
  36. а вот
    router# sh sdspfarm units
    conf-1 Device:HW_CFB TCP socket:[1] REGISTERED in SCCP ver 17/10
    actual_stream:16 max_stream 16 IP:192.168.30.1 45192 Conference Dixieland keepalive 305
    Supported codec: ...

    mtp-2 Device:MTP00001 TCP socket:[-1] UNREGISTERED
    actual_stream:0 max_stream 0 IP:0.0.0.0 0 Unknown 0 keepalive 0

    Это смущает.
    Отсюда вопрос, CUCME-вообще не признает MTP. ( тогда как настроить передачу DTMF ). Или этот MTP надо еще куда-то прописать чтобы все заработало.

    И еще если делать shutdown \ no shutdown профилю MTP
    то выдает
    ephone-3:MTP00001 IP:192.168.30.1 Socket:2 DeviceType:Phone has unregistered normally.
    returning empty string !!!!
    *Jul 13 17:43:12.999: %IPPHONE-6-REGISTER_NEW: ephone-3:MTP00001 IP:192.168.30.1 Socket:2 DeviceType:Phone has registered.

    т.е. как-то этот MTP теплится.
    и что это за returning empty string !!!! ??

    ReplyDelete
    Replies
    1. Доброе утро, Алексей!

      В настоящее время я веду курс в Москве, поэтому все внимание уделяю ему. Я напишу Вам развернутый ответ в конце недели на выходных, как только появится свободное время.

      Ок?

      Delete
    2. Хорошо, буду ждать ответа.

      Delete
    3. Добрый день, Алексей!

      Наконец-то появилась минутка, чтобы поотвечать на вопросы читателей блога. Просто завал был... всю неделю испытывал жуткий цейтнот и не знал, за что браться в первую очередь. :)

      По Вашей проблеме, сообщаю следующее. МТР для ССМЕ обычно не требуется, так как ССМЕ сам является МТР, и выполняет, в частности, конверсию DTMF OUT-OF-BAND в DTMF IN-BAND. Иными словами, для того, чтобы по протоколу SIP передать DTMF методом rtp-nte (rfc2833) МТР для ССМЕ не нужны.

      Достаточно в диалпире, который сконфигурирован для звонков к сип-провайдеру, прописать dtmf-relay rtp-nte.

      Для более подробной помощи Вам, мне потребуется взглянуть на конфиг Вашего устройства, и, возможно, дебаги. Поэтому, предлагаю, перенести общение в почту. Пришлите, пожалуйста, в коменте адрес своей почты (комент не будет опубликован), и я вам отвечу.

      Delete
    4. Дмитрий, добрый день!

      столкнулся с похоже проблемой. имею SIP-trunk до провайдера и не при каких условиях не хочет работать DTMF.

      Провайдер приносил свой голосовой шлюз (не CISCO), сделал настройки моих SIP-номеров и продемонстрировал мне работу DTMF в режиме RFC2833.

      При этом я на своих диалпирах прописывал и dtmf-relay rtp-nte и пробовал в жесткую прописывать строчкой voice-class sip dtmf-relay force rtp-nte - результат один и тот же, DTMF не работает ни на исходящих ни на входящих.

      если вам удалось решить проблему в прошлом случае прошу подсказать как.

      спасибо!

      Delete
    5. Добрый день, Сергей!

      Давайте для начала посмотрим на debug ccsip messages при звонке по данному транку. В предыдущем случае решение проблемы прервалось последним комментом в блоге, далее не копали.

      Delete
    6. Входящий звонок:

      Jun 25 05:14:49.947: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:
      Received:
      INVITE sip:2169000@10.223.232.50:5060 SIP/2.0
      Via: SIP/2.0/UDP 10.223.224.4:5060;branch=z9hG4bKu32t8l006gehaj84t220.1
      Accept: application/sdp
      Allow: INVITE,ACK,CANCEL,BYE,INFO,PRACK,UPDATE,OPTIONS,REGISTER,REFER,SUBSCRIBE,MESSAGE,PUBLISH
      Call-ID: 418faa9p56wl76x7n@172.16.1.10
      Contact: "89882444462"
      CSeq: 323 INVITE
      Expires: 3600
      From: "89882444462" ;tag=cpoisly9d8
      To: "2169000"
      Organization: Iskratel
      Supported: 100rel
      User-Agent: SI3000
      P-Access-Network-Info: 3GPP-GERAN;cgi-3gpp=79184790491
      Max-Forwards: 69
      Subject: Call from SI3000
      P-Asserted-Identity: "89882444462"
      Privacy: none
      Content-Length: 211
      Content-Type: application/sdp
      Content-Disposition: session;handling=required

      v=0
      o=- 4462070 8888673 IN IP4 10.223.224.4
      s=-
      c=IN IP4 10.223.224.4
      b=AS:64
      t=0 0
      m=audio 10310 RTP/AVP 18 8 0
      a=rtpmap:18 G729/8000
      a=rtpmap:8 PCMA/8000
      a=rtpmap:0 PCMU/8000
      a=sendrecv
      a=ptime:20

      Jun 25 05:14:49.951: //4458/775F2BFF80D3/SIP/Msg/ccsipDisplayMsg:
      Sent:
      SIP/2.0 100 Trying
      Via: SIP/2.0/UDP 10.223.224.4:5060;branch=z9hG4bKu32t8l006gehaj84t220.1
      From: "89882444462" ;tag=cpoisly9d8
      To: "2169000"
      Date: Wed, 25 Jun 2014 05:14:49 GMT
      Call-ID: 418faa9p56wl76x7n@172.16.1.10
      CSeq: 323 INVITE
      Allow-Events: telephone-event
      Server: Cisco-SIPGateway/IOS-15.3.3.M
      Content-Length: 0


      Jun 25 05:14:49.995: //4458/775F2BFF80D3/SIP/Msg/ccsipDisplayMsg:
      Sent:
      SIP/2.0 200 OK
      Via: SIP/2.0/UDP 10.223.224.4:5060;branch=z9hG4bKu32t8l006gehaj84t220.1
      From: "89882444462" ;tag=cpoisly9d8
      To: "2169000" ;tag=9460940-EF4
      Date: Wed, 25 Jun 2014 05:14:49 GMT
      Call-ID: 418faa9p56wl76x7n@172.16.1.10
      CSeq: 323 INVITE
      Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
      Allow-Events: telephone-event
      Remote-Party-ID: ;party=called;screen=no;privacy=off
      Contact:
      Supported: replaces
      Supported: sdp-anat
      Server: Cisco-SIPGateway/IOS-15.3.3.M
      Supported: timer
      Content-Type: application/sdp
      Content-Disposition: session;handling=required
      Content-Length: 194

      v=0
      o=CiscoSystemsSIP-GW-UserAgent 5179 3960 IN IP4 10.223.232.50
      s=SIP Call
      c=IN IP4 10.223.232.50
      t=0 0
      m=audio 16524 RTP/AVP 8
      c=IN IP4 10.223.232.50
      a=rtpmap:8 PCMA/8000
      a=ptime:20

      Jun 25 05:14:50.003: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:
      Received:
      ACK sip:2169000@10.223.232.50:5060 SIP/2.0
      Via: SIP/2.0/UDP 10.223.224.4:5060;branch=z9hG4bK0kl2fg1078812jsil7h1.1
      Call-ID: 418faa9p56wl76x7n@172.16.1.10
      CSeq: 323 ACK
      From: "89882444462" ;tag=cpoisly9d8
      To: "2169000" ;tag=9460940-EF4
      Max-Forwards: 69
      Content-Length: 0


      Jun 25 05:15:06.303: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:
      Received:
      BYE sip:2169000@10.223.232.50:5060 SIP/2.0
      Via: SIP/2.0/UDP 10.223.224.4:5060;branch=z9hG4bK0kl2fg1078812jsil7h1cd0002021.1
      Call-ID: 418faa9p56wl76x7n@172.16.1.10
      CSeq: 324 BYE
      From: "89882444462" ;tag=cpoisly9d8
      To: "2169000" ;tag=9460940-EF4
      Reason: Q.850;cause=16;text="Normal call clearing"
      Max-Forwards: 69
      Content-Length: 0


      Jun 25 05:15:06.307: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:
      Sent:
      SIP/2.0 200 OK
      Via: SIP/2.0/UDP 10.223.224.4:5060;branch=z9hG4bK0kl2fg1078812jsil7h1cd0002021.1
      From: "89882444462" ;tag=cpoisly9d8
      To: "2169000" ;tag=9460940-EF4
      Date: Wed, 25 Jun 2014 05:15:06 GMT
      Call-ID: 418faa9p56wl76x7n@172.16.1.10
      Server: Cisco-SIPGateway/IOS-15.3.3.M
      CSeq: 324 BYE
      Reason: Q.850;cause=16
      P-RTP-Stat: PS=815,OS=130400,PR=813,OR=130080,PL=0,JI=0,LA=0,DU=16
      Content-Length: 0


      Диалпир выглядит так:

      dial-peer voice 3001 voip
      description Incoming From City
      translation-profile incoming city_incoming
      session protocol sipv2
      session target ipv4:10.223.224.4
      incoming called-number .T
      dtmf-relay rtp-nte
      codec g711alaw

      Delete
    7. Хорошо, но из дебага следует, что город не присылает Вашей стороне уведомление о том, что он поддерживает RFC2833!

      От них приходит вот такое SDP:

      m=audio 10310 RTP/AVP 18 8 0
      a=rtpmap:18 G729/8000
      a=rtpmap:8 PCMA/8000
      a=rtpmap:0 PCMU/8000
      a=sendrecv
      a=ptime:20

      А должно быть подобное такому:

      m=audio 46090 RTP/AVP 0 8 101
      a=rtpmap:101 telephone-event/8000
      a=fmtp:101 0-16

      РТ=101 и является уведомлением о том, что сторона поддерживает RFC2833.

      Хотелось бы взглянуть на дебаг исходящего звонка от вас.

      Delete
    8. Jun 25 05:44:36.532: //4497/98D7ABB280E3/SIP/Msg/ccsipDisplayMsg:
      Sent:
      INVITE sip:88002500890@10.223.224.4:5060 SIP/2.0
      Via: SIP/2.0/UDP 10.223.232.50:5060;branch=z9hG4bK11FFFBB
      Remote-Party-ID: ;party=calling;screen=no;privacy=off
      From: ;tag=9614BF4-EB4
      To:
      Date: Wed, 25 Jun 2014 05:44:36 GMT
      Call-ID: A041D8D4-FB6211E3-80E8F5A5-251DC047@10.223.232.50
      Supported: 100rel,timer,resource-priority,replaces,sdp-anat
      Min-SE: 1800
      Cisco-Guid: 2564271026-4217508323-2162423205-0622706759
      User-Agent: Cisco-SIPGateway/IOS-15.3.3.M
      Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
      CSeq: 101 INVITE
      Max-Forwards: 70
      Timestamp: 1403675076
      Contact:
      Expires: 180
      Allow-Events: telephone-event
      Content-Type: application/sdp
      Content-Disposition: session;handling=required
      Content-Length: 250

      v=0
      o=CiscoSystemsSIP-GW-UserAgent 9458 5772 IN IP4 10.223.232.50
      s=SIP Call
      c=IN IP4 10.223.232.50
      t=0 0
      m=audio 16536 RTP/AVP 8 101
      c=IN IP4 10.223.232.50
      a=rtpmap:8 PCMA/8000
      a=rtpmap:101 telephone-event/8000
      a=fmtp:101 0-16
      a=ptime:20

      Jun 25 05:44:36.536: //4497/98D7ABB280E3/SIP/Msg/ccsipDisplayMsg:
      Received:
      SIP/2.0 100 Trying
      Via: SIP/2.0/UDP 10.223.232.50:5060;branch=z9hG4bK11FFFBB
      From: ;tag=9614BF4-EB4
      To:
      Call-ID: A041D8D4-FB6211E3-80E8F5A5-251DC047@10.223.232.50
      CSeq: 101 INVITE
      Timestamp: 1403675076


      Jun 25 05:44:36.608: //4497/98D7ABB280E3/SIP/Msg/ccsipDisplayMsg:
      Received:
      SIP/2.0 183 Session Progress
      Via: SIP/2.0/UDP 10.223.232.50:5060;branch=z9hG4bK11FFFBB
      From: ;tag=9614BF4-EB4
      To: ;tag=ud7ggnkn58
      Call-ID: A041D8D4-FB6211E3-80E8F5A5-251DC047@10.223.232.50
      CSeq: 101 INVITE
      Timestamp: 1403675076
      Allow: INVITE,ACK,CANCEL,INFO,PRACK,UPDATE,OPTIONS,REGISTER,REFER,SUBSCRIBE,PUBLISH
      Contact:
      Require: 100rel
      Min-SE: 1800
      RSeq: 1
      Content-Length: 0


      Jun 25 05:44:36.608: //4497/98D7ABB280E3/SIP/Msg/ccsipDisplayMsg:
      Sent:
      PRACK sip:88002500890@10.223.224.4:5060;transport=udp SIP/2.0
      Via: SIP/2.0/UDP 10.223.232.50:5060;branch=z9hG4bK1200AE
      From: ;tag=9614BF4-EB4
      To: ;tag=ud7ggnkn58
      Date: Wed, 25 Jun 2014 05:44:36 GMT
      Call-ID: A041D8D4-FB6211E3-80E8F5A5-251DC047@10.223.232.50
      CSeq: 102 PRACK
      RAck: 1 101 INVITE
      Allow-Events: telephone-event
      Max-Forwards: 70
      Content-Length: 0


      Jun 25 05:44:36.612: //4497/98D7ABB280E3/SIP/Msg/ccsipDisplayMsg:
      Received:
      SIP/2.0 200 OK
      Via: SIP/2.0/UDP 10.223.232.50:5060;branch=z9hG4bK1200AE
      From: ;tag=9614BF4-EB4
      To: ;tag=ud7ggnkn58
      Call-ID: A041D8D4-FB6211E3-80E8F5A5-251DC047@10.223.232.50
      CSeq: 102 PRACK
      Content-Length: 0


      Jun 25 05:44:36.616: //4497/98D7ABB280E3/SIP/Msg/ccsipDisplayMsg:
      Received:
      SIP/2.0 183 Session Progress
      Via: SIP/2.0/UDP 10.223.232.50:5060;branch=z9hG4bK11FFFBB
      From: ;tag=9614BF4-EB4
      To: ;tag=ud7ggnkn58
      Call-ID: A041D8D4-FB6211E3-80E8F5A5-251DC047@10.223.232.50
      CSeq: 101 INVITE
      Timestamp: 1403675076
      Allow: INVITE,ACK,CANCEL,INFO,PRACK,UPDATE,OPTIONS,REGISTER,REFER,SUBSCRIBE,PUBLISH
      Contact:
      Require: 100rel
      RSeq: 2
      Content-Length: 161
      Content-Type: application/sdp
      Content-Disposition: session;handling=required

      v=0
      o=- 7378107 8080266 IN IP4 10.223.224.4
      s=-
      c=IN IP4 10.223.224.4
      b=AS:64
      t=0 0
      m=audio 10006 RTP/AVP 8
      a=rtpmap:8 PCMA/8000
      a=sendrecv
      a=ptime:20

      Это первая часть лога. Если нужно остальное скажите, добавлю.

      Delete
    9. Ну вот. Из этого дебага совершенно четко видно, что циска предлагает прову DTMF по RFC2833:

      m=audio 16536 RTP/AVP 8 101
      c=IN IP4 10.223.232.50
      a=rtpmap:8 PCMA/8000
      a=rtpmap:101 telephone-event/8000
      a=fmtp:101 0-16
      a=ptime:20

      Похоже, что стороны просто не могут договориться и виной этому есть сторона провайдера, так как ваша сторона ей запрос на RFC2833 отдает. Самое время спросить у них, почему так происходит, с приведением им соответствующих фрагментов дебага.

      Delete
    10. Спасибо за ответ! попробую с ними решить вопрос, хотя я уже с ними месяц пытаюсь разобраться.

      И вопрос почему же их оборудование все таки работает, а CISCO нет.

      Delete
    11. сразу сложно сказать, почему их оборудование работает. Много факторов влияет. Первый вопрос, который я задам: как это проверялось? что именно делалось, чтобы показать, что DTMF передается и передается именно по RFC2833, а не OUT-OF-BAND или просто в кодеке G711?

      Второй вопрос: показано ли это было дебагами (так, как я Вам только что показал)?

      Третий вопрос: какой кодек был выбран при входящем и исходящем звонках?

      И только после этого можно будет сказать, как работала их железка. Знаете, я являюсь сторонником физического подтверждения событий и процессов (т.е имея багаж теор. знаний, я всегда пытаюсь увидеть это в дебагах, трейсах, логах, осциллограммах, в показаниях вольтметра итд ). Тогда, действительно, с уверенностью можно сказать, почему именно так, а не иначе.

      Delete
  37. Добрый день!
    Вопрос по настройке:
    Имеется Cisco 2811 на ней прописано много dial-peer'ов с разными кодеками

    dial-peer voice 331 voip
    destination-pattern 331
    session protocol sipv2
    session target ipv4:192.168.12.250:5060
    codec g726r16

    dial-peer voice 310 voip
    destination-pattern 310
    session protocol sipv2
    session target ipv4:192.168.38.250:5061
    codec g711ulaw

    их несколько десятков...

    Задача сделать между ними транскодирование.
    Я прописал

    voice-card 0
    dsp services dspfarm

    создал профиль

    dspfarm profile 10 transcode

    но я не могу добавить кодек g726r16, парсер выдает ошибку.

    Как быть, транскодинг не работает. Можно это по другому настроить?

    ReplyDelete
  38. Добрый вечер, Александр!

    Я не помню на память, но вполне возможно, что 726й кодек не программируется для транскодера. Транскодер по-другому не настроить :(.

    ReplyDelete
  39. Владимир Боженков24 September, 2013 13:42

    Добрый день!
    Мне нужно завести транк между CUCM 9.1 и Asterisk без использования MTP. Так же у меня имеется CUBE. Я настроил SIP транки: CUCM<->CUBE<->Asterisk. Звонки проходят, но перевод звонков/снятие с удержания не работают.
    На CUBE:
    voice service voip
    allow-connections sip to sip
    sip
    bind control source-interface GigabitEthernet0/0.1
    bind media source-interface GigabitEthernet0/0.1
    session transport tcp
    early-offer forced

    dial-peer voice 1 voip
    description cucm
    destination-pattern 1...
    session protocol sipv2
    session target ipv4:10.200.128.162
    incoming called-number .T
    dtmf-relay rtp-nte
    codec g711alaw

    dial-peer voice 2 voip
    description asterisk
    destination-pattern 2...
    session protocol sipv2
    session target ipv4:10.200.128.164
    incoming called-number .T
    dtmf-relay rtp-nte
    codec g711alaw

    На Asterisk: dtmfmode=rfc2833, codec=g711alaw, период пакетизации - 20
    На CUCM: MTP не используется, dtmf=rfc2833

    Что я упустил? Может это как-то по др. настраивается?
    С уважением, Владимир Боженков

    ReplyDelete
    Replies
    1. Доброе утро, Владимир.

      А почему не хотите-то использовать МТР? При трансферах будет проблема без них - некуда терминировать RTP на момент перевода вызова. Решение этой проблемы - или МТР, или (в новых релизах иос) можно применить функцию Mid-call Re-INVITE Consumption. Циска о ней пишет вот что:

      The purpose of Mid-call Re-INVITE Consumption is to ensure smooth interoperatibility of supplementary services like audio Hold/Resume and call transfer.

      Применяется эта фича только для SIP звонков. Мне ее еще не приходилось тестировать. Собственно, МТР прекрасно решает все подобные проблемы.

      Delete
    2. Владимир Боженков25 September, 2013 07:18

      Доброе утро, Дмитрий.
      Спасибо за ответ - сегодня буду пробовать. А необходимость исключить из этой связки MTP - обусловлена задачей. Нужно интегрировать в эту схему XMediusFax - а с включенным MTP - CUCM при переводе звонка на XMediusFax в SIP сообщениях пишет "SIP/2.0 488 Not Acceptable Media". В вендоре сказали следующее:
      "MTP нужно выключить, со стороны города (от шлюза до CUCM) должен быть SIP транк. На шлюзе в настройках sip соединения в сторону CUCM перечислить все варианты посылки DTMF. Если шлюз Cisco, то, соответственно, на dial-peer voice xxx voip -> dtmf-relay и перечислить все возможные варианты. На CUCM в настройках SIP транка в сторону шлюза в поле DTMF Signaling Method : RFC2833"
      Так что буду пробовать ваш вариант. По результатам отпишусь. Еще раз спасибо!
      С уважением, Владимир Боженков

      Delete
  40. Владимир Боженков25 September, 2013 08:49

    Дмитрий - огромное спасибо - это как раз то, что я так долго искал. Факсы стали проходить ))
    Еще раз огромное спасибо!!!
    С уважением, Владимир Боженков

    ReplyDelete
    Replies
    1. Пожалуйста, :) рад, что все заработало. Обращайтесь :)

      Delete
  41. Дмитрий, добрый день. имею следующий конфиг:
    С3725 - c3725-adventerprisek9_ivs-mz.124-15.T14.bin
    Модуль NM-HDV и вставленный в него PVDM-12.

    Проблема в том что нет в иосе команды
    dspfarm profile
    и соответственно не могу настроить транскодинг, ситуация тупа до безобразия. В главном офисе настроенная 3845 с sccp и sip телефонами, на филиальной этой 3725 - тоже самое. sccp и sip. Между ними h323 транк. Звонки проходят между всеми аппаратами во все стороны, кроме как с sip трубки, зареганной на 3725 в сторону главного офиса. Дебаг говорит о несовпадении кодеков(Disconnection cause (65)). При этом с этой же трубки звонится на местные sccp аппараты и в город, через сип-провайдера, приходящего на 3725. Есть какие-нибудь идеи такой мистики?

    ReplyDelete
    Replies
    1. Добрый день, Сергей!

      Попробуйте почитать вот эту статью:

      http://www.cisco.com/en/US/docs/ios-xml/ios/voice/cminterop/configuration/12-4t/vc-enh-confr-vgr.html#GUID-DF87992D-E736-40CA-8731-A24C8F8BA2FF

      В ней есть пример конфигурации транскодера на базе DSP, установленных в модуль NM-HDV.

      О несовпадении кодеков - скорее всего, ваша трубка поддерживает только кодек G711, а на диал-пире выставлен только кодек G729. Выходом из ситуации (если, конечно, позволяет канал) может быть применение списка кодеков (voice class codec) на данном диал-пире.

      Delete
  42. Здравствуйте. Просветите пожалуйста пару моментов - есть cisco 2921 с cucme на борту и зарегистрированные на ней sip телефоны стороннего производителя (не cisco). Регистрация осуществляется через voice register pool. Как реализовать функцию перехвата вызова (pickup) с одного телефона на другой? я нашел описание данной функции только касательно ephone. Заранее спасибо.

    ReplyDelete
    Replies
    1. Добрый день, Илья!

      Вся проблема в том, что сторонние SIP-телефоны не поддерживают многие функции CUCME. Обычно с них можно совершить только базовый звонок, т.е снял трубу и набрал номер. Для некоторых телефонов (например, для того же X-lite) доступны такие функции как трансфер и конференция, но это уже зависит от телефона.

      Однако, можно попытаться для подхвата вызова с SIP-телефона использовать FAC. На одном из форумов я вот вычитал такое:

      SIP phones that do not support the PickUp and GpickUp soft keys must use feature access codes (FACs) to access these features.

      Но я это сам не пробовал. Покопайте в сторону feature access codes, я же, в свою очередь, проверю это при случае в своей лабе.

      Delete
    2. меня устроит и ввод комбинации с клавиатуры - например *8#
      прописываю Fac custom pickup local *8#
      и в voice register dn - pickup-group 1 - результат нулевой

      Delete
  43. Илья, пока не могу ничего добавить более :( Проверю в лабе, если удастся, я напишу. Времени только катастрофически нет...

    ReplyDelete
    Replies
    1. спасибо, буду очень ждать

      Delete
    2. Дмитрий здравствуйте. У Вас не появилось никакой информации относительно перехвата вызовов на сип-фонах? Спасибо.

      Delete
    3. Добрый день, Илья! К сожалению, не смогу Вас ничем порадовать :( До проверки дело так и не дошло. Я погряз в курсах и в ремонте квартиры, и на остальное не остается времени :(

      Delete
  44. Добрый день! прошу помощи...

    СМЕ подключено к SIP-оператору. Все звонки приходят с использование кодека g729r8. Хочу на эти номера повесить IVR, но как утверждает CISCO звуковые файлы будут воспроизводиться только при использовании кодека g711ulaw. Настроил транскондинг по вашей инструкции, все активировалось как вы написали. Возможно ли применить данную схему к моей проблеме и что нужно прописать в конфиге? т.е. я хочу чтобы входящий звонок по кодеку g729 транскодировался в g711ulaw и передавался на IVR.

    На данный момент при навешивании IVR на входящий диалпир приводит к тому что при входящем звонке идет 3 сек тишины, потом "занято".

    конфиг по транскодингу в точности ваш. Что нужно поменять/добавить чтобы заработал IVR?

    Спасибо!

    ReplyDelete
    Replies
    1. Добрый день, Сергей!

      На чем реализуете IVR? На TCL/VXML? По идее, транскодер включится, если Вы пропишете кодек G711 на входящем диалпире, который используется для звонков с SIP оператора.

      В этом случае получится, что пров просит кодек G729, а СМЕ на входящем диалпире поддерживает только кодек G711. И это послужит поводом для вовлечения транскодера в обработку входящего звонка.

      Только в этом случае ресурсов транскодера (количество сессий им поддерживаемых) должно быть таким, чтобы обеспечить прохождение нужного количества звонков. Потому как все без исключения SIP звонки от прова (и на IVR, и на телефоны) будут идти через транскодер.

      Хотя... путем правильной конфигурации выбора входящего диалпира, можно разделить SIP-звонки на телефоны и на IVR, например, один входящий диалпир выбирается для SIP-звонков на IVR, а другой - на телефоны. На диалпире для IVR установить кодек G711 (и тогда должен отработать транскодер), а на другом входящем диалпире поставить G729 (и в этом случае при звонке на телефоны транскодер не используется).

      Delete
    2. использую VXML. у меня два ДиалПира:

      dial-peer voice 3004 voip
      description --== Incoming to IVR ==--
      translation-profile incoming city_3658254
      incoming called-number 3658254
      no vad

      Этот диалпир отрабатывает входящий вызов, меняет DNIS на 500

      dial-peer voice 5001 voip
      description --== IVR ==--
      service ivrr out-bound
      destination-pattern 500
      session target ipv4:10.12.99.254
      no vad

      Этот диалпир уже отправляет вызов на IVR.

      Если прописываю кодек на первом диалпире, то звонок сразу отбрасывается при поступлении.

      если прописываю кодек на втором диалпире, то звонок доходит до IVR, который в свою очередь делает "отбой".

      лог VXML (выложил только кусок, на котором видно возникновение ошибки):
      Mar 20 11:29:04.647: //2870/AD4BEDBE9E2C/VXML:/vxml_bind_lastprompt:

      *Mar 20 11:29:04.647: //2870/AD4BEDBE9E2C/VXML:/vxml_digit_collect_process:
      vxmlp 68D40D18 status 2 async_status 40000
      *Mar 20 11:29:04.647: //2870//AFW_:/vapp_session_exit_event_name: Exit Event vxml.session.error
      *Mar 20 11:29:04.647: //2870/AD4BEDBE9E2C/VXML:/vxml_vapp_terminate:
      vapp_status=2 ref_count 0
      *Mar 20 11:29:04.647: //2870/AD4BEDBE9E2C/VXML:/vxml_vapp_terminate:
      CALL_ERROR; flash:ivr.vxml

      vxml session terminating with code=ERROR
      vapp status=VAPP_FAIL vxml async status=VXML_ERROR_VAPP
      *Mar 20 11:29:04.647: //2870//AFW_:/vapp_terminate:
      *Mar 20 11:29:04.647: //2870//AFW_:/AFW_M_VxmlModule_Terminate:
      *Mar 20 11:29:04.647: //2870//AFW_:/vapp_checksessionstate:
      *Mar 20 11:29:04.647: //2870//AFW_:/vapp_checkifdone: Object: 1, Leg: 1
      *Mar 20 11:29:04.651: //2870/AD4BEDBE9E2C/VXML:/vxml_tree_delete:
      vxmlp=68D40D18, usage_cnt=1 url=flash:ivr.vxml
      *Mar 20 11:29:04.651: vxml_tree_delete:mem_mgr_mempool_free: mem_refcnt(69259670)=0 - mempool cleanup
      *Mar 20 11:29:04.651: //2870/AD4BEDBE9E2C/VXML:/vxml_session_delete:

      *Mar 20 11:29:04.651: vxml_session_delete:mem_mgr_mempool_free: mem_refcnt(6905B27C)=0 - mempool cleanup
      *Mar 20 11:29:04.655: vxml_session_delete:mem_mgr_mempool_free: mempool=NULL
      *Mar 20 11:29:04.655: //2870//AFW_:/vapp_checksessionstate:
      *Mar 20 11:29:04.655: //2870//AFW_:/vapp_checkifdone: Object: 0, Leg: 0
      *Mar 20 11:29:04.655: //2870//VXML:/Dialog_VxmlDialogDone: handoff return string return-status=fail:
      *Mar 20 11:29:04.655: //-1//AFW_:HN1FD88F08:/AFW_M_VxmlModule_Free:
      *Mar 20 11:29:04.655: MOD[VxmlModule_6A5AB9EC_0_534286088] ( )

      IVR однозначно рабочий, если делаю внутренний звонок то все отрабатывается как надо, от SIP-оператора не работает.

      Delete
    3. Добрый день, Сергей!

      Не совсем я понял наcчет IVR. Он на стороннем сервере реализован, что-ли или все же на этом же шлюзе? Я пока не могу понять схему маршрутизации звонка.

      Пока, не имея достаточного представления о вашей схеме, хочу спросить вот что - прописана ли для транскодера команда sdspfarm transcode sessions? Она дается в режиме telephony-service.

      Расскажите, пожалуйста, поподробнее, об организации IVR.

      Delete
    4. IVR настроен на данном шлюзе, все сервисы на одной железке. вот полный конфиг:

      !
      voice-card 0
      dsp services dspfarm
      !
      !
      application
      service ivrr flash:ivr.vxml
      !
      global
      service alternate default
      !
      !
      vxml version 2.0
      vxml allow-star-digit
      !
      sccp local Loopback1
      sccp ccm 10.12.99.254 identifier 1 version 7.0
      sccp
      !
      sccp ccm group 1
      associate ccm 1 priority 1
      associate profile 2 register transcoder
      !
      dspfarm profile 2 transcode
      codec g711ulaw
      codec g711alaw
      codec g729ar8
      codec g729abr8
      codec g729br8
      codec g729r8
      maximum sessions 4
      associate application SCCP
      !
      telephony-service
      sdspfarm units 2
      sdspfarm tag 2 transcoder
      max-ephones 25
      max-dn 25
      ip source-address 10.12.99.254 port 2000
      auto assign 1 to 25
      date-format dd-mm-yy
      max-conferences 8 gain -6
      moh music-on-hold.au
      multicast moh 239.0.0.1 port 2000
      transfer-system full-consult

      Схема простая, звонок приходит по SIP и обрабатывается 3004-ым диалпиром, далее меняется номер на 500 и отправляется на диалпир 5001 где должно срабатывать меню. но на 5001ом идет несовместимость кодеков и идет отбой.

      Delete
    5. Доброе утро, Сергей!

      А на обоих диал-пирах одновременно не пробовали прописать кодек G711?

      Delete
    6. Добрый день!

      в данном случае оказалось проблема с диалпиром, который отправлял на IVR. Не знаю почему, но IVR заработал когда я создал два диалпира:

      dial-peer voice 5001 voip
      description IVR
      service ivrr
      session target ipv4:10.10.11.5
      incoming called-number 555
      dtmf-relay h245-alphanumeric
      codec g711ulaw
      !
      dial-peer voice 5002 voip
      description IVR
      service ivrr
      destination-pattern 555
      session target ipv4:10.10.11.5
      dtmf-relay h245-alphanumeric
      codec g711ulaw

      После этого все заработало.

      Эту же схему применил на двух других шлюзах (но уже без транскодинга) там так же все работает.

      начал настраивать на еще одной железке подобную конфигурацию с транкодингом, только уже с кодека g711alaw в g711ulaw. и опять все встало. конфиг такой:

      voice service voip
      allow-connections h323 to h323
      allow-connections h323 to sip
      allow-connections sip to h323
      allow-connections sip to sip
      sip
      !
      voice-card 0
      dsp services dspfarm
      !
      interface Loopback1
      description Voice interface
      ip address 10.10.11.10 255.255.255.255
      h323-gateway voip interface
      !
      sccp local Loopback1
      sccp ccm 10.12.19.254 identifier 1 version 7.0
      sccp
      !
      sccp ccm group 1
      associate ccm 1 priority 1
      associate profile 1 register Transcoder
      !
      dspfarm profile 1 transcode
      codec g729r8
      codec g711ulaw
      codec g711alaw
      codec g729ar8
      codec g729abr8
      maximum sessions 4
      associate application SCCP
      !
      dial-peer voice 50000 voip
      description **Incoming Call from SIP Trunk**
      translation-profile incoming TP_INCOMING
      session protocol sipv2
      session target ipv4:10.222.16.10
      incoming called-number .%
      dtmf-relay rtp-nte
      codec g711alaw
      no vad
      !
      dial-peer voice 3002 voip
      description IVR
      service ivrr
      session target ipv4:10.10.11.10
      incoming called-number 555
      dtmf-relay h245-alphanumeric
      codec g711ulaw
      no vad
      !
      dial-peer voice 3003 voip
      description IVR
      service ivrr
      destination-pattern 555
      session target ipv4:10.10.11.10
      dtmf-relay h245-alphanumeric
      codec g711ulaw
      no vad

      конфиг по сути отличается только указанием кодека на входящем диалпире.

      при звонке прилетает вот такое sip-сообщение:

      *Apr 21 10:31:45.289: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:
      Sent:
      SIP/2.0 488 Not Acceptable Media
      Via: SIP/2.0/UDP 10.222.16.10:5060;branch=z9hG4bKc05t011088jhufc7n1j1.1
      From: "anonymous" ;tag=kqiave7r0d
      To: "2282970" ;tag=1052BFCC-18E1
      Date: Mon, 21 Apr 2014 10:31:45 GMT
      Call-ID: 41ee2a2ru3v74fm7v@10.66.85.2
      CSeq: 499 INVITE
      Allow-Events: telephone-event
      Warning: 304 10.222.17.112 "Media Type(s) Unavailable"
      Reason: Q.850;cause=65
      Server: Cisco-SIPGateway/IOS-12.x
      Content-Length: 0

      транкодер активен:
      vrn#sh dspfarm dsp all
      SLOT DSP VERSION STATUS CHNL USE TYPE RSC_ID BRIDGE_ID PKTS_TXED PKTS_RXED

      0 1 28.3.9 UP N/A FREE xcode 1 - - -
      0 1 28.3.9 UP N/A FREE xcode 1 - - -
      0 1 28.3.9 UP N/A FREE xcode 1 - - -
      0 2 28.3.9 UP N/A FREE xcode 1 - - -

      Total number of DSPFARM DSP channel(s) 4

      Можете подсказать в чем проблема?

      если убрать кодек на входящем диалпире звонок отбивается с тем же сообщением. Если звонок трансферить не на IVR то все работает нормально.

      Delete
    7. Добрый день, Сергей. Сложно так сразу сказать. :( Нужно моделировать всю ситуацию у себя в лабе, а на это необходимо время, которого в данный момент нету. :(

      Delete
    8. Все оказалось просто... нужно указать :

      telephony-service
      sdspfarm units 1
      sdspfarm transcode sessions 8

      вот последней строчки у меня не было, добавил - заработало. В вашем примере ее тоже нет, очевидно что когда настраивал в прошлый раз взял ее из другой статьи
      http://www.cisco.com/c/en/us/support/docs/voice-unified-communications/unified-border-element/99863-cube-config.html#transcoding

      и кстати настраивая уже на следующем роутере ту же схему у меня опять не заработало. методом научного тыка попробовал увеличить кол-во сессий с 4х до 8ми и все пошло. кому то может пригодиться.


      Delete
    9. Сергей, спасибо за обмен опытом. Я думаю, что это еще не одному цискарю пригодится.

      По поводу sdspfarm transcode sessions 8 - в статье действительно этого нет, но я спрашивал у Вас настроена ли эта команда (22.03.2014, см. нашу переписку выше). Нужно будет добавить эту строчку в статью.

      Delete
    10. Добрый день! Хочу выразить огромную благодарность Сергею Волкову. Его метод решения проблемы (совершенно не понимаю, как он действует), добавить дополнительный диал-пир, что б заработал IVR, меня осчастливил! У меня ушло уйму времени, на этот IVR, я уже было отчаялся, но наконец-то прорыв! :))) Сергей, спасибо тебе большое, что поделился своим решением!

      Отдельное спасибо Вам Дмитрий! Без вашего блога, люди бы не обменивались опытом в решении проблем, а я бы продолжал искать ответ на свой вопрос. Да будет свет!

      Delete
  45. Александр13 May, 2014 00:08

    Добрый день!

    Читая Ваш Блог, хотел бы выразить Благодарность за столь развернутые материалы!

    Возник вот какой вопрос.

    Есть CUCM 8.6, CUCME 2951 c PVDM3-128, и двумя платами VWIC3-2MFT-T1/E1
    Исторически сложилось так, что CCM c CCME агрегированы по Н.323 как gateway не с использованием MGCP.

    На ССМЕ есть транки SIP, 3-и PRI подключпения к разным операторам связи на ТфОП.

    Проблема состоит в следующем при звонках с ССМ в город все нормально проходит, вот только звонки проходящие через третий PRI поток проходят без гудка вызова. Т.е. тишина, а потом на том конце человек поднимает трубку. Ни транскодинг ни МТР не включены. С Оператором общались он выслал следующее:

    > по проблеме с КПВ необходимо проверять настройки вашего оборудования.
    > С нашей стороны по сигнализации DSS1 мы отдаем вам сообщение ALERTING
    > , что видно из трейса:
    >
    > PA-MSG : сообщение от вашего оборудования
    > PA-CMD : сообщение, которые мы отдаем к вашему оборудованию.
    >
    >

    ReplyDelete
  46. Александр13 May, 2014 00:10

    Вот следующая часть:

    Вот некоторые настройки CCME:
    controller E1 0/0/0
    pri-group timeslots 1-31
    !
    controller E1 0/0/1
    pri-group timeslots 1-31
    !
    controller E1 0/1/0
    pri-group timeslots 1-31
    !
    controller E1 0/1/1
    pri-group timeslots 1-31
    !
    interface Serial0/0/0:15
    no ip address
    encapsulation hdlc
    isdn switch-type primary-net5
    isdn incoming-voice voice
    isdn sending-complete
    no cdp enable
    !
    !
    interface Serial0/0/1:15
    no ip address
    encapsulation hdlc
    isdn switch-type primary-net5
    isdn incoming-voice voice
    no cdp enable
    !
    !
    interface Serial0/1/0:15
    no ip address
    encapsulation hdlc
    isdn switch-type primary-net5
    isdn incoming-voice voice
    isdn sending-complete
    no cdp enable
    !
    !
    interface Serial0/1/1:15
    no ip address
    encapsulation hdlc
    isdn switch-type primary-net5
    isdn incoming-voice voice
    isdn sending-complete
    no cdp enable
    !
    voice-port 0/0/0:15
    !
    voice-port 0/1/0:15
    !
    voice-port 0/0/1:15
    !
    voice-port 0/1/1:15
    !
    dial-peer voice 1 pots
    incoming called-number .
    direct-inward-dial
    !
    dial-peer voice 2 pots
    translation-profile outgoing Out1
    destination-pattern .Т
    port 0/0/1:15
    forward-digits all

    Необходимо ли наличие транскодинга в этом сулчае? Т.к. на СИП направления все нормально проходит, а вот с эти диалпиром на внешку нет гудков, но вызов на той стороне проходит и когда поднимают трубку все слышно и разговор нормально.

    За ранее благодарю!

    ReplyDelete
    Replies
    1. Добрый день, Александр! Спасибо за Ваш отзыв.

      По поводу проблемы: попробуйте прописать в диал-пире 2 команду progress_ind alert enable 8. Отпишитесь, пожалуйста, по результату, помогло или нет.

      Хорошего дня!

      Delete
  47. Добрый день, Дмитрий!

    не получается настроить транскодинг на CUCME для совместной работы с IVR. Проблема аналогична описанной выше Sergey Volkov. После добавления дополнительного диал-пира, транскодинг заработал, но если из IVR перевести звонок на телефон не идет голос. Можете мне помочь в решении?

    ReplyDelete
    Replies
    1. Добрый день, Константин.

      Правильно ли я понимаю, что приветствия IVR Вы слышите, а после перевода вызова на телефон и ответе на нем голоса нет?

      Delete
  48. Добрый день, Дмитрий!

    да, правильно понимаете.

    ReplyDelete
    Replies
    1. У вас NAT используется? При переводе звонка на телефон транскодер не будет задействован, скорее всего, поскольку телефон поддерживает и кодек 729, и кодек 711.

      Delete
  49. Нет, ната нет. По логам после перевода звонка, CME отправляет на SIP телефон INVITE, получает Trying, Ringing и начинается карусель из бесконечных посылок ОК от телефона.По логам CME их видит но не реагирует.

    ReplyDelete
    Replies
    1. A можно взглянуть на сам лог звонка? Можете мне прислать адрес своей почты через форму связи, я вам напишу адрес своей.

      Delete
  50. Доброго времени суток коллега!
    Настроил конференцию ad-hoc, но на сколько я понимаю вычитав на cisco.com, что ad-hoc конференция ограничивает количество участников не более 8. Действительно ли это так в том смысле, что может быть есть какая то возможность собрать ad-hoc конференцию более чем с 8 участниками

    ReplyDelete
  51. Дмитрий, спасибо огромное за статью!
    Сделал всё как написано, всё работает, всё хорошо...но столкнулся с одним "но": стоит только задать команду hardware conference, как конференция перестаёт работать - телефон при нажатии кнопки "Конф" говорит "Невозможно создать конференцию"... Хотелось бы чтобы аппаратно реализовывалась конференция, но что-то не хочет никак... Пробовал по-разному уже - никакого результата =(

    ReplyDelete
    Replies
    1. Здравствуйте, а Вы создали отдельный ephone-dn для конференции? Все делали так, как описано в приведенной pdf-ке?

      Delete
    2. Хм, а вот про отдельный ephone-dn увидел только в комментариях =) Добавил - заработало. Кстати, а в чём логика? Зачем системе отдельный ephone-dn да ещё и с восемью линиями, да ещё и с отдельным номером? Конференцию планирую собирать не более двух человек...и отдельный номер не хочется иметь. Кстати, при звонке на этот номер идёт отбой "невозможно создать конференцию"..зачем он тогда?

      P.S. Если conference hardware не включен, получается конференция собирается силами софта или как?

      Delete
    3. Да, если не включен conference hardware, то конфа будет средствами софта. В моем понимании отдельный dn используется потому, что мы задействуем конференц-мост. И нужны отдельные голосовые каналы к нему для каждого участника. 8 линий как раз и надо, чтобы обеспечить до 8 участников в конфе. Это максимальное количество для CME.

      Delete
    4. А есть какой-то опыт с софтовой обработкой такой конференции - насколько она сильно грузит систему и сколько максимально человек позволяет собирать? По опыту есть ли какие-то "нехорошести" при использовании софтовой конференции?

      Дмитрий и такой момент ещё - игрался с транскодингом, пытался заставить включиться аппаратный. Получилось включить DSP только при хитрой комбинации кодеков типа iLBC (CIPC) - G729. Если использовать, к примеру, G722-64<->G711u/a, то транскодинг насколько понимаю софтовый задействуется - ресурсы DSP всё время свободны при любом количестве одновременных звонков. А есть какой-то способ принудительно транскодировать на DSP, чтобы быть уверенным в том, что если все вдруг начнут звонить, то железка не упадёт от перегрузки CPU?

      Delete
    5. Нет, у меня какой-то статистики по софтовой конфе на СМЕ нет. Максимально в конфе будет 3 участника. Сколько таких одновременных конференций может быть сразу затрудняюсь ответить - надо доку смотреть. Обычно при наличии DSP мы всегда конфигурировали аппаратную конфу.

      По транскодингу G722-G711: а Вы точно уверены, что именно такая комбинация кодеков была в плечах звонка? Дело в том, что телефоны циско поддерживают G722, G711u/a, G729 по дефолту, и как правило, очень редко нужно использовать транскодинг. Можете описать как именно Вы звоните? Без понимания этого мне очень сложно сказать, почему так себя ведет ваш СМЕ.

      Delete
  52. На телефонах G722-64, на CME к провайдеру G711 и G729 SIP транки. Плюс ещё несколько софтовых телефонов CIPC по iLBC. Не готов сейчас конкретно сказать конфигурацию на которой заработал DSP, в какой-то из конфигурация включился.

    Вы говорите о том, что транскодинг не обязательно должен быть даже если разные кодеки везде? То есть CME может "сказать" телефону использовать тот кодек, который он согласовал при установлении соединения по SIP? Я думал собственно по причине того, что разные кодеки с двух сторон без транскодинга никак не обойтись...

    ReplyDelete
    Replies
    1. Я не сказал дословно, что "транскодинг не обязательно должен быть даже если разные кодеки везде". Транскодинг применяется тогда, когда стороны не могут договориться об общем кодеке, иными словами тогда, когда одна из сторон не поддерживает предлагаемый кодек.

      В ситуации при звонке по транку следует понимать следующее правило: For calls to phones that are not in the same Cisco Unified CME system (such as VoIP calls), the codec is negotiated based on the protocol that is used for the call (such as H.323). The Cisco Unified CME system plays no part in the negotiation.

      Иными словами, выбор кодека будет базироваться на свойствах телефона и транка, но определяться настройками транка. На транках G729 и G711. Телефоны циско поддерживают эти кодеки, транскодер не вовлекается в звонок. Если же будет телефон, который, например, поддерживает только ilbc или G723, то тогда будет искаться и подключаться ресурс транскодирования.

      Delete