Чтобы не забыть, как же настраивается transcoding (перекодирование из одного кодека в другой) на Cisco IOS.
Собственно есть sip trunk работающий с кодеком g711ulaw и есть h323 trunk с кодеком g729b. Cisco выступают в качестве шлюза.
Привожу собственно настройку маршрутизатора Cisco 2851.
Настройка интерфейса
interface GigabitEthernet0/0.1
description inside lan megiongeo.com
encapsulation dot1Q 1 native
ip address 192.168.1.1 255.255.255.0
ip nat inside
Указываем что это локальный sccp и его адрес, также указываем версию. На версии ios 15, это будет 7.0
sccp local GigabitEthernet0/0.1
sccp ccm 192.168.1.1 identifier 1 version 7.0
Создаем ccm и привязываем sccp, так же указываем имя
sccp ccm group 1
associate ccm 1 priority 1
associate profile 1 register Local-Code
switchover method immediate
switchback method immediate
Создаем профиль transcoding и указываем какие кодеки надо транскодировать, количество сессий и с каким приложение ассоциировать
dspfarm profile 1 transcode universal
codec g711ulaw
codec g711alaw
codec g729ar8
codec g729abr8
codec g729br8
codec g729r8
maximum sessions 6
associate application SCCP
Создаем телефонный сервис
telephony-service
sdspfarm units 1
sdspfarm transcode sessions 128
sdspfarm tag 1 Local-Code
max-ephones 1
max-dn 1
ip source-address 192.168.1.1 port 2000
max-conferences 8 gain -6
transfer-system full-consult
Имя профиля в настройках ccm и telephony-service должны совпадать, у меня это имя Local-Code.
После прописывания выполняем последнюю команду, которая запустит sccp. Это команда
sccp
.
Проверяем работоспособность transcoding’a
#sh sccp
SCCP Admin State: UP
Gateway Local Interface: GigabitEthernet0/0.256
IPv4 Address: 192.168.1.1
Port Number: 2000
IP Precedence: 5
User Masked Codec list: None
Call Manager: 192.168.1.1, Port Number: 2000
Priority: N/A, Version: 7.0, Identifier: 1
Trustpoint: N/ATranscoding Oper State: ACTIVE — Cause Code: NONE
Active Call Manager: 192.166.116.10, Port Number: 2000
TCP Link Status: CONNECTED, Profile Identifier: 1
Reported Max Streams: 12, 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: g729br8, Maximum Packetization Period: 60
Supported Codec: g729r8, 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
Как видим состояние Transcoding Oper State: ACTIVE. Идем дальше
#sh sdspfarm units
mtp-1 Device:Local-Code TCP socket:[1] REGISTERED in SCCP ver 17/10
actual_stream:12 max_stream 12 IP:192.166.116.10 29823 MTP Dixieland keepalive 9377
Supported codec:
G711Ulaw
G711Alaw
G729
G729a
G729b
G729ab
Universal Xcodermax-mtps:1, max-streams:256, alloc-streams:12, act-streams:0
Так же видим, что устройство зарегистрировано и список кодеков. И напоследок
#sh dspfarm all
Dspfarm Profile ConfigurationProfile ID = 1, Service = TRANSCODING, 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 : 6
Number of Resource Available : 6
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 : g729br8, Maximum Packetization Period : 60
Codec : g729r8, Maximum Packetization Period : 60SLOT DSP VERSION STATUS CHNL USE TYPE RSC_ID BRIDGE_ID PKTS_TXED PKTS_RXED
0 1 26.3.1 UP N/A FREE xcode 1 — — —
0 1 26.3.1 UP N/A FREE xcode 1 — — —
0 1 26.3.1 UP N/A FREE xcode 1 — — —
0 2 26.3.1 UP N/A FREE xcode 1 — — —
0 2 26.3.1 UP N/A FREE xcode 1 — — —
0 2 26.3.1 UP N/A FREE xcode 1 — — —Total number of DSPFARM DSP channel(s) 6
При звонке будут заниматься dsp слоты.
PS. Самое главное для работы transcoding в маршрутизаторе должны быть установлены PVDM, именно оттуда используются dsp.