页面树结构
转至元数据结尾
转至元数据起始

V10.5版本的用户部署完钉钉扩展包后,可使用消息推送功能。

推送报表消息

Smartbi支持推送多种报表类型的消息到钉钉,包括电子表格、自助仪表盘、分析报告、Web链接、页面类型的资源。

1、在报表上右键选择“推送到钉钉”。

2、选择推送类型、推送人员并填写标题,点击 推送(O) 按钮,将报表推送到钉钉。

设置项说明如下:

名称说明
推送类型

设置打开资源时访问的客户端类型,包括

  • 自动:系统自动判断;
  • 移动端:使用移动端访问推送消息;
  • 电脑端:使用电脑端访问推送的消息。
推送给部分成员

消息推送可以指定用户、部门为推送对象。

全体成员

消息推送给全体成员,默认 。

标题推送消息的标题。
描述推送消息的描述。
图片

推送消息的封面。

链接地址报表的钉钉地址。

3、打开钉钉,可看到刚才推送的报表。

点击报表能看到具体内容:

推送其它类型的消息

Smartbi支持推送多种类型的消息到钉钉,包括文本消息、图片消息、语音消息、文件消息、链接消息、OA消息、markdown消息以及卡片消息。

获取消息信息

用户需要先通过钉钉工具箱获取消息的相关信息,详情请参考 钉钉工具箱 。

发送消息

根据需求的不同,可通过私聊或群聊发送消息。

发送私聊信息

1、将生成的消息信息替换到代码对应的位置中,并删除其他消息类型代码

// 发送人,可以选人或者部门
var receiver = JSON.stringify({
    "user": "08671856511049539"
});

// 文本类型的信息
var msg = JSON.stringify({
    "msgType": "text",
    "msgContent": {
        "content": "测试发送钉钉信息"
    }
});
// 发送图片类型的信息
msg = JSON.stringify({
    "msgType": "image",
    "msgContent": {
        "media_id": "@lADPDfYH0l5peu7NAg3NArw"
    }
});

// 发送链接的信息
var msg = JSON.stringify({
    "msgType": "link",
    "msgContent": {
        "messageUrl": "https://demo.smartbi.com.cn/smartbi/vision/openresource.jsp?resid=I402881ba7c65508101487ca738e500a2&user=demo&password=demo", 
		"picUrl":"@lADPDfYH0l5peu7NAg3NArw",
		"title": "这是一个测试链接",
		"text": "看一看手机demo站点上的这个电子表格"
    }
});

// 发送markdown信息
var msg = JSON.stringify({
    "msgType": "markdown",
    "msgContent": {
		"title": "这是一个markdown测试",
		"text": "#一级标题   \r\n##二级标题   \r\n**文字超链**:[简书](http://www.jianshu.com)"
    }
});

// 发送卡片的信息
var msg = JSON.stringify({
    "msgType": "action_card",
    "msgContent": {
		"title": "这是一个卡片测试",
		"markdown": "#一级标题   \r\n##二级标题   \r\n**文字超链**:[简书](http://www.jianshu.com)",
        "single_title": "查看详情", 
        "single_url": "https://demo.smartbi.com.cn/smartbi/vision/openresource.jsp?resid=I402881ba7c65508101487ca738e500a2&user=demo&password=demo" 
    }
});


// 发送
connector.remoteInvoke("DDModule", "sendWorkMessage", [ receiver, msg]);

以发送图片类型的消息为例,如图:

2、在任务页面中,点击 新建任务 按钮新建一个任务。

3、填写任务名称,并选择任务类型为“定制”,将刚才修改好的代码复制到自定义设置中,点击 保存 按钮保存。然后点击 测试运行(T) 按钮,将消息发送到钉钉。

4、打开钉钉,可看到刚才推送的图片。


创建群聊并发送信息

1、将生成的消息信息替换到代码对应的位置中,并删除其他消息类型代码

// 创建人
var ownerId = "XiaoHua";
// 群聊用户列表,用|分隔
var userIds = "XiaoHua|XiaoMing";
// appid
var appid = "1000005";
// 群聊名字
var name = "测试群聊";

var chatId = "";

// 创建群聊,每执行一次就创建一个新的,因此最好找地方保存
var rtn = connector.remoteInvoke("DDModule", "createChat", [name, ownerId, userIds]);
if (rtn && rtn.succeed) {
    chatId = rtn.result;
}

// 文本类型的信息
var msg = JSON.stringify({
    "msgType": "text",
    "msgContent": {
        "content": "测试发送信息"
    }
});

// 发送图片类型的信息
msg = JSON.stringify({
    "msgType": "image",
    "msgContent": {
        "media_id": "@lADPDfYH0l5peu7NAg3NArw"
    }
});

// 发送链接的信息
var msg = JSON.stringify({
    "msgType": "link",
    "msgContent": {
        "messageUrl": "https://demo.smartbi.com.cn/smartbi/vision/openresource.jsp?resid=I402881ba7c65508101487ca738e500a2&user=demo&password=demo", 
		"picUrl":"@lADPDfYH0l5peu7NAg3NArw",
		"title": "这是一个测试链接",
		"text": "看一看手机demo站点上的这个电子表格"
    }
});

// 发送markdown信息
var msg = JSON.stringify({
    "msgType": "markdown",
    "msgContent": {
		"title": "这是一个markdown测试",
		"text": "#一级标题   \r\n##二级标题   \r\n**文字超链**:[简书](http://www.jianshu.com)"
    }
});

// 发送卡片的信息
var msg = JSON.stringify({
    "msgType": "action_card",
    "msgContent": {
		"title": "这是一个卡片测试",
		"markdown": "#一级标题   \r\n##二级标题   \r\n**文字超链**:[简书](http://www.jianshu.com)",
        "single_title": "查看详情", 
        "single_url": "https://demo.smartbi.com.cn/smartbi/vision/openresource.jsp?resid=I402881ba7c65508101487ca738e500a2&user=demo&password=demo" 
    }
});

// 群ID列表,用|分隔
var chatIds = chatId
connector.remoteInvoke("DDModule", "sendChatMessage", [chatIds, msg]);

以发送文本类型的信息为例,如图:

2、打开系统监控中的日志,进行监控(用于获取创建群聊生成的chatId)。

3、在任务页面中,点击 新建任务 按钮新建一个任务。

4、填写任务名称,并选择任务类型为“定制”,将刚才修改好的代码复制到自定义设置中,点击 保存 按钮保存。然后点击 测试运行(T) 按钮,创建群聊并将消息发送到钉钉。

5、打开钉钉,可看到新建的群聊和推送的文本。

6、创建群聊完成后,在日志中可查看并保存chatId。


下次想要直接在群聊中发送消息,需要在代码中添加chatId并删除创建群聊部分的代码。


  • 无标签