站長資訊網
最全最豐富的資訊網站

聯通微信和釘釘服務

聯通微信和釘釘服務

【相關學習推薦:微信公眾號開發教程】

微信 和 釘釘,分屬于 騰訊 和 阿里巴巴 兩大陣營,當他們之間可以互聯互通,會是一種怎樣神奇的場景?

今天,我們就通過 fastwego/offiaccountfastwego/dingding 這兩個開源 Golang SDK 試一試:

實現一個微信公眾號秒變翻譯機的服務:將用戶發送過來的中文文本,翻譯成法語。

微信開放平臺 & 釘釘開放平臺

微信公眾號

開啟開發模式,接管用戶發送的消息:

聯通微信和釘釘服務

同時,還將獲取到微信公眾號的 appid/secret/token 配置信息

釘釘開放平臺

開通企業內部 H5 微應用并完成 AI 接口授權:

聯通微信和釘釘服務

同時還將獲取的釘釘 AppKey/AppSecret 的配置信息

翻譯服務開發

翻譯服務非常簡單:

  • 獲取微信公眾號用戶發送的文本
  • 調用釘釘 AI 翻譯接口,轉換為目標語言
  • 響應微信公眾號,將翻譯結果發送給用戶

主要代碼:

// 微信公眾賬號var OffiAccount *offiaccount.OffiAccount// 釘釘 App 實例var DingApp *dingding.Appfunc init() {     // 加載配置文件     viper.SetConfigFile(".env")     _ = viper.ReadInConfig()      // 創建公眾號實例     OffiAccount = offiaccount.New(offiaccount.Config{         Appid:          viper.GetString("APPID"),         Secret:         viper.GetString("SECRET"),     })      // 創建釘釘應用實例     DingApp = dingding.NewApp(dingding.AppConfig{         AppKey:    viper.GetString("AppKey"),         AppSecret: viper.GetString("AppSecret"),     })}func HandleMessage(c *gin.Context) {      // 獲取公眾號消息     body, _ := ioutil.ReadAll(c.Request.Body)     log.Println(string(body))      message, err := OffiAccount.Server.ParseXML(body)     if err != nil {         log.Println(err)     }      var output interface{}     switch message.(type) {     case type_message.MessageText: // 文本 消息         msg := message.(type_message.MessageText)          // 調用 釘釘 翻譯服務         params := struct {             Query          string `json:"query"`             TargetLanguage string `json:"target_language"`             SourceLanguage string `json:"source_language"`         }{}          params.Query = msg.Content         params.SourceLanguage = "zh"         params.TargetLanguage = "fr"          data, err := json.Marshal(params)         if err != nil {             fmt.Println(string(data), err)             return         }          // 翻譯接口         resp, err := ai.Translate(DingApp, data)         fmt.Println(string(resp), err)          if err != nil {             return         }          // 翻譯結果         result := struct {             Errcode int64  `json:"errcode"`             Errmsg  string `json:"errmsg"`             Result  string `json:"result"`         }{}         err = json.Unmarshal(resp, &result)         fmt.Println(result, err)         if err != nil {             return         }          // 回復公眾號 翻譯結果文本消息         output = type_message.ReplyMessageText{             ReplyMessage: type_message.ReplyMessage{                 ToUserName:   type_message.CDATA(msg.FromUserName),                 FromUserName: type_message.CDATA(msg.ToUserName),                 CreateTime:   strconv.FormatInt(time.Now().Unix(), 10),                 MsgType:      type_message.ReplyMsgTypeText,             },             Content: type_message.CDATA(result.Result),         }     }      OffiAccount.Server.Response(c.Writer, c.Request, output)}

運行效果

聯通微信和釘釘服務

結語

至此,在fastwego/offiaccountfastwego/dingding 這兩個開源 Golang SDK 的輔助下,我們快速實現了微信 和 釘釘 服務打通的效果。

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久国产精品久久久| 日韩视频在线观看| 91精品一区二区三区在线观看| 免费精品久久久久久中文字幕| 国产精品日本亚洲777| 国产成人精品日本亚洲| 亚洲一区二区三区国产精品| 国产日韩AV免费无码一区二区| 亚洲性色精品一区二区在线| 2021精品国产品免费观看| 久久久久亚洲精品无码系列| 一本久久a久久精品亚洲| 国产精品无码不卡一区二区三区 | 牛牛在线精品观看免费正| 国产69久久精品成人看| 杨幂精品国产专区91在线| 国产精品香蕉一区二区三区| 精品黑人一区二区三区| 91亚洲精品视频| 99re6这里只有精品| 日韩精品无码中文字幕一区二区| 亚洲AV永久无码精品| 国产精品第12页| 国产午夜亚洲精品午夜鲁丝片| 老司机精品视频在线观看| 国产成人AV无码精品| 精品成人一区二区三区四区| 国产精品亚洲二区在线观看| 亚洲精品成人在线| 国产成人精品一区在线| 国产AⅤ精品一区二区三区久久| 久久精品无码一区二区日韩AV | 91天堂素人精品系列网站| 无码日韩人妻精品久久蜜桃 | 中文字幕日韩理论在线| 国产精品毛片大码女人| 精品日韩亚洲AV无码一区二区三区| 久久精品国产亚洲AV麻豆不卡| 国语自产偷拍精品视频偷拍| 久久久久久久久久久免费精品| 日韩有码在线视频|