医院HIS系统调用钉钉开放平台的简单实例

时间:2022-06-03 08:23:30

【摘要】钉钉是阿里巴巴专为中小企业和团队打造的沟通、协同的多端平台,钉钉开放平台旨在为企业提供更为丰富的办公协同解决方案。 通过钉钉开放平台,企业或第三方合作伙伴可以帮助企业快...

医院HIS系统调用钉钉开放平台的简单实例

【摘要】 目的:实现在医院his系统中发送钉钉消息的功能。方法:HIS程序通过部署在内网前置上的本地钉钉服务,间接地与钉钉开放平台进行通信。结果:能够在HIS系统中方便地调用钉钉开放平台的接口,如:发送钉钉消息、同步钉钉通讯录等一系列的功能。结论:该方法实施部署简单,具有良好的扩展性。并且在不影响原有HIS系统的前提下,实现HIS员工信息与钉钉通讯录同步的功能,方便院内职工在HIS系统中快速查找钉钉通讯录及发送钉钉消息的功能。

【关键字】 HIS 钉钉 通讯录 短消息 内网 外网 网闸 Python

一、引言

随着医疗技术的不断发展,医院的规模也在不断扩大,一般的中型医院的职工人数也已经超过了千人,内部职工之间如何相互沟通协调工作,医疗数据如何准确的传达给需要的人员等等。这些都是每家医院需要面对的问题。作为信息部门的员工,首先想到的是如何运用信息化的手段来帮助院内职工相互协调工作,提高医院运行效率。基于我院多数职工都装有手机钉钉软件,并且钉钉软件已导入企业通讯录的前提下,就萌生了实现在HIS系统中调用钉钉相关功能的想法。

二、钉钉开放平台概述

钉钉是阿里巴巴专为中小企业和团队打造的沟通、协同的多端平台,钉钉开放平台旨在为企业提供更为丰富的办公协同解决方案。

通过钉钉开放平台,企业或第三方合作伙伴可以帮助企业快速、低成本的实现高质量的移动微应用,实现生产、管理、协作、运营的移动化。

钉钉开放平台依托阿里巴巴多年的技术积累,建立业界一流的开放技术体系,帮助每一位开发者,提升开发效率,降低开发成本与难度。钉钉开放平台能帮助您获得更多的商业机会,服务更多的企业客户,从而不断的提升你的价值。

钉钉为开发者提供通讯录、消息等丰富客户端能力接口的JS-SDK,基于设备和钉钉客户端业务能力的接口,提供业界一流的无线加速能力。开发者在调用钉钉开放平台接口时需要附加AccessToken,AccessToken可以通过CorpID和CorpSecret获取。

三、医院HIS系统接入钉钉开放平台的实施方案

3.1 实施步骤

实施步骤分为以下4步:

1、首先搭建系统所需要的硬件环境:部署网闸、前置机并开通外网,搭建结构示意图如图1所示,前置机与外网之间通过网闸相互连通,网闸只对前置机发出端口号为80的数据包允许通行,其它数据包则一律禁止。同时为了安全性的考虑,对数据包目标IP地址限制为钉钉的服务器IP。

2、准备好系统所需要的基础数据:由于企业通讯录已导入钉钉通讯录,则只需要做同步即可。

3、本地钉钉服务程序的开发:根据钉钉开发平台的接口要求进行相应的软件开发。

4、系统的部署与实施:将开发好的本地钉钉服务程序部署到前置机上,并新建好所需的数据库及表结构。

3.2 接口方案设计

考虑到系统架构简单,钉钉服务器的对外接口为HTTP方式、数据格式为JSON,综合开发时间和开发成本,决定采用Python语言进行开发,本地数据存储则采用院内现有的MSSQL Server2008数据库,为了不影响HIS系统的运行效率,专门新建了数据库 MSGDB,本地钉钉服务程序主要由以下两个部分组成:

3.2.1 通讯录同步模块

通讯录同步模块的基本工作流程如图2所示,主要负责定时同步钉钉通讯录到本地数据库,使本地通讯录与钉钉通讯录保持一致。其中本地通讯录中的员工号能够与HIS系统的员工表中员工号相关联,这样就形成了与HIS系统相关联的基础。

3.2.2 消息发送模块

消息发送模块的基本工作流程图如图3所示,主要负责定时地从本地消息缓冲库中取出待发消息,当待发消息的对应发送时间大于系统当前时间,则调用钉钉接口,对消息进行发送。

HIS系统集成钉钉消息发送的方法示例

1)系统每月固定统计的数据,可以通过程序或者MSSQL Server的作业定时写入钉钉消息缓冲表中。

2)在HIS程序中嵌入消息发送框,其中可以包含通讯录,操作者可以选择需要发送的员工工号,点击发送,则程序后台自动写入钉钉消息缓冲库中。

3.3 数据交换格式

钉钉接口为HTTP GET方式

四、结语

该系统结构简单、扩展性强、部署方便快捷,能够较好地满足我院对于“消息群发”,“HIS统计数据推送”等一系列的需求,具有良好的推广性,但该系统也存在着一些不足的地方,内外网互通的关键节点“网闸”,需要登记固定内网及外网互通的IP地址及端口,由于钉钉开放接口的接口地址是以固定域名方式提供的,开放接口的IP可能随时变动,目前想到的解决方案为:定时通过脚本方式获取钉钉接口域名对应的IP,之后通过脚本添加网闸及前置机路由,此方法待进一步研究。

上一篇:激光先生六问激光的过去、现在和未来 下一篇:浅谈特殊学生道德品质培养