Exemplo de consultas de bancos de dados CDR
Tópico modificado em: 2010-12-14
Esta seção contém exemplos de consultas para o banco de dados CDR (registro de detalhes das chamadas).
Use o exemplo a seguir para obter os participantes da conferência organizados por um determinado usuário e em um intervalo de tempo específico.
declare @Organizer nvarchar(256)
declare @StartTime datetime
declare @EndTime datetime
set @Organizer = 'luka@contoso.com'
set @StartTime = DATEADD(d, -1, getdate())
set @EndTime = GETDATE()
--user join/leave information for signalling
select cu.ConferenceUri, u.UserUri, cv.Version, fjl.UserJoinTime, fjl.UserLeaveTime, r.Role, fjl.IsUserInternal from FocusJoinsAndLeaves fjl
inner join Conferences c on fjl.SessionIdTime = c.SessionIdTime and fjl.SessionIdSeq = c.SessionIdSeq
inner join ConferenceUris cu on c.ConferenceUriId = cu.ConferenceUriId
inner join Users u on u.UserId = fjl.UserId
left join Users org on org.UserId = c.OrganizerId
left join ClientVersions cv on cv.VersionId = fjl.ClientVerId
left join Roles r on r.RoleId = fjl.UserRole
where org.UserUri = @Organizer and fjl.SessionIdTime between @StartTime and @EndTime
--User join/leave information for different conference modalities
select cu.ConferenceUri, ut.UriType, u.UserUri, mjl.UserJoinTime, mjl.UserLeaveTime, mjl.IsFromPstn
from McuJoinsAndLeaves mjl
inner join Conferences c on mjl.SessionIdTime = c.SessionIdTime and mjl.SessionIdSeq = c.SessionIdSeq
inner join ConferenceUris cu on c.ConferenceUriId = cu.ConferenceUriId
inner join Users u on u.UserId = mjl.UserId
left join Users org on org.UserId = c.OrganizerId
left join Mcus m on m.McuId = mjl.McuId
Use o seguinte exemplo para localizar o número total da rede telefônica pública comutada (PSTN) para chamadas de UC (Comunicações Unificadas):
Select Count(*) as 'Number of PSTN to UC Calls'
From VoipDetails as voipd
Join SessionDetails as sd on (voipd.SessionIdTime = sd.SessionIdTime and voipd.SessionIdSeq = sd.SessionIdSeq and sd.User1Id is null)
and FromNumberId in (SELECT PhoneId from Phones)
and FromGatewayId is not null
Use o seguinte exemplo para localizar o número total de conferências que usaram o Console de Reunião:
select COUNT(*) as 'Live Meeting Count' from
(
SELECT distinct c.SessionIdTime, c.SessionIdSeq
from McuJoinsAndLeaves as mj
inner join Mcus m on m.McuId = mj.McuId
inner join Conferences c on c.SessionIdTime = mj.SessionIdTime and c.SessionIdSeq = mj.SessionIdSeq
inner join UriTypes ut on ut.UriTypeId = m.McuTypeId
where ut.UriType= 'conf:data-conf'
) tmp
Use o seguinte exemplo para localizar o número total de chamadas redirecionadas:
select COUNT(*) as 'Number of Redirected Calls' from SessionDetails
where ReferredById is not null