国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
1、企業(yè)號特點
2、企業(yè)號的管理接口內(nèi)容
3、企業(yè)號消息和事件的處理
?
4、企業(yè)號消息管理
5、消息接口的定義和實現(xiàn)?
6、消息的發(fā)送操作和實際效果
首頁 微信小程序 微信開發(fā) C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)

C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)

Mar 02, 2017 am 09:36 AM

?我們知道,企業(yè)號主要是面向企業(yè)需求而生的,因此內(nèi)部消息的交流顯得非常重要,而且發(fā)送、回復消息數(shù)量應該很可觀,對于大企業(yè)尤其如此,因此可以結合企業(yè)號實現(xiàn)內(nèi)部消息的交流。企業(yè)號具有關注安全、消息無限制等特點,很適合企業(yè)內(nèi)部的環(huán)境。本文主要介紹如何利用企業(yè)號實現(xiàn)文本、圖片、文件、語音、視頻、圖文消息等消息的發(fā)送操作。

1、企業(yè)號特點

對于企業(yè)號,有以下一些特點:

1)關注更安全

–只有企業(yè)通訊錄的成員才能關注企業(yè)號,分級管理員、保密消息等各種特性確保企業(yè)內(nèi)部信息的安全。

企業(yè)可以設置自行驗證關注者身份,進行二次安全驗證,保證企業(yè)信息使用和傳遞安全。

若員工離職,企業(yè)管理員可在通訊錄中刪除該成員,該成員即自動取消關注企業(yè)號,同時微信中的企業(yè)號歷史記錄也會被清除。

2)應用可配置

–企業(yè)可自行在企業(yè)號中可配置多個服務號,可以連接不同的企業(yè)應用系統(tǒng),只有授權的企業(yè)成員才能使用相應的服務號。

3)消息無限制

–發(fā)送消息無限制,并提供完善的的管理接口及微信原生能力,以適應企業(yè)復雜、個性化的應用場景。

企業(yè)可以主動發(fā)消息給員工,消息量不受限制。

4)使用更便捷

–企業(yè)號在微信中有統(tǒng)一的消息入口,用戶可以更方便地管理企業(yè)號消息。微信通訊錄也可以直接訪問企業(yè)號中的應用。

?

2、企業(yè)號的管理接口內(nèi)容

目前企業(yè)號的內(nèi)容可以用下面的分層圖來展示,分別包含素材管理、被動響應消息、通訊錄管理、自定義菜單等內(nèi)容,詳細可以看下面圖示。

C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)

?

3、企業(yè)號消息和事件的處理

企業(yè)號和公眾號一樣,可以分為消息處理和事件處理,下面是他們兩種類型的處理操作,也就發(fā)送的消息有文本消息、圖片消息、文件消息、視頻消息、語音消息、地理文字消息、圖文和多媒體消息等。

事件處理主要就是關注、取消關注事件,以及菜單click類型和view類型兩種操作,還有就是地理位置上報事件等。

兩種類型的處理圖如下所示。

C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)?

?

4、企業(yè)號消息管理

在企業(yè)的管理后臺,和公眾號一樣,可以看到對應信息交流記錄,包括文字、圖片、地理位置等等,如下所示。

?C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)

由于消息分為幾種類型,包括文本(Text)、圖片(Image)、文件(File)、語音(Voice)、視頻(Video)、圖文消息等(News)、MpNews等。

因此我們需要分別對它們進行一定的定義和封裝處理,如下是它們的信息對象設計圖。

?C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)

?

企業(yè)號發(fā)送消息的官方定義如下:

企業(yè)可以主動發(fā)消息給員工,消息量不受限制。

調(diào)用接口時,使用Https協(xié)議、JSON數(shù)據(jù)包格式,數(shù)據(jù)包不需做加密處理。

目前支持文本、圖片、語音、視頻、文件、圖文等消息類型。除了news類型,其它類型的消息可在發(fā)送時加上保密選項,保密消息會被打上水印,并且只有接收者才能閱讀。

?

我們以發(fā)送的文本消息為例進行說明,它的定義如下所示。

  • text消息

{
???"touser":?"UserID1|UserID2|UserID3",
???"toparty":?"?PartyID1?|?PartyID2?",
???"totag":?"?TagID1?|?TagID2?",
???"msgtype":?"text",
???"agentid":?"1",
???"text":?{
???????"content":?"Holiday?Request?For?Pony(http://www.miracleart.cn/)"
???},
???"safe":"0"
}

?

參數(shù) 必須 說明
touser UserID列表(消息接收者,多個接收者用‘|’分隔)。特殊情況:指定為@all,則向關注該企業(yè)應用的全部成員發(fā)送
toparty PartyID列表,多個接受者用‘|’分隔。當touser為@all時忽略本參數(shù)
totag TagID列表,多個接受者用‘|’分隔。當touser為@all時忽略本參數(shù)
msgtype 消息類型,此時固定為:text
agentid 企業(yè)應用的id,整型。可在應用的設置頁面查看
content 消息內(nèi)容
safe 表示是否是保密消息,0表示否,1表示是,默認0

?

?

?其中每種消息都會包含以下消息所示,也就是它們共同的屬性:

????touser":?"UserID1|UserID2|UserID3",???"toparty":?"?PartyID1?|?PartyID2?",???"totag":?"?TagID1?|?TagID2?",???"msgtype":?"text",???"agentid":?"1",

因此我們可以定義一個基類用來方便承載這些共同的信息。

????///?<summary>
????///?企業(yè)號發(fā)送消息的基礎消息內(nèi)容????///?</summary>
????public?class?CorpSendBase
????{??????
????????///?<summary>
????????///?UserID列表(消息接收者,多個接收者用‘|’分隔)。特殊情況:指定為@all,則向關注該企業(yè)應用的全部成員發(fā)送????????///?</summary>
????????public?string?touser?{?get;?set;?}????????///?<summary>
????????///?PartyID列表,多個接受者用‘|’分隔。當touser為@all時忽略本參數(shù)????????///?</summary>
????????public?string?toparty?{?get;?set;?}????????///?<summary>
????????///?TagID列表,多個接受者用‘|’分隔。當touser為@all時忽略本參數(shù)????????///?</summary>
????????public?string?totag?{?get;?set;?}????????///?<summary>
????????///?消息類型????????///?</summary>
????????public?string?msgtype?{?get;?set;?}????????///?<summary>
????????///?企業(yè)應用的id,整型??稍趹玫脑O置頁面查看????????///?</summary>
????????public?string?agentid?{?get;?set;?}????????///?<summary>
????????///?表示是否是保密消息,0表示否,1表示是,默認0????????///?</summary>
????????[JsonProperty(NullValueHandling?=?NullValueHandling.Ignore)]????????public?string?safe?{?get;?set;?}

????}

然后其他消息逐一繼承這個基類即可,如下所示。

C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)

最終會構成下面這個繼承關系圖。?

?C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)

5、消息接口的定義和實現(xiàn)?

?定義好相關的發(fā)送對象后,我們就可以定義它的統(tǒng)一發(fā)送接口了,如下所示。

????///?<summary>
????///?企業(yè)號消息管理接口定義????///?</summary>
????public?interface?ICorpMessageApi
????{????????
????????///?<summary>
????????///?發(fā)送消息。????????///?需要管理員對應用有使用權限,對收件人touser、toparty、totag有查看權限,否則本次調(diào)用失敗。????????///?</summary>
????????///?<param name="accessToken"></param>
????????///?<returns></returns>
????????CommonResult?SendMessage(string?accessToken,?CorpSendBase?data);
????}

最終,文本等類型的消息會根據(jù)接口定義進行實現(xiàn),實現(xiàn)代碼如下所示。注意,發(fā)送過程不需要調(diào)用加密類進行加密。

????///?<summary>
????///?企業(yè)號消息管理實現(xiàn)類????///?</summary>
????public?class?CorpMessageApi?:?ICorpMessageApi
????{????????///?<summary>
????????///?發(fā)送消息。????????///?需要管理員對應用有使用權限,對收件人touser、toparty、totag有查看權限,否則本次調(diào)用失敗。????????///?</summary>
????????///?<param name="accessToken"></param>
????????///?<returns></returns>
????????public?CommonResult?SendMessage(string?accessToken,?CorpSendBase?data)
????????{????????
????????????CommonResult?result?=?new?CommonResult();????????????string?urlFormat?=?"http://www.miracleart.cn/{0}";????????????var?url?=?string.Format(urlFormat,?accessToken);????????????var?postData?=?data.ToJson();????????????//數(shù)據(jù)不用加密發(fā)送
????????????CorpSendResult?sendResult?=?CorpJsonHelper<CorpSendResult>.ConvertJson(url,?postData);????????????if?(sendResult?!=?null)
????????????{
????????????????result.Success?=?(sendResult.errcode?==?CorpReturnCode.請求成功);
????????????????result.ErrorMessage?=?string.Format("invaliduser:{0},invalidparty:{1},invalidtag:{2}",
????????????????????sendResult.invaliduser,?sendResult.invalidparty,?sendResult.invalidtag);
????????????}????????????return?result;
????????}
????}

6、消息的發(fā)送操作和實際效果

?定義好相應的發(fā)送對象后,我們就可以進行統(tǒng)一的消息發(fā)送操作,包括文本、圖片、文件、語音等等類型的消息,注意有些消息是需要上傳到服務器上,然后在根據(jù)mediaId進行發(fā)送出去的。

發(fā)送文本和圖片的操作代碼如下所示。

????????private?void?btnSendText_Click(object?sender,?EventArgs?e)
????????{????????????//發(fā)送文本內(nèi)容
????????????ICorpMessageApi?bll?=?new?CorpMessageApi();

????????????CorpSendText?text?=?new?CorpSendText("API?中文測試(http://www.miracleart.cn/)");
????????????text.touser?=?"wuhuacong";
????????????text.toparty?=?"4";//部門ID
????????????text.totag?=?"0";

????????????text.safe?=?"0";
????????????text.agentid?=?"0";

????????????CommonResult?result?=?bll.SendMessage(token,?text);????????????if?(result?!=?null)
????????????{
????????????????Console.WriteLine("發(fā)送消息:{0}?{1}?{2}",?text.text.content,?(result.Success???"成功"?:?"失敗"),?result.ErrorMessage);
????????????}
????????}????????private?void?btnSendImage_Click(object?sender,?EventArgs?e)
????????{
????????????btnUpload_Click(sender,?e);????????????if?(!string.IsNullOrEmpty(image_mediaId))
????????????{????????????????//發(fā)送圖片內(nèi)容
????????????????ICorpMessageApi?bll?=?new?CorpMessageApi();

????????????????CorpSendImage?image?=?new?CorpSendImage(image_mediaId);
????????????????CommonResult?result?=?bll.SendMessage(token,?image);????????????????if?(result?!=?null)
????????????????{
????????????????????Console.WriteLine("發(fā)送圖片消息:{0}?{1}?{2}",?image_mediaId,?(result.Success???"成功"?:?"失敗"),?result.ErrorMessage);
????????????????}
????????????}
????????}

最后在微信企業(yè)號上截圖效果如下所示,包括了文本測試、文件測試、圖文測試、語音測試均正常。

C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)?C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)

?更多C#開發(fā)微信門戶及應用微信企業(yè)號的消息發(fā)送(文本、圖片、文件、語音、視頻、圖文消息等)相關文章請關注PHP中文網(wǎng)!


本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276