2014-02-13 6 views
0

Я пытаюсь запросить менеджер вызовов 8.5+ непосредственно из командной строки (в конце концов, я положу это в Axl)Cisco SQL запросов Unified Call Manager

В настоящее время мой запрос выглядит следующим образом

run sql select dp.name as Site, tm.name as Model, count(tm.name) as Total from Device as d inner join DevicePool as dp on(d.fkDevicePool = dp.pkid) inner join typemodel as tm on(tm.enum = d.tkmodel) where (tm.name <> 'Analog Phone' and tm.name <> 'Conference Bridge' and tm.name <> 'CTI Route Point' and tm.name <> 'CTI Port' and tm.name <> 'MGCP Station' and tm.name <> 'Route List' and tm.name <> 'H.323 Gateway' and tm.name <> 'Music On Hold' and tm.name <> 'Media Termination Point' and tm.name <> 'Tone Announcement Player' and tm.name <> 'Cisco IOS Conference Bridge (HDV2)' and tm.name <> 'Cisco IOS Software Media Termination Point (HDV2)' and tm.name <> 'Cisco IOS Media Termination Point (HDV2)' and tm.name <> 'SIP Trunk') group by dp.name, tm.name order by dp.name 

это результаты в этом

site   model        total 
============== ================================= ===== 
SITE1-NUANCE-DP Third-party SIP Device (Advanced) 1 
SITE1-PHONES-DP Cisco 8945      351 
SITE1-PHONES-DP Cisco 6941      25 
SITE1-PHONES-DP Cisco 7925      310 
SITE1-PHONES-DP Cisco 7937      3 
SITE1-PHONES-DP Cisco 8961      293 
SITE1-PHONES-DP Cisco IP Communicator    1 
SITE2-PHSRST-DP Cisco 7937      1 
SITE2-PHSRST-DP Cisco 6941      1 
SITE2-PHSRST-DP Cisco 8961      143 
SITE2-PHSRST-DP Cisco 8945      21 

Что я действительно хочу увидеть хоть что-то вроде этого

site   total 
============== ===== 
SITE1-PHONES-DP 300 
SITE2-PHONES-DP 350 

Я буду здесь, я узнал немного sql, который я знаю вчера из веб-поиска. Я не знаю, можете ли вы выполнять манипуляции с строкой или что-то еще, потому что действительно я хотел бы отбросить часть -phones-dp под сайт, но это не критично. Мне просто нужно, чтобы запрос позволял людям плохо читать математику, чтобы получить номер. в текущем состоянии, они должны добавить все, что может быть БЕСПЛАТНО! Любая помощь очень ценится! благодаря!

+1

ЗАКАНЧИВАТЬ таблицу класса типов. В таблице устройств есть ссылка на него, и это может помочь отфильтровать ваши результаты без «tm.name <>» Вы также можете обрабатывать результаты (например, применять фильтры, вычисления) в том, что вы используете для размещения вызова AXL. Это может выгрузить несколько циклов из CUCM, которые могут быть заняты обработкой вызовов. –

ответ

0

Исходя из того, что вы заявили, я хотел бы попробовать что-то вроде этого:

select dp.name as Site 
,count(tm.name) as Total 
from Device as d 
inner join DevicePool as dp on(d.fkDevicePool = dp.pkid) 
inner join typemodel as tm on(tm.enum = d.tkmodel) 
where (
     tm.name <> 'Analog Phone' 
     and tm.name <> 'Conference Bridge' 
     and tm.name <> 'CTI Route Point' 
     and tm.name <> 'CTI Port' 
     and tm.name <> 'MGCP Station' 
     and tm.name <> 'Route List' 
     and tm.name <> 'H.323 Gateway' 
     and tm.name <> 'Music On Hold' 
     and tm.name <> 'Media Termination Point' 
     and tm.name <> 'Tone Announcement Player' 
     and tm.name <> 'Cisco IOS Conference Bridge (HDV2)' 
     and tm.name <> 'Cisco IOS Software Media Termination Point (HDV2)' 
     and tm.name <> 'Cisco IOS Media Termination Point (HDV2)' 
     and tm.name <> 'SIP Trunk' 
    ) 
group by dp.name 
order by dp.name 
+0

Также исследуйте функцию замены, так как это поможет вам удалить «-PHONES-DP» из поля «dp.name» – j03z

+0

Хороший звонок на замену! Я использовал java для запуска запроса и ввода в xml, а затем с помощью powershell для удаления -PHONES-DP из xml и экспорта в csv! делать все это в SQL гораздо приятнее: D – driz