


C# は WeChat ポータルを開発し、WeChat エンタープライズ アカウントを使用してメッセージ (テキスト、畫像、ファイル、音聲、ビデオ、グラフィック メッセージなど) を送信します。
Mar 02, 2017 am 09:36 AMエンタープライズ アカウントは主に企業(yè)のニーズに合わせて設(shè)計されているため、內(nèi)部メッセージの交換は非常に重要であり、特に大企業(yè)の場合、送受信されるメッセージの數(shù)はかなりの數(shù)になるはずであるため、內(nèi)部メッセージの交換は非常に重要です。エンタープライズ アカウントと組み合わせて実現(xiàn)できます。エンタープライズ アカウントは、セキュリティと無制限のメッセージングに重點を置いているという特徴があり、企業(yè)の內(nèi)部環(huán)境に非常に適しています。この記事では、エンタープライズ アカウントを使用して、テキスト、畫像、ファイル、音聲、ビデオ、グラフィック メッセージなどのメッセージを送信する方法を主に紹介します。
1. エンタープライズ アカウントの機(jī)能 エンタープライズ アカウントには次の機(jī)能があります: 1) フォローする方が安全です – エンタープライズ アドレス帳のメンバーのみがエンタープライズ アカウント、階層管理者、機(jī)密メッセージなどをフォローできます。特長 企業(yè)內(nèi)部情報のセキュリティを確保します。 企業(yè)は、フォロワー ID の自己検証を設(shè)定し、二次セキュリティ検証を?qū)g施して、企業(yè)情報の使用と送信のセキュリティを確保できます。 従業(yè)員が退職した場合、企業(yè)管理者はアドレス帳からメンバーを削除でき、メンバーは自動的に企業(yè)アカウントのフォローを解除され、WeChat の企業(yè)アカウント履歴も消去されます。 2) アプリケーションの構(gòu)成可能性 – 企業(yè)は、エンタープライズ アカウントで複數(shù)のサービス アカウントを構(gòu)成でき、承認(rèn)されたエンタープライズ メンバーのみが対応するサービス アカウントを使用できます。 3) 無制限のメッセージ – メッセージの送信に制限はなく、企業(yè)の複雑でパーソナライズされたアプリケーション シナリオに適応する完全な管理インターフェイスと WeChat ネイティブ機(jī)能を提供します。 企業(yè)は従業(yè)員に積極的にメッセージを送信できます。メッセージの數(shù)に制限はありません。
4) より使いやすくなりました – エンタープライズ アカウントには WeChat に統(tǒng)一されたメッセージ入口があり、ユーザーはエンタープライズ アカウントのメッセージをより便利に管理できます。 WeChat アドレス帳は、エンタープライズ アカウントのアプリケーションに直接アクセスすることもできます。 2. エンタープライズ アカウント管理インターフェイスのコンテンツ エンタープライズ アカウントの現(xiàn)在のコンテンツは、マテリアル管理、パッシブ応答メッセージ、アドレス帳管理、カスタム メニューなどを含む、以下の階層図を使用して表示できます。見つかりました。 以下の図を參照してください。
メッセージはテキスト、畫像、ファイル、音聲、ビデオ、ニュース、MpNewsなどを含むいくつかのタイプに分かれているため。
メッセージの量に制限はありません
。インターフェースを呼び出すときは、HTTPS プロトコルと JSON データ パケット形式を使用します。データ パケットを暗號化する必要はありません
。現(xiàn)在、テキスト、畫像、音聲、ビデオ、ファイル、グラフィックス、その他のメッセージ タイプをサポートしています。ニュース タイプに加えて、機(jī)密性オプションを使用して他のタイプのメッセージを送信することもできます。機(jī)密メッセージには透かしが入れられ、受信者のみが読むことができます。
送信されたテキストメッセージを例に挙げます。その定義は次のとおりです。
テキストメッセージ
{ ???"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" }
パラメータ | 必須 | 説明 |
---|---|---|
ユーザー | いいえ | ユーザーIDリスト(メッセージ受信者、複數(shù))受信者は '|' で區(qū)切られます)。特殊なケース: @all として指定すると、 |
toparty | No | PartyID リストがエンタープライズ アプリケーションをフォローしているすべてのメンバーに送信されます。複數(shù)の受信者は「|」で區(qū)切られます。 touser が @all |
totag | No | TagID リストの場合、このパラメータは無視され、複數(shù)の受信者は「|」で區(qū)切られます。 touser が @all の場合、このパラメーターは無視されます。 |
msgtype | は、 | メッセージ タイプであり、次のように固定されます。 text |
agentid | は、 | エンタープライズ アプリケーションの ID (整數(shù))。アプリの設(shè)定ページで確認(rèn)できます |
內(nèi)容 | はい | メッセージ內(nèi)容 |
安全 | いいえ | は機(jī)密メッセージかどうかを示し、0はいいえ、1ははいを意味します。デフォルトは 0 |
これらの各メッセージには、共通の屬性である次のメッセージが含まれます:
????touser":?"UserID1|UserID2|UserID3",???"toparty":?"?PartyID1?|?PartyID2?",???"totag":?"?TagID1?|?TagID2?",???"msgtype":?"text",???"agentid":?"1",
したがって、これらの共通情報を便利に運ぶための基本クラスを定義できます。 。
????///?<summary> ????///?企業(yè)號發(fā)送消息的基礎(chǔ)消息內(nèi)容????///?</summary> ????public?class?CorpSendBase ????{?????? ????????///?<summary> ????????///?UserID列表(消息接收者,多個接收者用‘|’分隔)。特殊情況:指定為@all,則向關(guān)注該企業(yè)應(yīng)用的全部成員發(fā)送????????///?</summary> ????????public?string?touser?{?get;?set;?}????????///?<summary> ????????///?PartyID列表,多個接受者用‘|’分隔。當(dāng)touser為@all時忽略本參數(shù)????????///?</summary> ????????public?string?toparty?{?get;?set;?}????????///?<summary> ????????///?TagID列表,多個接受者用‘|’分隔。當(dāng)touser為@all時忽略本參數(shù)????????///?</summary> ????????public?string?totag?{?get;?set;?}????????///?<summary> ????????///?消息類型????????///?</summary> ????????public?string?msgtype?{?get;?set;?}????????///?<summary> ????????///?企業(yè)應(yīng)用的id,整型??稍趹?yīng)用的設(shè)置頁面查看????????///?</summary> ????????public?string?agentid?{?get;?set;?}????????///?<summary> ????????///?表示是否是保密消息,0表示否,1表示是,默認(rèn)0????????///?</summary> ????????[JsonProperty(NullValueHandling?=?NullValueHandling.Ignore)]????????public?string?safe?{?get;?set;?} ????}
次に、以下に示すように、他のメッセージはこの基本クラスを 1 つずつ継承できます。
は最終的に以下の継承図を形成します。
5. メッセージ インターフェイスの定義と実裝
関連する送信オブジェクトを定義した後、以下に示すように、その統(tǒng)合された送信インターフェイスを定義できます。
????///?<summary> ????///?企業(yè)號消息管理接口定義????///?</summary> ????public?interface?ICorpMessageApi ????{???????? ????????///?<summary> ????????///?發(fā)送消息。????????///?需要管理員對應(yīng)用有使用權(quán)限,對收件人touser、toparty、totag有查看權(quán)限,否則本次調(diào)用失敗。????????///?</summary> ????????///?<param> ????????///?<returns></returns> ????????CommonResult?SendMessage(string?accessToken,?CorpSendBase?data); ????}
最後に、インターフェース定義に従ってテキストやその他のタイプのメッセージが実裝されます。実裝コードは次のとおりです。 送信プロセスでは、暗號化のために暗號化クラスを呼び出す必要がないことに注意してください。
????///?<summary> ????///?企業(yè)號消息管理實現(xiàn)類????///?</summary> ????public?class?CorpMessageApi?:?ICorpMessageApi ????{????????///?<summary> ????????///?發(fā)送消息。????????///?需要管理員對應(yīng)用有使用權(quán)限,對收件人touser、toparty、totag有查看權(quán)限,否則本次調(diào)用失敗。????????///?</summary> ????????///?<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; ????????} ????}</corpsendresult>6. メッセージ送信操作と実際の効果 対応する送信オブジェクトを定義した後、テキスト、畫像、ファイル、音聲、その他の種類のメッセージを含む統(tǒng)合メッセージ送信操作を?qū)g行できることに注意してください。サーバーにアップロードし、mediaId に基づいて送信する必要があります。 テキストと畫像を送信するための操作コードは次のとおりです。
????????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); ????????????????} ????????????} ????????}WeChat Enterprise アカウントの最終的なスクリーンショットは以下のとおりです。テキスト テスト、ファイル テスト、グラフィック テスト、音聲テストが含まれており、すべて正常です。

ホットAIツール

Undress AI Tool
脫衣畫像を無料で

Undresser.AI Undress
リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover
寫真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中國語版
中國語版、とても使いやすい

ゼンドスタジオ 13.0.1
強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)