山海鲸可视化

访客管理(千人千面)

访客管理通常指的是通过 Web 链接访问大屏时,需要使用账号和密码来查看。(关于如果把项目发布成 Web 链接,请参考该教程 →_→项目发布

通过访客管理,我们不仅可以实现对大屏看板的访问进行权限控制,而且可以实现不同的人员只能查看不同的页面内容。例如:公司领导可以看到所有页面内容,部门 A 的用户只能看到页面 1 的内容,部门 B 的用户只能看到页面 2 的内容。

具体设置流程如下:

1. 打开设置

在项目编辑界面点击“项目”菜单,打开“项目设置”。
image.png

打开项目设置窗口。
image.png

2. 访客信息设置

点击“添加访客”按钮。
image.png

点击“添加访客”后,可以创建一个访客账户。
image.png

然后我们可以对账户的昵称、账号和密码进行设置。
image.png

3. 子看板权限设置

在这里可以设置当前访客账号可以查看的子看板内容,勾选后的代表可以查看,否则就无法查看。
image.png

4. 项目参数设置

在这里可以设置该访客可以使用的项目参数。
image.png

在选择参数之前,需要先在“项目参数”中添加参数(关于项目参数的使用场景,请参考该教程 →_→项目参数)。
image.png

项目参数添加完成后,就可以在访客管理中进行设置了。
image.png

当我们给访客设置一个项目参数后,该访客在打开项目时,会自动将项目中的项目参数修改为这里设置的默认值,而无需通过参数传递来修改。
image.png

项目参数如果未锁定,该访客就就可以对这些参数进行修改,如果锁定了,则这些参数将不允许进行修改,只能使用这里设置的默认值。(关于项目参数的修改,请参考该教程 →_→项目参数
image.png

5. 参数传递给数据源

通过将参数传递给数据源,就可以达到返回不同数据的效果了,请参考这篇教程:如何通过传递参数让大屏展示不同数据

6. 打开项目

创建访客账户后,直接打开项目的 Web 链接时,需要输入账号和密码。
image.png
如果不希望通过输入账号密码的方式进行登录,我们也可以把账号密码通过链接参数的方式进行传递。

7. 授权免登录

很多时候,我们需要将项目链接集成到其他系统当中,而其他系统已经有了账号登录,这个时候希望能实现一个访客账号的自动授权,这个如何用代码实现呢。首先我们可以参考一下如何将项目发布链接集成到自己系统当中的文档 →_→iFrame 方式集成山海鲸链接
需要实现授权免登录,只需要在山海鲸分享链接后面添加三个参数, 分别是 name,timeStamp 和 token。下面简单的看下三个参数的计算方法:
name 参数就是访客的账号,如果访客账号是中文,则使用 urlencode 后的字符串传入。
timeStamp 是当前授权访问的过期时间戳,单位的毫秒。也就是从 1970 年 1 月 1 日至过期时间的毫秒数。一般是 13 位的数字
token 的计算方式是: token=md5(name+password+timeStamp) name 就是刚刚访客的账号,password 就是访客的密码,timeStamp 就是刚刚的过期时间戳。+是指字符串链接。md5 代表取这个连接后字符串的 32 位小写 md5 值。不同的语言都有对应的函数可以使用。
举个例子:
访客管理中有一个访客,账号是test,密码是123456,如图:
image.png
项目分享的链接是:http://192.168.31.136:1025/hnyxjkvwiz5g/
我们希望用户在 2023 年 12 月 31 日 23 点 59 分 59 秒前可以合法免密登录,那么这个时候我们免密登录的链接是这样的:
http://192.168.31.136:1025/hnyxjkvwiz5g/?name=test&timeStamp=1704038399000&token=a3ef0d4882079bbeb9eed50aef7ba479
其中 name 就是访客账户,timeStamp 就是 13 位的时间戳对应 2023 年 12 月 31 日 23 点 59 分 59 秒的时间,而 token 是通过 md5(test1234561704038399000)得到的 32 位字符串,通过这个链接就可以直接实现免密登录。