当前您所在的位置:首页>新闻中心>新品发布
新品发布
行业动态
营销活动

Wowza技术:?如何对用户的播放记录进行采集和统计?

发布时间:2020/08/27 浏览量:1863

如何对用户的播放记录进行采集和统计?

Wowza Stream Engine 4 默认会以匿名方式记录access 或 stats 日志。要让Wowza Stream Engine 4的流传输日志包含用户信息, 首先(1)你必须唯一标识一个用户,其次(2)要将用户的UID作为查询参数添加到流媒体播放URL中,最后(3)在Wowza Media Server的/conf/log4j.properties文件中的access 以及/或 stats Appender 的字段列表中添加x-sname-query字段。这里有一些可选项和细节:

1.标识一个用户

a.如果你正在使用类似JW Player或Flowplayer播放器,并且有一个CMS或其它web系统中的UID存储在用户浏览器的Cookie中,你可以在你的播放页面用javascript检索出这个UID,然后将它添加到Flash变量file(JW Player)或clip(Flowplayer)上。

Code:

file=sample.mp4?uid=123

b.对于一个自己开发的Flash客户端,并且有一个CMS或其它web系统中的UID存储在用户浏览器的Cookie中,你可以使用ExternalInterface来检索UID。

Code:

importflash.external.ExternalInterface;

var uid:String ="";

if(ExternalInterface.available && Application.application.url.search(/http*:/ ) == 0) {

         uid = ExternalInterface.call("getUID()");

         }

其中getUID 是一个外部的Javascript方法。

c.如果没有UID cookie, 这里有2个可选项,可以用于用户认证(需要Flash客户端):

d.对于没有采用Flash的客户端播放器。你可以直接在播放URL的后面加上UID

 

2.将UID参数添加到stream name后面

a.在使用类似JW Player 或 Flowplayer (就像上面提到的一样),你可以将UID添加在播放器的配置中

Code:

file=sample.mp4?uid=123

b.在Flash客户端的actionscript代码中,在Netstream.play命令中将UID添加到stream name后面:

Code:

netstream.play(“mp4:sample.mp4?uid=123”);

c.在使用Flash HTTP (San Jose)时

Code:

http://[wowza-address]:1935/vod/sample.mp4?uid=123/manifest.f4m

d.在使用HLS (Cupertino)时

Code:

http://[wowza-address]:1935/vod/sample.mp4/playlist.m3u8?uid=123

e.在使用RTSP时

Code:

rtsp://[wowza-address]:1935/vod/sample.mp4?uid=123

 

3.要在log4j Appender 中添加x-sname-query字段, 请用文本编辑器打开/conf/log4j.properties,找到serverAccess 字段列表,然后在列表的最后添加", x-sname-query":

Code:

log4j.appender.serverAccess.layout.Fields=x-severity,x-category,x-event;date,time,c-client-id,c-ip,c-port,cs-bytes,sc-bytes,x-duration,x-sname,x-stream-id,x-spos,sc-stream-bytes,cs-stream-bytes,x-file-size,x-file-length,x-ctx,x-comment,x-sname-query

在修改log4j.properties文件后,你必须重启Wowza Media Server。

在测试时, 在Wowza SimpleVideoStreaming 例子播放器上播放一个流:

Server: rtmp://[wowza-address]:1935/vod
Stream: mp4:sample.mp4?uid=123

现在打开访问日志(access log),你找到带有x-sname-query字段"uid=123" 的播放记录。

如果你希望这条日志记录仅仅出现uid的值,你可以播放 "mp4:sample.mp4?123"



现在,你已经了解了在什么时候、有多少用户、哪些用户、观看了什么内容。

注意: 在使用Microsoft Silverlight smooth streaming时,在url中stream name后面添加UID可能还有些问题,我们正在测试中。

北京哲想软件有限公司