页面树结构

版本比较

标识

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


1. 概述

钉钉扩展包以钉钉官方提供的“微应用”的方式集成smartbi。完成集成后,您可以在钉钉app的“工作”界面中找到smartbi入口,从这个入口可以进入Smartbi主页或者直接打开特定的报表,并且免去手动输入账号名密码的麻烦。

下面是完成钉钉集成后的最终效果:

打开主页效果打开资源效果
Image RemovedImage Removed

说明:

- 微应用打开得是主页还是资源,是由钉钉后台配置决定的,详见填写详细信息

- 进入smartbi是不需要输入用户名密码的,因为配置了钉钉用户名和Smartbi账号之间的映射关系,所以面登原理是通过映射关系以用户在Smartbi中对应的账号直接打开Smartbi资源。映射关系的配置详见配置用户别名

2. 添加扩展包

钉钉扩展包有两个版本:

1)Smartbi v8.0及以前的用老版本扩展包:dingding_老版(适用v80及以下).ext

2)Smartbi v8.5及以后的用新版本扩展包:dingding_新版(适用v85及以上).ext

 

3. 配置钉钉参数

使用钉钉扩展包,需要配置参数: corpid 、 appkey、appsecret、 agentid,最终效果如下:

Image Removed

3.1获取CorpID

每个公司只有一个corpid,获取地址如下,

https://open-dev

目录

部署开发扩展包

钉钉扩展包:dingding_demo.ext

部署详细说明,参考Wiki链接:扩展包部署

钉钉微应用的部署

官方说明文档

官方说明文档地址如下:

https://developers.dingtalk.com/

#indexImage Removed1)创建地址:

免密部署流程

 

3.2获取appkey、appsecret、 agentid

这三个值是对应到每个单独的微应用的,需要先创建微应用,然后再获取这三个值,步骤如下:

1、创建微应用:

123
123

1)登陆钉钉开放平台的开发者后台企业管理,登陆地址为:

https://

opencom/#/suite

Image Removed

注意: 选择微应用中的企业内部应用,而不是E应用。

2)填写基本信息

Image Removed

3)填写详细信息

Image Removed

注意:服务器出口ip是服务器所在网络的公网地址,不是内网地址。

“应用首页链接”有两种写法, 示例如下:

- 打开Smartbi移动端首页:http://demo.smartbi.com.cn/smartbi/vision/dingding/dingding.jsp

- 打开Smartbi 报表资源:http://demo.smartbi.com.cn

com%2F#/login

Image Added

2)记录CorpId。

Image Added

3)在应用开发中创建一个企业内部微应用。

Image Added

4)填写好相应的应用信息。

Image Added

Image Added

5)给应用开通相应权限。

Image Added

Image Added

6)在基础信息中记住相应的AgentID、AppKey和AppSecret。

Image Added


7)设置Smartbi的系统选项,将刚刚记录的CorpId、AgentID、AppKey和AppSecret填写在相对应的位置。

Image Added

8)在Smartbi中新建用户,新建别名与钉钉名称相同的用户,此处填写的是管理者的名字,而不是昵称。

Image Added

Image Added

Image Added

9)配置完成后重启,即可进行利用钉钉进行免密访问smartbi了。

发送企业消息

发送企业消息需要基于 免密部署 的基础上完成的。

1)进入需要利用企业信息监控的报表宏。

Image Added

2)给报表添加以下宏代码,注意图中提示,修改对应位置的代码,不然发送的消息会出现异常。

Image Added

代码块
/*名称:
sendinfotoDD
类型:    
ClientSide
对象:    
spreadsheetReport
事件:    
onRenderReport
*/
var util = jsloader.resolve('freequery.common.util');
function main(spreadsheetReport) {
    //封装钉钉企业消息体
    var msgContent = {};
    //消息接收者在钉钉中点击消息内容,将打开如下链接,完成免登后,打开resid对应的报表。
    msgContent.messageUrl = "http://10.10.101.90:8080/smartbi/vision/dingding/
ddopenresource
ddopenresource.jsp?resid
=报表资源id

 

2、读取agentid、appkey 、appsecret

1)找到刚才创建的微应用

Image Removed

2)查看微应用详情

Image Removed

3)复制agentid、appkey、appsecret 粘贴到smartbi系统选项里面
Image Removed

4. 配置用户别名

为了将smartbi用户和钉钉用户关联起来,我们需要将用户在钉钉中的姓名复制粘贴到smartbi用户设置的别名中:

Image Removed Image Removed

 

 

面板
borderColor#BBBBBB
bgColor#F0F0F0
borderWidth1
borderStylesolid
toc
=I402882c701552f492f49736e01552f4df2c50013&random=" + Math.random();
    //消息标题
    msgContent.title = "报表跳转了";
    //消息文本
    msgContent.text = "报表id是I402882c701552f492f49736e01552f4df2c50013";
    //消息图标
    msgContent.picUrl = "https://www.baidu.com/img/baidu_jgylogo3.gif";
    var msgString = JSON.stringify(msgContent);
    //调用后端DDModule. sendLinkCorpConversation()方法,由后端请求钉钉服务器,发送企业消息
    util.remoteInvokeEx('DDModule', 'sendLinkCorpConversation', [msgString, ['收件人']]);
}

3)添加完后即可在打开报表时,在钉钉收到企业信息提示了。

注意事项

  • 若是后台提示ip不在白名单内,则将该ip添加到服务器出口IP处即可。

Image Added

  • 宏代码修改的位置需要正确,否则会发消息会出现异常。