aboutsummaryrefslogtreecommitdiffhomepage
path: root/scripts
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2022-03-24 13:36:47 +0100
committerChocobozzz <chocobozzz@cpy.re>2022-04-15 09:49:35 +0200
commitb211106695bb82f6c32e53306081b5262c3d109d (patch)
treefa187de1c33b0956665f5362e29af6b0f6d8bb57 /scripts
parent69d48ee30c9d47cddf0c3c047dc99a99dcb6e894 (diff)
downloadPeerTube-b211106695bb82f6c32e53306081b5262c3d109d.tar.gz
PeerTube-b211106695bb82f6c32e53306081b5262c3d109d.tar.zst
PeerTube-b211106695bb82f6c32e53306081b5262c3d109d.zip
Support video views/viewers stats in server
* Add "currentTime" and "event" body params to view endpoint * Merge watching and view endpoints * Introduce WatchAction AP activity * Add tables to store viewer information of local videos * Add endpoints to fetch video views/viewers stats of local videos * Refactor views/viewers handlers * Support "views" and "viewers" counters for both VOD and live videos
Diffstat (limited to 'scripts')
-rw-r--r--scripts/benchmark.ts8
-rwxr-xr-xscripts/ci.sh3
2 files changed, 7 insertions, 4 deletions
diff --git a/scripts/benchmark.ts b/scripts/benchmark.ts
index 623c11e27..4a414a2fa 100644
--- a/scripts/benchmark.ts
+++ b/scripts/benchmark.ts
@@ -153,21 +153,23 @@ async function run () {
153 } 153 }
154 }, 154 },
155 { 155 {
156 title: 'API - watching', 156 title: 'API - views with token',
157 method: 'PUT', 157 method: 'PUT',
158 headers: { 158 headers: {
159 ...buildAuthorizationHeader(), 159 ...buildAuthorizationHeader(),
160 ...buildJSONHeader() 160 ...buildJSONHeader()
161 }, 161 },
162 body: JSON.stringify({ currentTime: 2 }), 162 body: JSON.stringify({ currentTime: 2 }),
163 path: '/api/v1/videos/' + video.uuid + '/watching', 163 path: '/api/v1/videos/' + video.uuid + '/views',
164 expecter: (body, status) => { 164 expecter: (body, status) => {
165 return status === 204 165 return status === 204
166 } 166 }
167 }, 167 },
168 { 168 {
169 title: 'API - views', 169 title: 'API - views without token',
170 method: 'POST', 170 method: 'POST',
171 headers: buildJSONHeader(),
172 body: JSON.stringify({ currentTime: 2 }),
171 path: '/api/v1/videos/' + video.uuid + '/views', 173 path: '/api/v1/videos/' + video.uuid + '/views',
172 expecter: (body, status) => { 174 expecter: (body, status) => {
173 return status === 204 175 return status === 204
diff --git a/scripts/ci.sh b/scripts/ci.sh
index a45f91a6b..2dd5e25ce 100755
--- a/scripts/ci.sh
+++ b/scripts/ci.sh
@@ -84,8 +84,9 @@ elif [ "$1" = "api-3" ]; then
84 npm run build:server 84 npm run build:server
85 85
86 videosFiles=$(findTestFiles ./dist/server/tests/api/videos) 86 videosFiles=$(findTestFiles ./dist/server/tests/api/videos)
87 viewsFiles=$(findTestFiles ./dist/server/tests/api/views)
87 88
88 MOCHA_PARALLEL=true runTest "$1" $((3*$speedFactor)) $videosFiles 89 MOCHA_PARALLEL=true runTest "$1" $((3*$speedFactor)) $viewsFiles $videosFiles
89elif [ "$1" = "api-4" ]; then 90elif [ "$1" = "api-4" ]; then
90 npm run build:server 91 npm run build:server
91 92