咱們知道,微信公衆號和企業號都提供了一個官方的Web後臺,方便咱們對微信帳號的配置,以及相關數據的管理功能,對於微信企業號來講,有通信錄中的組織架構管理、標籤管理、人員管理、以及消息的發送等功能,其中微信企業號的組織架構和標籤能夠添加相應的人員,消息發送能夠包含文本、圖片、語音、視頻、圖文、文件等內容。對於企業號來講,官方的接口幾乎能夠無限的發送消息,所以構建一個管理後臺,管理企業號的人員,以及用來給企業成員發送消息就是一個很好的功能亮點,有時候能夠提升咱們企業內部的消息通信效率和平常工做管理效率。本文探索基於Winform的客戶端方式來實現這些功能操做。html
咱們知道,微信(包括公衆號、企業號等)的服務器架起了客戶手機和開發者服務器的一個橋樑,經過消息的傳遞和響應,實現了與用戶的交互操做,下面是它的消息流程圖。服務器
所以,在使用本身部署的微信網站系統前,須要登錄微信官方後臺初始化一些信息,並獲取對應的參數設置,經過這些參數信息,在本身的網站系統中進行配置,才能構建一個完整的鏈路,實現消息的傳遞和響應。微信
當咱們配置好【開發者服務器】的服務和【微信服務器】的對接後,咱們也就實現了基本的消息交互過程了。這樣咱們就能夠配置好企業號客戶端進行使用了。架構
1)網站系統參數配置post
咱們爲了實現消息的鏈路,須要在網站系統裏面配置好相應的參數,這樣咱們才能把微信官方後臺的回調模式完成。測試
首先登錄咱們本身【開發服務器】上的微信企業後臺管理。網站
爲企業號帳號配置好相關的參數信息。url
結合微信服務器上的回調處理操做,完成整個網站參數的配置操做。3d
2)企業號客戶端參數配置orm
在微信企業號客戶端功能使用前,須要在【參數配置】裏面配置好對應的參數信息,這樣才能正確和微信後臺進行通信,獲取服務器上的數據。
而上面客戶端軟件對話框的參數,除了須要回調設置裏面的部分參數外,還須要結合微信後臺的一些其餘參數,這樣咱們才能配置好和微信服務器的對接操做。
CorpID:惟一標識企業號:企業號開通後即擁有一個CorpID,不一樣企業號的CorpID是不一樣的,這至關於企業號的身份標識;啓動開發接入時候,企業開發者必須先用CorpID和Secret來換取Access_Token,以後才能調用企業號相關接口。
Secret:管理組憑證密鑰,系統管理員在企業號管理後臺建立管理組時,企業號後臺爲該管理組分配一個惟一的secret。經過該secret可以肯定管理組,及管理組所擁有的對應用、通信錄、接口的訪問權限。
我在隨筆《C#開發微信門戶及應用(17)-微信企業號的通信錄管理開發之部門管理》裏面介紹了企業號組織機構的管理操做。
默認咱們能夠在後臺先建立一個根節點,而後在這個節點上進行處理便可。
介紹了那麼多,好像尚未展示這個企業號Winform客戶端的界面功能,這兒軟件主要也就是利用來進行常規化的一些數據操做,不過是直接調用微信企業號API的功能而已,這些API就是前面系列介紹的接口實現。
下面是企業號Winform客戶端的界面,這個主要利用我傳統樣式的Winform結構來處理,實現多文檔的操做界面。
【組織機構列表】管理模塊裏面,會在樹狀列表裏面列出相關的通信錄組織結構,選擇不一樣的組織層次,能夠列出所屬的對應人員,界面以下所示。
經過上面的紅色框的功能操做,咱們能夠看到組織機構的相關功能點,包括有新建子部門、刪除部門、修改部門,以及爲部門實現的人員管理:添加成員、刪除成員、修改爲員、移動成員、禁用或者啓用人員等功能,而左側部門的列表經過樹形列表進行展示,這些操做所有是直接調用API進行處理的,提交後的結果直接可以在企業號後臺及時看到。
這些功能點,都是模仿企業號後臺的功能點實現,不過是基於Winform的方式,可以結合本地的數據處理,實現更加豐富的界面和數據管理。
添加成員,則提供一個輸入界面給用戶填寫對應的信息,功能實現的界面以下所示。
若是是移動成員,那麼會彈出一個部門列表,供用戶選擇須要移動到具體的部門裏面,確認後就進行移動處理。
【標籤列表】管理模塊裏面,在左邊的樹狀列表裏面列出全部的可見標籤,若是標籤下面有對應的部門組織或者人員,那麼會在列表裏面列出,具體界面以下所示。
該模塊包含的功能操做有:新建標籤、刪除標籤、修改標籤;添加標籤成員、刪除標籤成員等操做。
標籤的管理很簡單,主要是維護一個相似組別的概念,咱們能夠新建、修改或者刪除對應的標籤。
同時咱們也能夠爲標籤添加對應的部門、人員集合,添加標籤成員操做具體以下所示。
【發送消息】功能模塊,是能夠選擇發送對象,包括組織機構、標籤、人員均可以選擇;而消息的發送內容,包括有文字、圖片、語音、視頻、圖文、文件等內容。
而選擇人員是提供一個多功能的選擇界面,包括能夠選擇部門、標籤、人員,最後能夠經過【完成選擇】返回選擇的對象。
選擇對象並錄入對應的發送內容後,單擊【發送】進行消息的發送處理,就能夠在對應的成員手機上查看到最新的消息了,下面是一個接受到圖片、文字的企業號界面。
其餘如視頻、語音等內容都要求上傳到服務器後在發送,發送處理操做同樣,不在贅述。
若是對這個《C#開發微信門戶及應用》系列感興趣,能夠關注個人其餘文章,系列隨筆以下所示:
C#開發微信門戶及應用(23)-微信小店商品管理接口的封裝和測試
C#開發微信門戶及應用(21)-微信企業號的消息和事件的接收處理及解密
C#開發微信門戶及應用(19)-微信企業號的消息發送(文本、圖片、文件、語音、視頻、圖文消息等)
C#開發微信門戶及應用(18)-微信企業號的通信錄管理開發之成員管理
C#開發微信門戶及應用(17)-微信企業號的通信錄管理開發之部門管理
C#開發微信門戶及應用(15)-微信菜單增長掃一掃、發圖片、發地理位置功能
C#開發微信門戶及應用(14)-在微信菜單中採用重定向獲取用戶數據
C#開發微信門戶及應用(11)--微信菜單的多種表現方式介紹
C#開發微信門戶及應用(10)--在管理系統中同步微信用戶分組信息