-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
118 lines (101 loc) · 3.3 KB
/
index.js
File metadata and controls
118 lines (101 loc) · 3.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
const { Composer } = require('micro-bot')
const axios = require("axios")
// const Telegraph = require("telegraf");
// const bot = new Telegraph("");
const bot = new Composer();
let uri = "http://aruuz.com/api/default/getTaqti?text=";
let input = "";
let data;
let msg = "";
bot.start(ctx => {
ctx.reply("Bot started! Send in a she'r to find its Bahr & Wazn.");
});
bot.help(ctx => {
ctx.reply("AruuzBot has following commands: \n /start \n /about");
});
bot.command('about', ctx => {
ctx.reply("ABOUT: \n Author: Shakeeb Ahmad [ur.shakeeb.in] \n API: Syed Zeeshan Asghar [aruuz.com]");
});
bot.on("text", ctx => {
input = ctx.message.text;
let url = uri + input;
url = encodeURI(url);
let containsNewLine = /\r|\n/.exec(input);
axios.get(url).then(res => {
console.log("URL FETCHED. ", url);
data = res.data;
console.log(data);
if (!(data instanceof Array)) {
data = [data];
}
if (containsNewLine) {
msg = "ہر مصرع کے لیے نتائج:\n\n";
data.forEach((r, i) => {
if (r.feet) {
if (data.length > 1) {
msg += `${r.originalLine}\n ${r.feet}\n`;
}
else msg += r.feet;
}
else msg += r.Message;
});
}
else {
if (data.length > 1)
msg = "ممکنہ بحور:\n\n";
data.forEach((r, i) => {
if (r.feet) {
if (data.length > 1) {
msg += ` ${i + 1}. ${r.feet}\n`;
}
else msg += r.feet;
}
else msg += r.Message;
});
}
ctx.reply(msg);
}).catch((err) => {
console.log(err);
ctx.reply("تیکنیکی خرابی! دوبارہ کوشش کریں۔");
});
});
bot.on("inline_query", async (ctx) => {
input = ctx.inlineQuery.query;
let url = uri + input;
url = encodeURI(url);
if (input.length > 0) {
}
axios.get(url).then(res => {
data = res.data;
if (!(data instanceof Array)) {
data = [data];
}
let result = data.map((e, i) => {
let msg = "";
for (let i = 0; i < e.words.length; i++) {
msg += `${e.words[i]} ${e.codes[i]} | `;
}
return {
type: 'article',
id: String(i),
thumb_url: "https://freesvg.org/img/scott_kirkwood_scales.png",
title: `${e.feet}`,
description: `${e.meterName}...تفصیل دیکھیں`,
input_message_content: {
message_text: `${e.originalLine}\n${e.feet}\n${e.meterName}\n\nتقطیع: \n${msg}`
}
}
});
ctx.answerInlineQuery(result);
});
}).catch((err) => {
console.log(err);
//ctx.answerInlineQuery("تیکنیکی خرابی! دوبارہ کوشش کریں۔");
});
// bot.launch();
module.exports = bot;
/* module.exports = {
BOT_TOKEN: process.env.BOT_TOKEN,
BOT_DOMAIN: process.env.BOT_DOMAIN,
bot
}; */