狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C#開(kāi)發(fā)微信門戶及應(yīng)用(3)--文本消息和圖文消息的應(yīng)答

admin
2014年12月2日 1:12 本文熱度 5400


微信應(yīng)用如火如荼,很多公司都希望搭上信息快車,這個(gè)是一個(gè)商機(jī),也是一個(gè)技術(shù)的方向,因此,有空研究下、學(xué)習(xí)下微信的相關(guān)開(kāi)發(fā),也就成為計(jì)劃的安排事情之一了。本系列文章希望從一個(gè)循序漸進(jìn)的角度上,全面介紹微信的相關(guān)開(kāi)發(fā)過(guò)程和相關(guān)經(jīng)驗(yàn)總結(jié),希望給大家了解一下相關(guān)的開(kāi)發(fā)歷程。


在前面兩篇兩篇隨筆《C#開(kāi)發(fā)微信門戶及應(yīng)用(1)--開(kāi)始使用微信接口》和《C#開(kāi)發(fā)微信門戶及應(yīng)用(2)--微信消息的處理和應(yīng)答》里面,大致介紹了我微信應(yīng)用的框架構(gòu)建,本隨筆繼續(xù)介紹這一主題,介紹消息應(yīng)答里面的文本應(yīng)答和圖文應(yīng)答的過(guò)程。


我們知道,給手機(jī)用戶發(fā)送響應(yīng)消息,它可以分為好多種方式,如回復(fù)文本消息、回復(fù)圖片消息、回復(fù)語(yǔ)音消息、回復(fù)視頻消息、回復(fù)音樂(lè)消息、回復(fù)圖文消息等,如下所示。



而其中圖片、視頻、語(yǔ)音這三種方式,是需要開(kāi)通微信認(rèn)證才可以向用戶發(fā)送存在微信服務(wù)器上的媒體信息,一般沒(méi)有認(rèn)證的公眾號(hào)或者服務(wù)號(hào),是不能發(fā)送這幾種內(nèi)容的。


1、實(shí)體信息關(guān)系及定義


在上一篇微信開(kāi)發(fā)的隨筆中,我展示了對(duì)接收消息和回復(fù)消息的應(yīng)用實(shí)體類,這些實(shí)體類是我根據(jù)需要,根據(jù)開(kāi)發(fā)需要,在應(yīng)用層面對(duì)它們進(jìn)行了封裝,如回復(fù)的消息關(guān)系如下所示。



消息基類BaseMessage的實(shí)體類定義如下所示,它對(duì)日期構(gòu)造了一個(gè)整形數(shù)值,并具備了一些常規(guī)的屬性,并且還有一個(gè)重要的ToXML方法,用來(lái)給方法傳遞這些XML數(shù)據(jù)的。



復(fù)制代碼
    /// <summary>
/// 基礎(chǔ)消息內(nèi)容
/// </summary>
[XmlRoot(ElementName = "xml")]
public class BaseMessage
{
/// <summary>
/// 初始化一些內(nèi)容,如創(chuàng)建時(shí)間為整形,
/// </summary>
public BaseMessage()
{
this.CreateTime = DateTime.Now.DateTimeToInt();
}
/// <summary>
/// 開(kāi)發(fā)者微信號(hào)
/// </summary>
public string ToUserName { get; set; }
/// <summary>
/// 發(fā)送方帳號(hào)(一個(gè)OpenID)
/// </summary>
public string FromUserName { get; set; }
/// <summary>
/// 消息創(chuàng)建時(shí)間 (整型)
/// </summary>
public int CreateTime { get; set; }
/// <summary>
/// 消息類型
/// </summary>
public string MsgType { get; set; }
public virtual string ToXml()
{
this.CreateTime = DateTime.Now.DateTimeToInt();//重新更新
return MyXmlHelper.ObjectToXml(this);
}
}

復(fù)制代碼

回復(fù)的文本消息實(shí)體類代碼如下所示,我們可以看到,它繼承了很多通用的實(shí)體屬性,并且還具備了一個(gè)ToXml的通用方法,我們需要把它轉(zhuǎn)換為響應(yīng)的XML的時(shí)候,就使用這個(gè)方法就可以了。



復(fù)制代碼
    /// <summary>
/// 回復(fù)文本消息
/// </summary>
[System.Xml.Serialization.XmlRoot(ElementName = "xml")]
public class ResponseText : BaseMessage
{
public ResponseText()
{
this.MsgType = ResponseMsgType.Text.ToString().ToLower();
}
public ResponseText(BaseMessage info) : this()
{
this.FromUserName = info.ToUserName;
this.ToUserName = info.FromUserName;
}
/// <summary>
/// 內(nèi)容
/// </summary>
public string Content { get; set; }
}

復(fù)制代碼

而圖文消息對(duì)象類ResponseNews,它包含更多的信息定義



復(fù)制代碼
    /// <summary>
/// 回復(fù)圖文消息
/// </summary>
[System.Xml.Serialization.XmlRoot(ElementName = "xml")]
public class ResponseNews : BaseMessage
{
public ResponseNews()
{
this.MsgType = ResponseMsgType.News.ToString().ToLower();
this.Articles = new List<ArticleEntity>();
}
public ResponseNews(BaseMessage info) : this()
{
this.FromUserName = info.ToUserName;
this.ToUserName = info.FromUserName;
}
/// <summary>
/// 圖文消息個(gè)數(shù),限制為10條以內(nèi)
/// </summary>
public int ArticleCount
{
get
{
return this.Articles.Count;
}
set
{
;
//增加這個(gè)步驟才出來(lái)XML內(nèi)容
}
}
/// <summary>
/// 圖文列表。
/// 多條圖文消息信息,默認(rèn)第一個(gè)item為大圖,注意,如果圖文數(shù)超過(guò)10,則將會(huì)無(wú)響應(yīng)
/// </summary>
[System.Xml.Serialization.XmlArrayItem("item")]
public List<ArticleEntity> Articles { get; set; }
}

復(fù)制代碼

而其中的圖文列表集合中的對(duì)象,它也是一個(gè)實(shí)體類型,包含了一些圖文的鏈接,標(biāo)題等信息,不在贅述。


2、消息的回復(fù)處理


如對(duì)于文本消息,我們可以用以下的方式進(jìn)行處理。


                ResponseText response = new ResponseText(info);
response.Content
= "抱歉,此功能暫未開(kāi)通。";
result
= response.ToXml();

對(duì)于圖文消息,我們可能需要錄入更多的消息才能返回更好的效果。


注意圖文的消息,圖片的尺寸最好按照官方的標(biāo)準(zhǔn),否則在手機(jī)上看起來(lái)不好看,官方的標(biāo)準(zhǔn)好像是寬高是(360,200)像素



復(fù)制代碼
        /// <summary>
/// 訂閱或者顯示公司信息
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
private string ShowCompanyInfo(BaseMessage info)
{
string result = "";
//使用在微信平臺(tái)上的圖文信息(單圖文信息)
ResponseNews response = new ResponseNews(info);
ArticleEntity entity
= new ArticleEntity();
entity.Title
= "廣州愛(ài)奇迪軟件科技有限公司";
entity.Description
= "歡迎關(guān)注廣州愛(ài)奇迪軟件--專業(yè)的單位信息化軟件和軟件開(kāi)發(fā)框架提供商,我們立志于為客戶提供最好的軟件及服務(wù)。\r\n";
entity.Description
+= "我們是一家極富創(chuàng)新性的軟件科技公司,從事研究、開(kāi)發(fā)并銷售最可靠的、安全易用的技術(shù)產(chǎn)品及優(yōu)質(zhì)專業(yè)的服務(wù),幫助全球客戶和合作伙伴取得成功。\r\n......(此處省略1000字,哈哈)";
entity.PicUrl
= "http://www.iqidi.com/WeixinImage/company.png";
entity.Url
= "http://www.iqidi.com";
response.Articles.Add(entity);
result
= response.ToXml();
return result;
}

復(fù)制代碼

我們來(lái)看看我公司的微信門戶菜單,看起來(lái)是不是很酷呢。



對(duì)于這兩種(文本消息、圖文消息)用的地方是最多,很多微信門戶,都主要是使用這兩種方式進(jìn)行響應(yīng)。當(dāng)然,我們還可以根據(jù)客戶手機(jī)提交上來(lái)的各種消息進(jìn)行不同的處理,請(qǐng)求消息的類型我在上一篇的隨筆有介紹,如下所示。



需要關(guān)注了解整體效果,可以使用微信直接掃描二維碼即可。



 


C#開(kāi)發(fā)微信門戶及應(yīng)用(20)-微信企業(yè)號(hào)的菜單管理


C#開(kāi)發(fā)微信門戶及應(yīng)用(19)-微信企業(yè)號(hào)的消息發(fā)送(文本、圖片、文件、語(yǔ)音、視頻、圖文消息等)


C#開(kāi)發(fā)微信門戶及應(yīng)用(18)-微信企業(yè)號(hào)的通訊錄管理開(kāi)發(fā)之成員管理


C#開(kāi)發(fā)微信門戶及應(yīng)用(17)-微信企業(yè)號(hào)的通訊錄管理開(kāi)發(fā)之部門管理


C#開(kāi)發(fā)微信門戶及應(yīng)用(16)-微信企業(yè)號(hào)的配置和使用


C#開(kāi)發(fā)微信門戶及應(yīng)用(15)-微信菜單增加掃一掃、發(fā)圖片、發(fā)地理位置功能


 C#開(kāi)發(fā)微信門戶及應(yīng)用(14)-在微信菜單中采用重定向獲取用戶數(shù)據(jù)


C#開(kāi)發(fā)微信門戶及應(yīng)用(13)-使用地理位置擴(kuò)展相關(guān)應(yīng)用


C#開(kāi)發(fā)微信門戶及應(yīng)用(12)-使用語(yǔ)音處理


C#開(kāi)發(fā)微信門戶及應(yīng)用(11)--微信菜單的多種表現(xiàn)方式介紹


C#開(kāi)發(fā)微信門戶及應(yīng)用(10)--在管理系統(tǒng)中同步微信用戶分組信息


C#開(kāi)發(fā)微信門戶及應(yīng)用(9)-微信門戶菜單管理及提交到微信服務(wù)器


C#開(kāi)發(fā)微信門戶及應(yīng)用(8)-微信門戶應(yīng)用管理系統(tǒng)功能介紹


C#開(kāi)發(fā)微信門戶及應(yīng)用(7)-微信多客服功能及開(kāi)發(fā)集成


C#開(kāi)發(fā)微信門戶及應(yīng)用(6)--微信門戶菜單的管理操作


C#開(kāi)發(fā)微信門戶及應(yīng)用(5)--用戶分組信息管理


C#開(kāi)發(fā)微信門戶及應(yīng)用(4)--關(guān)注用戶列表及詳細(xì)信息管理


C#開(kāi)發(fā)微信門戶及應(yīng)用(3)--文本消息和圖文消息的應(yīng)答


C#開(kāi)發(fā)微信門戶及應(yīng)用(2)--微信消息的處理和應(yīng)答


C#開(kāi)發(fā)微信門戶及應(yīng)用(1)--開(kāi)始使用微信接口


 



主要研究技術(shù):代碼生成工具、Visio二次開(kāi)發(fā)、客戶關(guān)系管理軟件、送水管理軟件等共享軟件開(kāi)發(fā)
專注于Winform開(kāi)發(fā)框架Web開(kāi)發(fā)框架、WCF開(kāi)發(fā)框架的研究及應(yīng)用。
  轉(zhuǎn)載請(qǐng)注明出處:
撰寫(xiě)人:伍華聰  http://www.iqidi.com 
    





該文章在 2014/12/2 1:12:31 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved