页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

Ps:name属性在飞书中是可重复的,手机号、邮箱、工号是非必填属性,现场可根据实际情况设置,如不需使用自带的用户同步,可忽略;

 

...

2.

...

3. 应用单点说明

2.3.1.配置应用管理

配置应用管理信息,将应用放到工作台上。

飞书应用管理页面地址如下:

https://ghupecklnh.feishu.cn/admin/appCenter/manage

Image Added

调整应用分类

Image Added

配置应用可见范围

Image Added

配置完成后,即可在桌面版的飞书内看到该应用入口了。

Image Added

正常完成用户信息同步后,点击即可进入到smartbi首页了。

Image Added

移动端进入时,会进入到移动端首页。

...

2.

...

4. 用户组织同步

在完成集成配置后,可通过系统功能,新建任务进行信息同步。

...

2.

...

4.1. 配置同步用户组任务

如下步骤,新建任务,并将定制提供的脚本粘贴到代码编辑区。

保存后即可测试运行进行用户组同步。

Image Added

Image Added

Image Added

任务代码如下:

connector.remoteInvoke("FeiShuCommonModule","syncFeiShuGroup",[]);

...


2.

...

4.2. 配置同步用户任务

按2.2.1的步骤创建定制任务在Smartbi中创建定制任务

Image Added

宏代码如下

connector.remoteInvoke("FeiShuCommonModule","syncFeiShuUser",[true]);

...


2.

...

4.3. 执行同步用户组和用户

执行顺序:先执行用户组同步,然后再执行用户,因为在smartbi中,用户是挂靠在用户组下的,如果先执行同步用户,可能该用户的用户组在smartbi中不存在,导致同步异常;:先执行用户组同步,然后再执行用户,因为在Smartbi中,用户是挂靠在用户组下的,如果先执行同步用户,可能该用户的用户组在Smartbi中不存在,导致同步异常;

手动执行: 任务创建完成后,可手动操作上述两个任务的【测试运行】功能即可手动触发数据同步;

自动执行:如需系统定时自动执行,可创建计划绑定上述两个任务,任务顺序按用户组优先;

配置计划绑定任务:

2.4.4.手动同步

可以手工配置用户编辑页面的飞书用户ID保存,保存后该用户即可从飞书单点登录到smartbi;可以手工配置用户编辑页面的飞书用户ID保存,保存后该用户即可从飞书单点登录到Smartbi;

Image Added

...

2.

...

5. 消息推送

...

2.

...

5.1. 手动推送

配置完飞书权限后,可进到smartbi内,右键要分享的资源(仅支持电子表格,web电子表格,url链接,页面,office分析报告,自主仪表盘资源);可看到【推送到飞书应用】的操作入口。

Image Added

点击后会弹出推送到飞书应用的提示框

Image Added

点击【推送人员】后面的操作按钮,会弹窗供选择接收信息的角色,用户组或者用户

Image Added

标题内容为消息首行加粗的文本信息,必填默认为当前推送报表资源的名称。

描述为推送信息内的文字信息,可为空。

Image Added

点击图片后的【选择文件】按钮,可选择推送时带上的图片信息。

链接地址,自动生成,不允许修改,正常是读取当前访问smartbi的域名,拼接出带Image Added

链接地址,自动生成,不允许修改,正常是读取当前访问Smartbi的域名,拼接出带/vision/feishu/openresource.jsp的链接,并带上当前操作的resid

Image Added

点击推送时,会弹出推送确认。

Image Added

点击是时,将会进行推送(推送可能存在延迟),并返回推送结果。


推送成功后,将会在飞书内收到对应的信息。

Image Added

如应用单点登陆部署正常,推送的链接也是单点登陆的域名,则点击查看详情时,将会免密打开对应的报表。

...

Image Added

2.

...

5.2. 定时推送普通应用消息

通过任务脚本,定时推送普通的应用消息(带标题、消息内容、报表访问链接)到被推送用户的飞书上;

...

2.

...

5.2.1. 操作步骤

如下步骤,新建任务,并将定制提供的脚本粘贴到代码编辑区。

保存后即可测试运行推送报表到飞书。

Image Added

...

Image Added

2.

...

5.2.2. 任务脚本

// 推送资源报表到飞书,目前仅支持电子表格,web电子表格,url链接,页面,office分析报告,自主仪表盘资源

importPackage(Packages.smartbi.sdk.service.systemconfig);

/****************** 配置 - 开始******************/

// 必须配置:报表资源ID

var reportId = 'I8a8a8d2a018584b084b0fae2018584fde1d200a0';

// 必须配置:推送标题

var title = "消息标题";

// 可选配置:推送消息内容

var desc = "这是一段消息内容";

// 必须配置:接收者在Smartbi的用户,用户组或者角色id;

// 若配置的是用户,则type设置为"USER";若配置的是用户组,则type设置为"GROUP";若配置的是角色,则type设置为"ROLE";

// id需要配置对应的用户id,用户组id或者角色id

var sendUser = [

{type: "USER", id: "用户ID1"},

{type: "USER", id: "用户ID2"},

{type: "GROUP", id: "用户组ID"},

{type: "ROLE", id: "角色ID"}

];


/****************** 配置 - 结束******************/


var sendUrl = "";

var systemConfigService = new SystemConfigService(connector);

var urlConfig = systemConfigService.getSystemConfig("INTEGRATED_APPLICATION_ADDRESS");

if (urlConfig !== null && urlConfig.getLongValue() !== null && urlConfig.getLongValue() !== "") {

    sendUrl = urlConfig.getLongValue();

    if(!sendUrl.endsWith('/')){

     sendUrl = sendUrl+'/';

    }

sendUrl += "vision/feishu/openresource.jsp?feishu=true&sh=false&refresh=true&showtoolbar=false&showPath=false&iPad=true&sendTarget=auto&resid=" + reportId;

}

var sendSetting = {

reportId: reportId,

title: title,

sendUrl: sendUrl,

desc: desc,

sendUser: sendUser

};

connector.remoteInvoke("FeiShuCommonModule","sendInfoToFeiShu",[JSON.stringify(sendSetting)]);

...


2.

...

5.2.3. 配置项说明

...

1、报表资源ID:配置需要推送的报表资源的id,配置之后,点击推送消息的“查看详情”可以直接跳转Smartbi,打开对应资源。



获取报表资源id的方式如下,右键点击需要推送的报表资源,点击属性,便可以看到节点id,节点id就是报表资源id:

...



2、推送标题:配置推送此消息时,显示的标题,如截图所示红框部分:

...






3、推送消息内容:配置推送此消息时,显示的消息内容,如截图所示红框部分:

...


4、推送消息接收者,在Smartbi中对应的用户id、用户组id或者角色id:配置消息的接收者,若配置的是用户,则type设置为"USER";若配置的是用户组,则type设置为"GROUP";若配置的是角色,则type设置为"ROLE",id需要配置对应的用户id,用户组id或者角色id,id可通过查询t_user(用户表)、t_group(用户组表)和t_role(角色表)获取。

...


2.

...

5.2.4. 配置相关计划定时推送

打开计划-新建计划,绑定刚刚创建的任务设置定时时间即可;

...



2.

...

5.3. 定时推送电子表格带图的应用消息

通过任务脚本,定时推送带图的应用消息(标题、消息内容、报表导出图片、报表访问链接)到被推送用户的飞书上;

说明:导出的图片按任务任务的执行账号对报表执行导出,如果推送的报表资源对不同用户有不同数据权限,请使用2.4.2的普通应用消息进行推送。

 

...

2.

...

5.3.1. 操作步骤

如下步骤,新建任务,并将定制提供的脚本粘贴到代码编辑区。

保存后即可测试运行把资源报表导出图片,然后推送图片到飞书。

...



2.

...

5.3.2. 任务脚本

// 把资源报表导出图片,然后推送图片到飞书,目前仅支持电子表格、web电子表格

importPackage(Packages.smartbi.sdk.service.systemconfig);

/****************** 配置 - 开始******************/

// 必须配置:电子表格ID

var reportId = 'I8a8a8d2a018584b084b0fae2018584fde1d200a0';

// 必须配置:可配置推送标题

var title = "测试电子表格";

// 可选配置:推送消息内容

var desc = "这是一段消息内容";

// 必须配置:接收者在Smartbi的用户,用户组或者角色id。

// 若配置的是用户,则type设置为"USER"; 若配置的是用户组,则type设置为"GROUP"; 若配置的是角色,则type设置为"ROLE"

// id需要配置对应的用户id,用户组id或者角色id

var sendUser = [

{type: "USER", id: "用户ID1"},

{type: "USER", id: "用户ID2"},

{type: "GROUP", id: "用户组ID"},

{type: "ROLE", id: "角色ID"}

];

// 可选配置:导出电子表格的参数信息---------------------------------------------  

// 设置格式:{id:"OutputParameter.数据集ID.参数名称",value:参数真实值,displayValue:参数显示值},参数值可

// 以设置为固定值,变量,或者默认值,默认值写法:"$默认值$",例如如:{id:"OutputParameter.I2c9019810158fc12fc1224c00158fc2e21c50069.测试",value:"$默认值$",displayValue:"$默认值$"}

var reportParamSetting = [

   //{id:"OutputParameter.I8a8a9be9018671b671b6e610018671d0e80500e8.用户",value:"SCHEDULEADMIN",displayValue:"计划管理员"}//多个参数之间以逗号分隔

];

/****************** 配置 - 结束******************/


// 以下内容无需配置

var sendUrl = "";

var systemConfigService = new SystemConfigService(connector);

var urlConfig = systemConfigService.getSystemConfig("INTEGRATED_APPLICATION_ADDRESS");

if (urlConfig !== null && urlConfig.getLongValue() !== null && urlConfig.getLongValue() !== "") {

    sendUrl = urlConfig.getLongValue();

    if(!sendUrl.endsWith('/')){

     sendUrl = sendUrl+'/';

    }

sendUrl += "vision/feishu/openresource.jsp?feishu=true&sh=false&refresh=true&showtoolbar=false&showPath=false&iPad=true&sendTarget=auto&resid=" + reportId;

}

var sendPictureSetting = {

reportId: reportId,

title: title,

desc: desc,

sendUrl: sendUrl,

sendUser: sendUser,

reportParamSetting: reportParamSetting

};


connector.remoteInvoke("FeiShuCommonModule","sendPictureToFeishu",[JSON.stringify(sendPictureSetting)]);

...



2.

...

5.3.3. 配置项说明

参考2.2.2,此处仅补充一处2.2.2没有的配置项:

...