Group by bit column

I want Group by rows with active column like result

I tray with this code and I Do not get result

    WITH CTE as (   SELECT     RN = ROW_NUMBER() OVER (ORDER BY id),     *   FROM test ) SELECT   convert(nvarchar(50),[Current Row].datetime,120) + ' To ' +  convert(nvarchar(50),[Next Row].datetime,120)  FROM CTE [Current Row] LEFT JOIN CTE [Previous Row] ON   [Previous Row].RN = [Current Row].RN - 1  and (ISNULL( [Previous Row].active,0)=0) and [Current Row].active=1 RIGHT JOIN CTE [Next Row] ON   [Next Row].RN = [Current Row].RN + 1  and [Current Row].active=1 and isnull([Next Row].active,0)=0 
id date active
1 2021-08-08 12:05:17.817 1
2 2021-08-08 12:05:20.817 1
3 2021-08-08 12:05:23.817 1
4 2021-08-08 12:05:26.817 1
5 2021-08-08 12:05:29.817 1
6 2021-08-08 12:05:32.817 1
7 2021-08-08 12:05:35.817 1
8 2021-08-08 12:05:38.817 1
9 2021-08-08 12:05:41.817 0
10 2021-08-08 12:05:44.817 0
11 2021-08-08 12:05:47.817 1
12 2021-08-08 12:05:50.817 1
13 2021-08-08 12:05:53.817 0
14 2021-08-08 12:05:56.817 0
15 2021-08-08 12:05:59.817 1
16 2021-08-08 12:06:02.817 0
17 2021-08-08 12:06:05.817 1
18 2021-08-08 12:06:08.817 1
19 2021-08-08 12:06:11.817 1
20 2021-08-08 12:06:14.817 0
21 2021-08-08 12:06:17.817 1
22 2021-08-08 12:06:20.817 1

and get rusult like this

date duration count
2021-08-08 12:05:17.817 To 2021-08-08 12:05:38.817 00:00:24 8
2021-08-08 12:05:47.817 To 2021-08-08 12:05:50.817 00:00:06 2
2021-08-08 12:05:56.817 To 2021-08-08 12:05:59.817 00:00:03 1
2021-08-08 12:06:05.817 To 2021-08-08 12:06:11.817 00:00:09 3
2021-08-08 12:06:17.817 To 2021-08-08 12:06:20.817 00:00:06 2

i want group by with active and date like top result