Linuxword Global
当前位置: Linux技术 > 使用Google Script Apps编写Telegram Bot 机器人简单对话

这篇文章主要写使用google脚本的来做一个简单tgBot对话的,你说什么它会重复你说的。Telegram 官方API:https://core.telegram.org/bots/api,在编写之前需要去google搜索 google Script console --- 点击 google Apps Script ---start Scripting 。 20190117224735913

start Scripnting 之后会进入此界面,

20190117225034945

然后点击新增指令,进入脚本界面,如下图所示:

20190117225610149

就是在这里开发了,下面google app script 我简称为 gas 吧,在gas里编写脚本可以自由的ctrl+s保存代码,

然后可以点击发布代码,如下图所示 :

20190117230001942

点击 部署为网络应用程序 :

20190117230908601

在途中的新增版本中你可以随便填写版本名称,应用程序使用者是分布在网络各处的网民,你可以设置仅自己可见,登陆google账户活着匿名用户访问,这个完全看个人情况,自己写随便了,如果在公司有测试可以匿名这样很方便调试和测试,点击确定以后会让你登陆google账户授权给telegramBot :

20190117230927502

点击允许之后部署即可,这个时候会生成一个连接,类似于这样的:这个连接是你写的google网络应用成连接,用来支配

var googleScriptUrl = “https://script.google.com/macros/s/AKfycbxt_Cvu7IuhfgOPUv073qIArI586nv4SmUbX0zT4a6Lw2MD5ZOs2l3Hvna/exec”;

telegramBot的,然后来看tgbot机器人的访问连接,注意一下bot后面是你的tgbot的token粘贴到这里即可。

var tgBotUrl = “https://api.telegram.org/bot617498207:AAE0MPbQhOaagEKgtkq4EameOqUKgQRBw_4/setWebhook?url=”;

在这里我们要把 googleScriptUrl 放在 https://api.telegram.org/bot617498207:AAE0MPbQhOaagEKgtkq4EameOqUKgQRBw_4/setWebhook?url= 这个连接url = 等于号的后面,就像这样 

https://api.telegram.org/bot617498207:AAE0MPbQhOaagEKgtkq4EameOqUKgQRBw_4/setWebhook?url=https://script.google.com/macros/s/AKfycbxt_Cvu7IuhfgOPUv073qIArI586nv4SmUbX0zT4a6Lw2MD5ZOs2l3Hvna/exec

最后的访问连接是这样的,这里建议最好把googleScriptUrl连接Encoder一下,然后再粘贴进tg的连接里面,不会暴露你的信息和IP

然后返回tg里面随便输入字符,这样你输入什么tgbot机器人就会反馈给你什么。

最后是实现的代码:

 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 dataParam = {
                "method": "post",
                "payload": payload
            }
            UrlFetchApp.fetch("https://api.telegram.org/bot61567498207:AAE0MPbQhOaagEKgtk3itoskdoKoPuYnHq4EameOqUKgQRBw_9/", 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
        }

 

「梦想一旦被付诸行动,就会变得神圣,如果觉得我的文章对您有用,请帮助本站成长」

赞(0) 打赏
一分也是爱

支付宝扫一扫打赏

微信扫一扫打赏

上一篇:

下一篇:

相关推荐

博客简介

本站CDN采用VmShell免费提供离中国大陆最近的香港CMI高速网络做支撑,ToToTel打造全球最快速的边沿网络支撑服务,具体详情请见 :https://vmshell.com/ 以及 https://tototel.com/,网站所有的文件和内容禁止大陆网站搬迁复制,谢谢,VPS营销投稿邮箱: admin@linuxxword.com,我们免费帮大家发布,不收取任何费用,请提供完整测试文稿!

精彩评论

友情链接

他们同样是一群网虫,却不是每天泡在网上游走在淘宝和网游之间、刷着本来就快要透支的信用卡。他们或许没有踏出国门一步,但同学却不局限在一国一校,而是遍及全球!申请交换友链

站点统计

  • 文章总数: 2591 篇
  • 草稿数目: 22 篇
  • 分类数目: 6 个
  • 独立页面: 0 个
  • 评论总数: 2 条
  • 链接总数: 0 个
  • 标签总数: 13021 个
  • 注册用户: 139 人
  • 访问总量: 8,649,184 次
  • 最近更新: 2024年11月21日