我们知道,微信公众号和企业号都提供了一个官方的Web后台,方便我们对微信账号的配置,以及相关数据的管理功能,对于微信企业号来说,有通讯录中的组织架构管理、标签管理、人员管理、以及消息的发送等功能,其中微信企业号的组织架构和标签可以添加相应的人员,消息发送可以包含文本、图片、语音、视频、图文、文件等内容。对于企业号来说,官方的接口几乎可以无限的发送消息,因此构建一个管理后台,管理企业号的人员,以及用来给企业成员发送消息就是一个很好的功能亮点,有时候可以提高我们企业内部的消息通讯效率和日常工作管理效率。本文探索基于Winform的客户端方式来实现这些功能操作。

1、企业号参数的配置处理

我们知道,微信(包括公众号、企业号等)的服务器架起了客户手机和开发者服务器的一个桥梁,通过消息的传递和响应,实现了与用户的交互操作,下面是它的消息流程图。

因此,在使用自己部署的微信网站系统前,需要登陆微信官方后台初始化一些信息,并获取对应的参数设置,通过这些参数信息,在自己的网站系统中进行配置,才能构建一个完整的链路,实现消息的传递和响应。

当我们配置好【开发者服务器】的服务和【微信服务器】的对接后,我们也就实现了基本的消息交互过程了。这样我们就可以配置好企业号客户端进行使用了。

1)网站系统参数配置

我们为了实现消息的链路,需要在网站系统里面配置好相应的参数,这样我们才能把微信官方后台的回调模式完成。

首先登陆我们自己【开发服务器】上的微信企业后台管理。

为企业号账号配置好相关的参数信息。

结合微信服务器上的回调处理操作,完成整个网站参数的配置操作。

2)企业号客户端参数配置

在微信企业号客户端功能使用前,需要在【参数配置】里面配置好对应的参数信息,这样才能正确和微信后台进行通讯,获取服务器上的数据。

而上面客户端软件对话框的参数,除了需要回调设置里面的部分参数外,还需要结合微信后台的一些其他参数,这样我们才能配置好和微信服务器的对接操作。

CorpID:唯一标识企业号:企业号开通后即拥有一个CorpID,不同企业号的CorpID是不同的,这相当于企业号的身份标识;启动开发接入时候,企业开发者必须先用CorpID和Secret来换取Access_Token,之后才能调用企业号相关接口。

Secret:管理组凭证密钥,系统管理员在企业号管理后台创建管理组时,企业号后台为该管理组分配一个唯一的secret。通过该secret能够确定管理组,及管理组所拥有的对应用、通讯录、接口的访问权限。

2、组织机构的管理功能

我在随笔《C#开发微信门户及应用(17)-微信企业号的通讯录管理开发之部门管理》里面介绍了企业号组织机构的管理操作。

默认我们可以在后台先创建一个根节点,然后在这个节点上进行处理即可。

介绍了那么多,好像还没有展现这个企业号Winform客户端的界面功能,这儿软件主要也就是利用来进行常规化的一些数据操作,不过是直接调用微信企业号API的功能而已,这些API就是前面系列介绍的接口实现。

下面是企业号Winform客户端的界面,这个主要利用我传统样式的Winform结构来处理,实现多文档的操作界面。

【组织机构列表】管理模块里面,会在树状列表里面列出相关的通讯录组织结构,选择不同的组织层次,可以列出所属的对应人员,界面如下所示。

通过上面的红色框的功能操作,我们可以看到组织机构的相关功能点,包括有新建子部门、删除部门、修改部门,以及为部门实现的人员管理:添加成员、删除成员、修改成员、移动成员、禁用或者启用人员等功能,而左侧部门的列表通过树形列表进行展现,这些操作全部是直接调用API进行处理的,提交后的结果直接能够在企业号后台及时看到。

这些功能点,都是模仿企业号后台的功能点实现,不过是基于Winform的方式,能够结合本地的数据处理,实现更加丰富的界面和数据管理。

添加成员,则提供一个输入界面给用户填写对应的信息,功能实现的界面如下所示。

如果是移动成员,那么会弹出一个部门列表,供用户选择需要移动到具体的部门里面,确认后就进行移动处理。

3、标签的管理功能

【标签列表】管理模块里面,在左边的树状列表里面列出所有的可见标签,如果标签下面有对应的部门组织或者人员,那么会在列表里面列出,具体界面如下所示。

该模块包含的功能操作有:新建标签、删除标签、修改标签;添加标签成员、删除标签成员等操作。

标签的管理很简单,主要是维护一个类似组别的概念,我们可以新建、修改或者删除对应的标签。

同时我们也可以为标签添加对应的部门、人员集合,添加标签成员操作具体如下所示。

4、消息的发送操作

【发送消息】功能模块,是可以选择发送对象,包括组织机构、标签、人员都可以选择;而消息的发送内容,包括有文字、图片、语音、视频、图文、文件等内容。

而选择人员是提供一个多功能的选择界面,包括可以选择部门、标签、人员,最后可以通过【完成选择】返回选择的对象。

选择对象并录入对应的发送内容后,单击【发送】进行消息的发送处理,就可以在对应的成员手机上查看到最新的消息了,下面是一个接受到图片、文字的企业号界面。

其他如视频、语音等内容都要求上传到服务器后在发送,发送处理操作一样,不在赘述。

如果对这个《C#开发微信门户及应用》系列感兴趣,可以关注我的其他文章,系列随笔如下所示:

C#开发微信门户及应用(25)-微信企业号的客户端管理功能

C#开发微信门户及应用(24)-微信小店货架信息管理

C#开发微信门户及应用(23)-微信小店商品管理接口的封装和测试

C#开发微信门户及应用(22)-微信小店的开发和使用

C#开发微信门户及应用(21)-微信企业号的消息和事件的接收处理及解密

C#开发微信门户及应用(20)-微信企业号的菜单管理

C#开发微信门户及应用(19)-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等)

C#开发微信门户及应用(18)-微信企业号的通讯录管理开发之成员管理

C#开发微信门户及应用(17)-微信企业号的通讯录管理开发之部门管理

C#开发微信门户及应用(16)-微信企业号的配置和使用

C#开发微信门户及应用(15)-微信菜单增加扫一扫、发图片、发地理位置功能

C#开发微信门户及应用(14)-在微信菜单中采用重定向获取用户数据

C#开发微信门户及应用(13)-使用地理位置扩展相关应用

C#开发微信门户及应用(12)-使用语音处理

C#开发微信门户及应用(11)--微信菜单的多种表现方式介绍

C#开发微信门户及应用(10)--在管理系统中同步微信用户分组信息

C#开发微信门户及应用(9)-微信门户菜单管理及提交到微信服务器

C#开发微信门户及应用(8)-微信门户应用管理系统功能介绍

C#开发微信门户及应用(7)-微信多客服功能及开发集成

C#开发微信门户及应用(6)--微信门户菜单的管理操作

C#开发微信门户及应用(5)--用户分组信息管理

C#开发微信门户及应用(4)--关注用户列表及详细信息管理

C#开发微信门户及应用(3)--文本消息和图文消息的应答

C#开发微信门户及应用(2)--微信消息的处理和应答

C#开发微信门户及应用(1)--开始使用微信接口

C#开发微信门户及应用(25)-微信企业号的客户端管理功能的更多相关文章

  1. C#开发微信门户及应用(38)--微信摇一摇红包功能

    摇一摇周边红包接口是为线下商户提供的发红包功能.用户可以在商家门店等线下场所通过摇一摇周边领取商家发放的红包.我曾经在<C#开发微信门户及应用(28)--微信“摇一摇·周边”功能的使用和接口的实 ...

  2. C#开发微信门户及应用(37)--微信公众号标签管理功能

    微信公众号,仿照企业号的思路,增加了标签管理的功能,对关注的粉丝可以设置标签管理,实现更加方便的分组管理功能.开发者可以使用用户标签管理的相关接口,实现对公众号的标签进行创建.查询.修改.删除等操作, ...

  3. C#开发微信门户及应用(36)--微信卡劵管理的封装操作

    前面几篇介绍了微信支付方面的内容,本篇继续微信接口的一些其他方面的内容:卡劵管理.卡劵管理是微信接口里面非常复杂的一个部分,里面的接口非常多,我花了不少时间对它进行了封装处理,重构优化等等工作,卡劵在 ...

  4. C#开发微信门户及应用(35)--微信支付之企业付款封装操作

    在前面几篇随笔,都是介绍微信支付及红包相关的内容,其实支付部分的内容还有很多,例如企业付款.公众号支付或刷卡支付.摇一摇红包.代金券等方面的内容,这些都是微信接口支持的内容,本篇继续微信支付这一主题, ...

  5. C#开发微信门户及应用(34)--微信裂变红包

    在上篇随笔<C#开发微信门户及应用(33)--微信现金红包的封装及使用>介绍了普通现金红包的封装和使用,这种红包只能单独一次发给一个人,用户获取了红包就完成了,如果我们让用户收到红包后,可 ...

  6. C#开发微信门户及应用(33)--微信现金红包的封装及使用

    我在上篇随笔<C#开发微信门户及应用(32)--微信支付接入和API封装使用>介绍为微信支付的API封装及使用,其中介绍了如何配置好支付环境,并对扫码支付的两种方式如何在C#开发中使用进行 ...

  7. C#开发微信门户及应用(32)--微信支付接入和API封装使用

    在微信的应用上,微信支付是一个比较有用的部分,但也是比较复杂的技术要点,在微商大行其道的年代,自己的商店没有增加微信支付好像也说不过去,微信支付旨在为广大微信用户及商户提供更优质的支付服务,微信的支付 ...

  8. C#开发微信门户及应用(27)-公众号模板消息管理

    通过模板消息接口,公众号能向关注其账号的用户发送预设模板的消息.模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如信用卡刷卡通知,商品购买成功通知等.不支持广告等营销类消 ...

  9. C#开发微信门户及应用(23)-微信小店商品管理接口的封装和测试

    在上篇<C#开发微信门户及应用(22)-微信小店的开发和使用>里面介绍了一些微信小店的基础知识,以及对应的对象模型,本篇继续微信小店的主题,介绍其中API接口的封装和测试使用.微信小店的相 ...

随机推荐

  1. 通过VMware的PowerCLI配置集群内指定主机的vMotion功能

    PowerCLI是VMware开发的基于微软(MSFT)的PowerShell的命令行管理vSphere的实现,因此在批量化操作方面CLI会减轻很多GUI环境下的繁琐重复劳作. 现有场景中有大量的物理 ...

  2. 基于RN开发的一款视频配音APP(开源)

    在如今React.ng.vue三分天下的格局下,不得不让自己加快学习的脚步.虽然经常会陷入各种迷茫,学得越多会发现不会的东西也被无限放大,不过能用新的技术作出一些小项目小Demo还是会给自己些许自信与 ...

  3. VS15 preview 5打开文件夹自动生成slnx.VC.db SQLite库疑惑?求解答

    用VS15 preview 5打开文件夹(详情查看博客http://www.cnblogs.com/zsy/p/5962242.html中配置),文件夹下多一个slnx.VC.db文件,如下图: 本文 ...

  4. 【转】为什么我们都理解错了HTTP中GET与POST的区别

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  5. Html 制作相册

    本文主要讲述采用Html5+jQuery+CSS 制作相册的小小记录. 主要功能点: Html5进行布局 调用jQuery(借用官网的一句话:The Write Less, Do More)极大的简化 ...

  6. Android游戏开发实践(1)之NDK与JNI开发03

    Android游戏开发实践(1)之NDK与JNI开发03 前面已经分享了两篇有关Android平台NDK与JNI开发相关的内容.以下列举前面两篇的链接地址,感兴趣的可以再回顾下.那么,这篇继续这个小专 ...

  7. (资源整理)带你入门Spark

    一.Spark简介: 以下是百度百科对Spark的介绍: Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方 ...

  8. 使用四元数解决万向节锁(Gimbal Lock)问题

    问题 使用四元数可以解决万向节锁的问题,但是我在实际使用中出现问题:我设计了一个程序,显示一个三维物体,用户可以输入绕zyx三个轴进行旋转的指令,物体进行相应的转动. 由于用户输入的是绕三个轴旋转的角 ...

  9. ubuntu进行子域名爆破

    好记性不如烂笔头,此处记录一下,ubuntu进行子域名的爆破. 先记录一个在线的子域名爆破网址,无意中发现,很不错的网址,界面很干净,作者也很用心,很感谢. https://phpinfo.me/do ...

  10. 瞬间记住Javascript中apply与call的区别

    关于Javascript函数的apply与call方法的用法,网上的文章很多,我就不多话了.apply和call的作用很相似,但使用方式有区别 apply与call的第一个参数都是一个对象,这个对象就 ...