日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
微信企業(yè)號(hào)的菜單管理

前面幾篇陸續(xù)介紹了很多微信企業(yè)號(hào)的相關(guān)操作,企業(yè)號(hào)和公眾號(hào)一樣都可以自定義菜單,因此他們也可以通過(guò)API進(jìn)行菜單的創(chuàng)建、獲取列表、刪除的操作,因此本篇繼續(xù)探討這個(gè)主體,介紹企業(yè)號(hào)的菜單管理操作。

創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括保亭黎族網(wǎng)站建設(shè)、保亭黎族網(wǎng)站制作、保亭黎族網(wǎng)頁(yè)制作以及保亭黎族網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,保亭黎族網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到保亭黎族省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

菜單在很多情況下,能夠給我們提供一個(gè)快速入口,也可以用來(lái)獲取用戶信息的主要入口,通過(guò)OAuth2驗(yàn)證接口,以及自定義的重定向菜單,我們就可以獲取對(duì)應(yīng)的用戶ID,然后進(jìn)一步獲取到用戶的相關(guān)數(shù)據(jù),可以顯示給客戶。

1、菜單的總體介紹

菜單的事件處理如下所示,包括了單擊和跳轉(zhuǎn)兩個(gè)操作,未來(lái)企業(yè)號(hào)可能會(huì)增加一些和公眾號(hào)一樣的掃碼操作,拍照操作等功能的,目前只有兩個(gè)。

官方的菜單定義接口包含了下面三種操作,菜單創(chuàng)建、列表獲取和菜單刪除,這點(diǎn)和公眾號(hào)操作幾乎一樣了。

2、菜單的實(shí)體類定義和接口定義處理

我們定義菜單,包括定義它的一些屬性,包含有name, type, key,url,以及一個(gè)指向自身引用的子菜單引用,因此菜單就可以循環(huán)構(gòu)造多個(gè)層次,雖然嚴(yán)格意義上來(lái)講,企業(yè)號(hào)的菜單和公眾號(hào)菜單一樣,一級(jí)三個(gè),二級(jí)最多五個(gè),而且沒有三級(jí)菜單了。

實(shí)體類的UML圖示如下所示。

菜單管理的創(chuàng)建操作,官方定義如下所示。

  • 請(qǐng)求說(shuō)明

Https請(qǐng)求方式: POST

https://qyapi.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN&agentid=1

請(qǐng)求包如下:

{
   "button":[
       {	
           "type":"click",
           "name":"今日歌曲",
           "key":"V1001_TODAY_MUSIC"
       },
       {
           "name":"菜單",
           "sub_button":[
               {
                   "type":"view",
                   "name":"搜索",
                   "url":"http://www.soso.com/"
               },
               {
                   "type":"click",
                   "name":"贊一下我們",
                   "key":"V1001_GOOD"
               }
           ]
      }
   ]
}
  • 參數(shù)說(shuō)明
參數(shù) 必須 說(shuō)明
access_token調(diào)用接口憑證
agentid企業(yè)應(yīng)用的id,整型??稍趹?yīng)用的設(shè)置頁(yè)面查看
button一級(jí)菜單數(shù)組,個(gè)數(shù)應(yīng)為1~3個(gè)
sub_button二級(jí)菜單數(shù)組,個(gè)數(shù)應(yīng)為1~5個(gè)
type菜單的響應(yīng)動(dòng)作類型,目前有click、view兩種類型
name菜單標(biāo)題,不超過(guò)16個(gè)字節(jié),子菜單不超過(guò)40個(gè)字節(jié)
keyclick類型必須菜單KEY值,用于消息接口推送,不超過(guò)128字節(jié)
urlview類型必須網(wǎng)頁(yè)鏈接,員工點(diǎn)擊菜單可打開鏈接,不超過(guò)256字節(jié)
  • 權(quán)限說(shuō)明

管理員須擁有應(yīng)用的管理權(quán)限,并且應(yīng)用必須設(shè)置在回調(diào)模式。

返回結(jié)果

{
   "errcode":0,
   "errmsg":"ok"
}

根據(jù)上面官方的定義語(yǔ)義,我們菜單管理的C#管理接口定義如下所示。

 
 
  1. ///   
  2.     /// 企業(yè)號(hào)菜單管理接口定義  
  3.     ///   
  4.     public interface ICorpMenuApi  
  5.     {  
  6.         ///   
  7.         /// 獲取菜單數(shù)據(jù)  
  8.         ///   
  9.         /// 調(diào)用接口憑證  
  10.         ///   
  11.         MenuListJson GetMenu(string accessToken, string agentid);  
  12.  
  13.         ///   
  14.         /// 創(chuàng)建菜單  
  15.         ///   
  16.         /// 調(diào)用接口憑證  
  17.         /// 菜單對(duì)象  
  18.         ///   
  19.         CommonResult CreateMenu(string accessToken, MenuListJson menuJson, string agentid);  
  20.  
  21.         ///   
  22.         /// 刪除菜單  
  23.         ///   
  24.         /// 調(diào)用接口憑證  
  25.         ///   
  26.         CommonResult DeleteMenu(string accessToken, string agentid);  
  27.     } 

我們以創(chuàng)建菜單的實(shí)現(xiàn)為例來(lái)介紹微信企業(yè)號(hào)菜單的操作,其他的操作類似處理,都是返回一個(gè)公共的消息類,方便處理和讀取,代碼如下所示。

 
 
  1. ///   
  2.         /// 創(chuàng)建菜單  
  3.         ///   
  4.         /// 調(diào)用接口憑證  
  5.         /// 菜單對(duì)象  
  6.         ///   
  7.         public CommonResult CreateMenu(string accessToken, MenuListJson menuJson, string agentid)  
  8.         {  
  9.             var url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/menu/create?access_token={0}&agentid={1}", accessToken, agentid);  
  10.             string postData = menuJson.ToJson();  
  11.  
  12.             return Helper.GetCorpExecuteResult(url, postData);  
  13.         } 

3、企業(yè)號(hào)菜單管理接口的調(diào)用和處理效果

調(diào)用的代碼和效果圖如下所示。

 
 
  1. private void btnMenuCreate_Click(object sender, EventArgs e)  
  2.         {  
  3.             MenuJson productInfo = new MenuJson("產(chǎn)品介紹", new MenuJson[] {   
  4.                 new MenuJson("軟件產(chǎn)品介紹", ButtonType.click, "event-software")  
  5.                 , new MenuJson("框架源碼產(chǎn)品", ButtonType.click, "event-source")  
  6.                 , new MenuJson("軟件定制開發(fā)", ButtonType.click, "event-develop")  
  7.             });  
  8.  
  9.             MenuJson frameworkInfo = new MenuJson("框架產(chǎn)品", new MenuJson[] {   
  10.                 new MenuJson("Win開發(fā)框架", ButtonType.click, "win"),  
  11.                 new MenuJson("WCF開發(fā)框架", ButtonType.click, "wcf"),  
  12.                 new MenuJson("混合式框架", ButtonType.click, "mix"),   
  13.                 new MenuJson("Web開發(fā)框架", ButtonType.click, "web")  
  14.                 ,new MenuJson("代碼生成工具", ButtonType.click, "database2sharp")  
  15.             });  
  16.  
  17.             MenuJson relatedInfo = new MenuJson("相關(guān)鏈接", new MenuJson[] {   
  18.                 new MenuJson("公司介紹", ButtonType.click, "event_company"),  
  19.                 new MenuJson("官方網(wǎng)站", ButtonType.view, "http://www.iqidi.com"),  
  20.                 new MenuJson("聯(lián)系我們", ButtonType.click, "event_contact"),  
  21.                 new MenuJson("應(yīng)答系統(tǒng)", ButtonType.click, "set-1"),      
  22.                 new MenuJson("發(fā)郵件", ButtonType.view, "http://mail.qq.com/cgi-bin/qm_share?t=qm_mailme&email=S31yfX15fn8LOjplKCQm")  
  23.             });  
  24.  
  25.             MenuListJson menuJson = new MenuListJson();  
  26.             menuJson.button.AddRange(new MenuJson[] { productInfo, frameworkInfo, relatedInfo });  
  27.  
  28.             //Console.WriteLine(menuJson.ToJson());  
  29.  
  30.             if (MessageUtil.ShowYesNoAndWarning("您確認(rèn)要?jiǎng)?chuàng)建菜單嗎") == System.Windows.Forms.DialogResult.Yes)  
  31.             {  
  32.                 ICorpMenuApi bll = new CorpMenuApi();   
  33.                 CommonResult result = bll.CreateMenu(token, menuJson, agentid);  
  34.                 Console.WriteLine("創(chuàng)建菜單:" + (result.Success ? "成功" : "失敗:" + result.ErrorMessage));  
  35.             }  
  36.         }  
  37.  
  38.         private void btnMenuGet_Click(object sender, EventArgs e)  
  39.         {  
  40.             ICorpMenuApi bll = new CorpMenuApi();  
  41.             MenuListJson menu = bll.GetMenu(token, agentid);  
  42.             if (menu != null)  
  43.             {  
  44.                 Console.WriteLine(menu.ToJson());  
  45.             }  
  46.         } 

調(diào)用代碼的測(cè)試輸出如下所示。

原文出自:http://www.cnblogs.com/wuhuacong/p/3995678.html


當(dāng)前題目:微信企業(yè)號(hào)的菜單管理
標(biāo)題來(lái)源:http://m.5511xx.com/article/djjchgd.html