从树莓派上发消息到手机或桌面钉钉

image

钉钉是阿里巴巴专为中小企业和团队打造的沟通、协同的多端平台,钉钉开放平台旨在为企业提供更为丰富的办公协同解决方案。通过钉钉开放平台,企业或第三方合作伙伴可以帮助企业快速、低成本的实现高质量的移动微应用,实现生产、管理、协作、运营的移动化。

访问钉钉开放平台的文档,请戳此

下面将介绍如何使用钉钉开放平台SDK在树莓派上发送消息到手机和桌面钉钉。

准备工作

首先,你需要在钉钉上创建一个组织,点这里开始

注册好后创建微应用

获取微应用的 agentid

获取 corpidcorpsecret,非常重要

下载钉钉SDK

这里我们使用Go语言版的钉钉开放平台SDK,这样可以直接在树莓派上编译运行

export GOPATH=`pwd`
go get github.com/hugozhu/godingtalk

企业应用消息发送代码

下面的代码使用钉钉开放平台的企业应用消息接口来发送消息

package main

import (
	"github.com/hugozhu/godingtalk"
	"log"
	"os"
)

func main() {
	c := godingtalk.NewDingTalkClient(os.Getenv("corpid"), os.Getenv("corpsecret"))
	c.RefreshAccessToken()
	err := c.SendAppMessage(os.Args[1], os.Args[2], os.Args[3])
	if err != nil {
		log.Println(err)
	}
}

将上面的代码保存在src/push.go里,执行go build src/push.go生成可执行文件push,并复制到~/bin目录下

消息发送脚本

在准备工作中获取到的corpid,corpsecretagentid这里就有用了

创建一个push.sh文件,内容如下:

#!/bin/sh

export corpid=<corpid>
export corpsecret=<corpsecret>
timeout 10 ~/bin/push <agentid> "@all" "$1"

使用消息发送脚本

push.sh "树莓派发来的钉钉消息"

通过这个脚本就可以在树莓派上发消息到钉钉上了

参考链接

  1. 钉钉开发平台

See also