Hello world Archives - 峰哥分享 https://www.dengnz.com/tag/hello-world/ 昨天,今天,明天,每天的每天,都多懂一点点... Fri, 08 Mar 2019 22:48:41 +0000 zh-CN hourly 1 https://wordpress.org/?v=6.5.4 https://www.dengnz.com/wp-content/uploads/2020/02/cropped-logo-32x32.png Hello world Archives - 峰哥分享 https://www.dengnz.com/tag/hello-world/ 32 32 Telegram AI 智能聊天机器人 | 上知天文, 下知地理 | 数学,天气,笑话,游戏,翻译通通都会 | 抄个100多行代码就能用 | 小白也能搞定 https://www.dengnz.com/2018/11/10/telegram-ai-%e6%99%ba%e8%83%bd%e8%81%8a%e5%a4%a9%e6%9c%ba%e5%99%a8%e4%ba%ba-%e4%b8%8a%e7%9f%a5%e5%a4%a9%e6%96%87%ef%bc%8c-%e4%b8%8b%e7%9f%a5%e5%9c%b0%e7%90%86-%e6%95%b0%e5%ad%a6%ef%bc%8c%e5%a4%a9/ https://www.dengnz.com/2018/11/10/telegram-ai-%e6%99%ba%e8%83%bd%e8%81%8a%e5%a4%a9%e6%9c%ba%e5%99%a8%e4%ba%ba-%e4%b8%8a%e7%9f%a5%e5%a4%a9%e6%96%87%ef%bc%8c-%e4%b8%8b%e7%9f%a5%e5%9c%b0%e7%90%86-%e6%95%b0%e5%ad%a6%ef%bc%8c%e5%a4%a9/?noamp=mobile#comments Sat, 10 Nov 2018 10:59:06 +0000 http://www.dengnz.com/?p=1304 通过100多行代码将Telegram 机器人接到国产的AI 大脑, 功能强大, 懂数学, 懂成语,懂天气, 会… 阅读更多 »Telegram AI 智能聊天机器人 | 上知天文, 下知地理 | 数学,天气,笑话,游戏,翻译通通都会 | 抄个100多行代码就能用 | 小白也能搞定

The post Telegram AI 智能聊天机器人 | 上知天文, 下知地理 | 数学,天气,笑话,游戏,翻译通通都会 | 抄个100多行代码就能用 | 小白也能搞定 appeared first on 峰哥分享.

]]>
通过100多行代码将Telegram 机器人接到国产的AI 大脑, 功能强大, 懂数学, 懂成语,懂天气, 会讲笑话,还能玩游戏。

机器人的代码请翻到后面
代码已经写好,只要小小的改动就可以使用。

-~-~~-~~~-~~-~-

本频道旨在分享生活中各种小技巧, 如用小米盒子看国内视频, 如何使用KODI看电影等等. 点击进入我的频道: goo.gl/5tyxcf

🔷 订阅我的频道: goo.gl/KuF3bY
🔷 telegram电报群: t.me/fengsharegroup
🔷 我的博客: www.dengnz.com/blog
🔷 Facebook: www.facebook.com/fengnz
🔷 Twitter: https://twitter.com/fennng

觉得我的视频对你帮助很大的话, 请我喝杯咖啡吧
微信赞赏码: goo.gl/uKoE8w
-~-~~-~~~-~~-~-

代码.gs

function doPost(e) {
  var body = JSON.parse(e.postData.contents);
  if (!checkIsMyMessage(body)){
    return;
  }

  if (body.message && body.message.chat){
    body.message.chat.id = body.message.chat.id + '';
  }

  var payload = tulinBotPayload(body);
  var payloads;

  if (Array.isArray(payload)){
    payloads = payload;
  } else {
    payloads = [payload]
  }

  for (var i = 0; i < payloads.length; i++){
    payload = payloads[i];
    if (payload){
      var res = PostTelegram(payload);
    }
  }

}
function tulinBotPayload(body) {
  var payload;
  var chatId = body.message.chat.id;
  payload = {
    "method": "sendMessage",
    "chat_id": chatId,
    "text": "",
    "disable_web_page_preview": true,
    "reply_to_message_id": body.message.message_id,
  };

  var tulinReq = {
    "reqType": 0,
      "perception": {
          "inputText": {
              // tulinjiqirenbot 改成你自己机器人的名字
              "text": body.message.text.replace("@tulinjiqirenBot", "")
          }
         
      },
      "userInfo": {
        // 改成你自己的图灵机器人的apikey 和 userId
          "apiKey": "4e8395e7721046e38e9c610de725edd7",
          "userId": "339657"
      }
  };


  var data = {
    'contentType': 'application/json',
    "method": "post",
    "payload": JSON.stringify(tulinReq)
  };

  var response = UrlFetchApp.fetch("http://openapi.tuling123.com/openapi/api/v2", data);
  var res = JSON.parse(response);

  if (res.results && res.results[0].values && res.results[0].values.text) {
    payload.text = res.results[0].values.text;
  }
  return payload;
}
function isPrivate(body) {
  var share =  getShareObject(body);
  var chat = share.chat;
  if (chat.type === "private") {
    return true;
  }
  return false;
}
function PostTelegram(payload) {
  var data = {
    'contentType': 'application/json',
    "method": "post",
    "payload": JSON.stringify(payload)
  };

  // 改成你自己机器人的 API token
  var response = UrlFetchApp.fetch("https://api.telegram.org/bot750371992:AAGTJC08Gg3g9I-gVm6BkAb30wsMVyQMbUI/", data);
  var res = JSON.parse(response);
  return res;
}
function checkIsMyMessage(body){
  var text = body.message.text;

  if (isPrivate(body)){
    return true;
  }

  if (body.message.reply_to_message) {
//这里的ID要改成你自己机器人的ID, 之前视频里忘讲了
    if (body.message.reply_to_message.from.id == 750371992) {
      return true;
    }
  }

// 如果找不到机器人的ID, 可以用以下这段代码代替, 换成你自己机器人的名字
 // if (body.message.reply_to_message) {
  //  if (body.message.reply_to_message.from.username == "tulinjiqirenBot") {
  //    return true;
  //  }
 // }

  if (text) {
    var paras = text.split(" ");
    if (paras[0] && paras[0].indexOf("@") >= 0){
      // tulinjiqirenbot 改成你自己机器人的名字, 全部小写
      if  (paras[0].toLowerCase().indexOf("tulinjiqirenbot") >= 0){
        return true;
      }
      return false;
    }
  }
  return false;
}

function getShareObject(body) {
  var payload;
  var from;
  var chat;
  var messageId;
  var callback_query_id;

  // use editMessage method instead if it's a callback 
  if (body.callback_query) {
    chat = body.callback_query.message.chat;
    chat.id = chat.id + "";
    messageId = body.callback_query.message.message_id;
    from = body.callback_query.from;
    callback_query_id = body.callback_query.id;
    payload = {
      "method": "editMessageText",
      "chat_id": chat.id,
      "message_id": messageId,
      "text": "",
      "parse_mode": "markdown",
      "disable_web_page_preview": false,
    };
  } else {
    from = body.message.from;
    chat = body.message.chat;
    chat.id = chat.id + "";
    messageId = body.message.message_id;
    payload = {
      "method": "sendMessage",
      "chat_id": chat.id,
      "text": "",
      "parse_mode": "markdown",
      "disable_web_page_preview": true,
      "reply_to_message_id": messageId,
    };

  }

  var share = {};
  share.payload = payload;
  share.from = from;
  share.chat = chat;
  share.messageId = messageId;
  share.callback_query_id = callback_query_id;

  return share;
}

The post Telegram AI 智能聊天机器人 | 上知天文, 下知地理 | 数学,天气,笑话,游戏,翻译通通都会 | 抄个100多行代码就能用 | 小白也能搞定 appeared first on 峰哥分享.

]]>
https://www.dengnz.com/2018/11/10/telegram-ai-%e6%99%ba%e8%83%bd%e8%81%8a%e5%a4%a9%e6%9c%ba%e5%99%a8%e4%ba%ba-%e4%b8%8a%e7%9f%a5%e5%a4%a9%e6%96%87%ef%bc%8c-%e4%b8%8b%e7%9f%a5%e5%9c%b0%e7%90%86-%e6%95%b0%e5%ad%a6%ef%bc%8c%e5%a4%a9/feed/ 3
Telegram Bot 处理特定的命令[第三集] https://www.dengnz.com/2018/09/09/telegram-bot-%e5%a4%84%e7%90%86%e7%89%b9%e5%ae%9a%e7%9a%84%e5%91%bd%e4%bb%a4%e7%ac%ac%e4%b8%89%e9%9b%86/ https://www.dengnz.com/2018/09/09/telegram-bot-%e5%a4%84%e7%90%86%e7%89%b9%e5%ae%9a%e7%9a%84%e5%91%bd%e4%bb%a4%e7%ac%ac%e4%b8%89%e9%9b%86/?noamp=mobile#comments Sun, 09 Sep 2018 00:57:38 +0000 https://www.dengnz.com/?p=1163 本视频是Telegram Bot 机器人编程系列的第三集。 本集介绍如何根据不同的命令回复不回的内容, 还会介… 阅读更多 »Telegram Bot 处理特定的命令[第三集]

The post Telegram Bot 处理特定的命令[第三集] appeared first on 峰哥分享.

]]>

本视频是Telegram Bot 机器人编程系列的第三集。 本集介绍如何根据不同的命令回复不回的内容, 还会介绍怎么把机器人加的群中, 如何在群中使用机器人。

相关的代码请翻到下面

下期预告:
Telegram Bot 处理带参数的命令[第四集]

-~-~~-~~~-~~-~-

本频道旨在分享生活中各种小技巧, 如用小米盒子看国内视频, 如何使用KODI看电影等等. 点击进入我的频道: goo.gl/5tyxcf

🔷 订阅我的频道: goo.gl/KuF3bY
🔷 telegram电报群: t.me/fengsharegroup
🔷 我的博客: www.dengnz.com/blog
🔷 Facebook: www.facebook.com/fengnz
🔷 Twitter: https://twitter.com/fennng

觉得我的视频对你帮助很大的话, 请我喝杯咖啡吧
微信赞赏码: goo.gl/uKoE8w
-~-~~-~~~-~~-~-

本视频中使用的代码:


function doPost(e){
  var dataFromTelegram = {
    "method": "post",
    "payload": e.postData.contents
  }
  var body = JSON.parse(e.postData.contents);
  
  body.message.chat.id = body.message.chat.id + '';

  var payload = preparePayload(body);
  var data = {
    "method": "post",
    "payload": payload
  }
  
  var dataToTelegram = {
    "method": "post",
    "payload": payload
  }

  UrlFetchApp.fetch("https://api.telegram.org/bot682267360:AAHmjSil8oylavD2pENLLpcMU1svaD7mVeA/", data);
}
function preparePayload(body){
  var payload;
  
  if (body.message.text){
  
      payload = {
        "method": "sendMessage",
        "chat_id": body.message.chat.id,
        "text": "你好, 欢迎使用本机器人, 本机器人现在只认识颜色。",
      } 
      
      if(body.message.text.indexOf("/help") === 0){      
         payload.text = "你好, 欢迎使用本机器人, 本机器人现在只认识颜色。";
         return payload;
      }
      
      if(body.message.text.indexOf("/colors") === 0){   
         payload.text = "红\n黄\n蓝";        
         return payload;
      }
  
      payload = {
          "method": "sendMessage",
          "chat_id": body.message.chat.id,
          "text": body.message.text,
      } 
	
  }
  else if (body.message.sticker){
    payload = {
      "method": "sendSticker",
      "chat_id": body.message.chat.id,
      "sticker": body.message.sticker.file_id
    }
   }
  else if (body.message.photo){
    array = body.message.photo;
    text = array[1];
    payload = {
      "method": "sendPhoto",
      "chat_id": body.message.chat.id,
      "photo": text.file_id
    }
   }
    else {
    payload = {
      "method": "sendMessage",
      "chat_id": body.message.chat.id,
      "text": "Try other stuff"
    }
   }
  return payload
}

The post Telegram Bot 处理特定的命令[第三集] appeared first on 峰哥分享.

]]>
https://www.dengnz.com/2018/09/09/telegram-bot-%e5%a4%84%e7%90%86%e7%89%b9%e5%ae%9a%e7%9a%84%e5%91%bd%e4%bb%a4%e7%ac%ac%e4%b8%89%e9%9b%86/feed/ 4
Telegram Bot 第一个回声机器人 – 你是汤姆猫吧[第二集] https://www.dengnz.com/2018/09/05/telegram-bot-%e7%ac%ac%e4%b8%80%e4%b8%aa%e5%9b%9e%e5%a3%b0%e6%9c%ba%e5%99%a8%e4%ba%ba-%e4%bd%a0%e6%98%af%e6%b1%a4%e5%a7%86%e7%8c%ab%e5%90%a7%e7%ac%ac%e4%ba%8c%e9%9b%86/ https://www.dengnz.com/2018/09/05/telegram-bot-%e7%ac%ac%e4%b8%80%e4%b8%aa%e5%9b%9e%e5%a3%b0%e6%9c%ba%e5%99%a8%e4%ba%ba-%e4%bd%a0%e6%98%af%e6%b1%a4%e5%a7%86%e7%8c%ab%e5%90%a7%e7%ac%ac%e4%ba%8c%e9%9b%86/?noamp=mobile#comments Wed, 05 Sep 2018 22:53:52 +0000 https://www.dengnz.com/?p=1148 本视频是Telegram Bot 机器人编程系列的第二集。 本集介绍如何用简单不到60行的代码实现一个汤姆猫机… 阅读更多 »Telegram Bot 第一个回声机器人 – 你是汤姆猫吧[第二集]

The post Telegram Bot 第一个回声机器人 – 你是汤姆猫吧[第二集] appeared first on 峰哥分享.

]]>

本视频是Telegram Bot 机器人编程系列的第二集。 本集介绍如何用简单不到60行的代码实现一个汤姆猫机器人, 就是你说什么, 它就说什么。 支持文字, 表情还有图片。

相关的代码请翻到下面

下期预告:

Telegram Bot 处理特定的命令[第三集]

-~-~~-~~~-~~-~-

本频道旨在分享生活中各种小技巧, 如用小米盒子看国内视频, 如何使用KODI看电影等等. 点击进入我的频道: goo.gl/5tyxcf

🔷 订阅我的频道: goo.gl/KuF3bY
🔷 telegram电报群: t.me/fengsharegroup
🔷 我的博客: www.dengnz.com/blog
🔷 Facebook: www.facebook.com/fengnz
🔷 Twitter: https://twitter.com/fennng

觉得我的视频对你帮助很大的话, 请我喝杯咖啡吧
微信赞赏码: goo.gl/uKoE8w
-~-~~-~~~-~~-~-

本视频中使用的代码:

Set Webhook 的链接:

https://api.telegram.org/bot这里放机器人的token/setWebhook?url=这里放urlEncode过的谷歌的发布链接


// 真是对不起呀, 发布代码的时候我把doGet 给删除了,导致和视频里不一样, 现在加回去。。。
function doGet(e){
  return HtmlService.createHtmlOutput("Hello World!! No, this link should be hidden!!!");
}


function doPost(e){
  var dataFromTelegram = {
    "method": "post",
    "payload": e.postData.contents
  }
  var body = JSON.parse(e.postData.contents);
  
  body.message.chat.id = body.message.chat.id + '';

  var payload = preparePayload(body);
  var data = {
    "method": "post",
    "payload": payload
  }
  
  var dataToTelegram = {
    "method": "post",
    "payload": payload
  }

  UrlFetchApp.fetch("https://api.telegram.org/bot682267360:AAHmjSil8oylavD2pENLLpcMU1svaD7mVeA/", data);
}
function preparePayload(body){
  var payload;
  
  if (body.message.text){
      payload = {
          "method": "sendMessage",
          "chat_id": body.message.chat.id,
          "text": body.message.text,
      } 
	
  }
  else if (body.message.sticker){
    payload = {
      "method": "sendSticker",
      "chat_id": body.message.chat.id,
      "sticker": body.message.sticker.file_id
    }
   }
  else if (body.message.photo){
    array = body.message.photo;
    text = array[1];
    payload = {
      "method": "sendPhoto",
      "chat_id": body.message.chat.id,
      "photo": text.file_id
    }
   }
    else {
    payload = {
      "method": "sendMessage",
      "chat_id": body.message.chat.id,
      "text": "Try other stuff"
    }
   }
  return payload
}

The post Telegram Bot 第一个回声机器人 – 你是汤姆猫吧[第二集] appeared first on 峰哥分享.

]]>
https://www.dengnz.com/2018/09/05/telegram-bot-%e7%ac%ac%e4%b8%80%e4%b8%aa%e5%9b%9e%e5%a3%b0%e6%9c%ba%e5%99%a8%e4%ba%ba-%e4%bd%a0%e6%98%af%e6%b1%a4%e5%a7%86%e7%8c%ab%e5%90%a7%e7%ac%ac%e4%ba%8c%e9%9b%86/feed/ 25