Telegram Bot 发送漂亮的消息,粗体,斜体, 表格,按钮[第五集]
时间:2024-2-12 13:14 作者:7米网-域名管理专家 分类: 杂文分享
本视频是Telegram Bot 机器人编程系列的第五集。 本集介绍如何使用Telegram机器人发送漂亮的消息,包据粗体,斜体,链接,按钮,代码,表格等。
本视频中使用的代码:
function doGet(e){
return HtmlService.createHtmlOutput("Hello World!! No, this link should be hidden!!!");
// return HtmlService.createHtmlOutputFromFile('Index');
}
function doPost(e){
var body = JSON.parse(e.postData.contents);
body.message.chat.id = body.message.chat.id + '';
var payload = preparePayload(body);
var data = {
"method": "post",
"contentType": 'application/json',
"payload": JSON.stringify(payload),
}
UrlFetchApp.fetch("https://api.telegram.org/bot这里放机器人的token/", data);
}
function preparePayload(body){
var payload;
body.message.text = body.message.text.toLowerCase();
body.message.text = body.message.text.replace(/@temptestbot2/g, '');
var paras = body.message.text.trim().split(" ");
// remove empty strings
paras = paras.filter(function(para){
if (para){
return true;
}
});
if (body.message.text){
payload = {
"method": "sendMessage",
"chat_id": body.message.chat.id,
"text": "你好, 欢迎使用本机器人, 本机器人现在只认识颜色。",
"parse_mode": "Markdown",
"disable_web_page_preview": true,
}
if(body.message.text.indexOf("/help") === 0){
payload.text = "你好, 欢迎使用本机器人, 本机器人现在只认识颜色。";
return payload;
}
if(body.message.text.indexOf("/colors") === 0){
payload.text = "红\n黄\n蓝";
return payload;
}
if(body.message.text.indexOf("/list") === 0){
if (paras[1]){
switch (paras[1].toLowerCase()){
case "people":
if (paras[2]){
if ("JS神技能".toLowerCase().indexOf(paras[2]) >= 0){
payload.text = "JS神技能 - https://www.youtube.com";
}
if ("悟空的日常".toLowerCase().indexOf(paras[2]) >= 0){
payload.text = "悟空的日常 - https://www.youtube.com";
}
if ("YuFeng Deng".toLowerCase().indexOf(paras[2]) >= 0){
payload.text = "YuFeng Deng - https://www.youtube.com";
}
} else {
payload.text = "JS神技能\n"
+ "悟空的日常\n"
+ "YuFeng Deng\n";
return payload;
}
break;
default:
payload.text = "红\n黄\n蓝";
break;
}
return payload;
} else {
payload.text = "*JS神技能*\n"
+ "[悟空的日常](https://www.youtube.com/)\n"
+ "[*YuFeng Deng*](https://www.youtube.com/)\n"
+ "_YuFeng Deng_\n"
+ "`01|" + "UCii04BCvYIdQvshrdNDAcww" + " | `\n"
+ "`02|" + "UCG6xoef2xU86hnrCsS5m5Cw" + " | `\n"
+ "```javascript\n"
+ 'payload = {\n'
+ ' "method": "sendMessage",\n'
+ ' "chat_id": body.message.chat.id,\n'
+ ' "text": body.message.text,\n'
+ '}'
+ "```"
;
var inlineKeyboardMarkup = {};
inlineKeyboardMarkup.inline_keyboard = [];
var keyboardRow = [];
var keyboardButton1 = {
text: "按钮1",
url: "https://www.google.com"
};
var keyboardButton2 = {
text: "按钮2",
url: "https://www.google.com"
};
var keyboardRow2 = [];
var keyboardButton3 = {
text: "按钮3",
url: "https://www.google.com"
};
var keyboardButton4 = {
text: "按钮4",
url: "https://www.google.com"
};
keyboardRow.push(keyboardButton1);
keyboardRow.push(keyboardButton2);
keyboardRow2.push(keyboardButton3);
keyboardRow2.push(keyboardButton4);
inlineKeyboardMarkup.inline_keyboard.push(keyboardRow);
inlineKeyboardMarkup.inline_keyboard.push(keyboardRow2);
payload.reply_markup = inlineKeyboardMarkup;
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
}