当前位置: 首页 > article >正文

nVisual对接企业微信实现机房设备与连接变更的自动化审批

企业微信的审批可以根据企业实际业务流程创建自动化的审批流,nVisual可以进行机房设备与线缆的可视化规划设计,结合企业微信与nVisual实现机房设备与线缆变更的自动审批,可以显著提高机房运维变更效率与规范性。

一、业务流程

1、业务流程

现场实施安装完成->填写审批单->审批通过->自动更新可视化库-开始分配IP进入下一步流程。

2、相关审批单


二、实施流程

1、获取企业id

https://work.weixin.qq.com/wework_admin/frame#profile
点击此链接企业微信授权登录后,找到页面底端企业id,并记录下来。

2、自建应用

如果已创建针对审批的自建应用则不用再新建,打开即可,如果没有创建,则需要手动创建。
创建步骤:

- 打开应用管理

在页面底部找到自建,然后点击创建应用。

- 获取自建应用id

打开自建应用,找到AgentId,记录下来。

- 获取Secret

找到Secret,点击查看,再弹框中点击发送,然后在企业微信消息通知里找到Secret

3、网页授权
- 找到网页授权及JS-SDK,设置可信域名。

点击设置可信域名后会出现一个设置弹窗,点击申请校验域名,点击完后,会让下载一个txt文件,将此文件放到域名根目录下。


下载完文件放到对应目录后,这里把域名填写进去点击确定。

如果不通过就检查目录对不对,看一下nginx配置,在nVisual项目中这个.txt文件应当是放置在nvisual主程序前端包的dist根目录文件夹下面。

- 设置可信IP

在自建应用主页,找到企业可信ip,点击配置。
将企业ip填进去,如果需要设置多个ip,就用;隔开。
企业可信IP为本企业服务器的IP地址,仅所配IP可通过接口获取企业数据。

4、设置Api接收

打开自建应用界面,找到功能里的接受消息,如果没有配置过接受消息,则应设置API接受,否则无法获取审批通过的回调消息。

5、配置url

打开API接收消息页面后,首先配置URL,URL即为部署的后端服务验证企业微信回调的接口地址。

此接口地址为 ip:port/wapi/v1/wxpush

其中ip需要换为服务器的ip,端口默认是9997,如果配置了nginx,则用nginx转发地址,例如在测试环境里,填写的是:https://cloud.nvisual.com/qywxApi/wapi/v1/wxpush

获取Token和EncodingAESKey

这里的token和aesKey点击随机获取即可,点击完随机获取后,记录下来。

6、配置nVisual企业微信对接模块

到nVisual官网下载对接企业微信的jar包,此Jar包名称应该是nvisual-lite-qywx-xxx-9997.jar,这个jar是为了提供审批单下拉列表数据,以及处理企业微信审批通过后修改nvisual内响应数据。

如果企业微信对接的jar包已经部署好,在填写完URL后,需要修改jar包配置文件(下章节会讲怎么配置),然后启动。如果jar启动成功,API接收消息配置页面点击保存时,企业微信会访问刚刚配置的回调接口,如果回调验证成功,则保存成功,就像这样:

修改配置文件
在jar包上右键,选择打开方式,使用压缩软件打开。

打开后依次进入 BOOT-INF\ classes
然后找到application.properties

双击打开application.properties,这个就是配置文件
修改上文中提到的
企业id;
自建应用id、Secret、token、AESKey;
nVisual地址和针对此服务的用户名密码。

修改完配置文件后,保存到jar包,如果不能保存,就先把java服务停掉就能保存。
保存好后重启java服务

7、配置审批模板
- 创建审批模版
  • 在应用管理中,找到审批

  • 在模板管理点击添加模板

  • 选择自定义模板

- 设置模板

修改模板名称,添加控件(名称和控件参照下文提供的详细信息)

首先控件需要修改控件名称,
其次如果是单选框控件,需要关联外部选项,如果是文本项控件则不用

这里一共需要创建4个审批模板

模板名称: 上架设备、下架设备、线缆连接、线缆断开。

各个模板单选控件页面地址:
需注意,下文中的https://cloud.nvisual.com/ 是本地测试地址,正式环境部署时需要切换正式地址

上架设备
  • 设备型号
    https://cloud.nvisual.com/qywxH5/index.html#/deviceModel

  • 机房
    https://cloud.nvisual.com/qywxH5/index.html

  • 机柜
    https://cloud.nvisual.com/qywxH5/index.html#/rack

  • 前/后
    https://cloud.nvisual.com/qywxH5/index.html#/frontBack

  • 设备顶部所在U位
    https://cloud.nvisual.com/qywxH5/index.html#/uBit

  • 设备名称
    为输入项,无需配置。

下架设备
  • 机房
    https://cloud.nvisual.com/qywxH5/index.html#/downRackRoom

  • 机柜
    https://cloud.nvisual.com/qywxH5/index.html#/downRack

  • 设备名称
    https://cloud.nvisual.com/qywxH5/index.html#/downDeviceName

线缆连接
  • 本端机房
    https://cloud.nvisual.com/qywxH5/index.html#/localLinkRackRoom
    本端机柜
    https://cloud.nvisual.com/qywxH5/index.html#/localLinkRack
    本端设备
    https://cloud.nvisual.com/qywxH5/index.html#/localLinkDevice
    本端插槽
    https://cloud.nvisual.com/qywxH5/index.html#/localLinkSlot
    本端端口
    https://cloud.nvisual.com/qywxH5/index.html#/localLinkPort
    线缆型号
    https://cloud.nvisual.com/qywxH5/index.html#/linkModel

  • 对端机房
    https://cloud.nvisual.com/qywxH5/index.html#/peerLinkRackRoom
    对端机柜
    https://cloud.nvisual.com/qywxH5/index.html#/peerLinkRack
    对端设备
    https://cloud.nvisual.com/qywxH5/index.html#/peerLinkDevice
    对端插槽
    https://cloud.nvisual.com/qywxH5/index.html#/peerLinkSlot
    对端端口
    https://cloud.nvisual.com/qywxH5/index.html#/peerLinkPort

线缆断开
  • 本端机房
    https://cloud.nvisual.com/qywxH5/index.html#/cutLinkRackRoom
    本端机柜
    https://cloud.nvisual.com/qywxH5/index.html#/cutLinkRack
    本端设备
    https://cloud.nvisual.com/qywxH5/index.html#/cutLinkDevice
    本端插槽
    https://cloud.nvisual.com/qywxH5/index.html#/cutLinkSlot
    本端端口
    https://cloud.nvisual.com/qywxH5/index.html#/cutLinkPort

设置模板开启回调通知
创建完模板后,回到审批应用页面,展开API,点击设置回调通知模板。

点击编辑

开启刚创建的四个审批模版的回调。

开启可调用接口应用
回到审批应用页面,展开API,点击可调用接口的应用,修改。

给刚刚创建的自建应用勾选,点击确认。

8、测试
- 登录nvisual主程序

- 创建机房

从左侧模型库中选择图标,找任意模型,拖拽到视图区。

选中机房,右侧点击属性按钮,给机房命名。

- 创建机柜

双击进入刚刚创建的机房,从左侧模型库找到机柜模型,创建机柜,给机柜命名

- 企业微信审批

填写上架设备后发起审批申请,最后通过申请,查看对应机柜内是否有对应设备上架到指定为止。

在这里插入图片描述


http://www.kler.cn/a/611727.html

相关文章:

  • 硬件防火墙配置与优化:给网络装上最稳的安全阀
  • 深入探索 C++20 中的 std::make_obj_using_allocator
  • 使用Python可视化图结构:从GraphML文件生成节点关系图(lightrag 生成)
  • springcloud项目在框架搭建时的问题的总结
  • 使用HTTP提交git时,每次都要输入用户名和密码的解决方案
  • CentOS 7 宝塔部署
  • 【工具】openEuler 22.03 (LTS-SP3) 如何离线安装 git-lfs
  • Spring Boot集成阿里云OSS:对象存储实战指南
  • OpenBMC:BmcWeb 生效路由2 Trie字典树添加节点
  • vscode profile
  • 7.8 窗体间传递数据
  • 数据结构每日一题day4(顺序表)★★★★★
  • 【计科】从操作系统到虚拟化技术(进程调度,内存映射,设备IO,文件、网络管理)
  • 地图(死亡细胞)
  • 基于Python的自然语言处理系列(60):使用 LangChain 构建 Multi-Vector Retriever 进行文档检索
  • C#:类型定义中使用‌问号(?)
  • CSS 如何设置父元素的透明度而不影响子元素的透明度
  • HarmonyOS之深入解析跳转支付宝小程序完成操作后如何自动返回App
  • 网站漏洞多、排名低?Scrutiny 一键化解
  • 【深度学习新浪潮】图像修复(Image Inpainting)技术综述:定义、进展与应用展望