Holy Qur'an Telegram Bot with pagination and audio, in Indonesian language.

Overview

quran-telegram-bot

Contributions are Welcome!

Demo

@fio_quran_bot

Run

Tested on Node.js v14.x.x with NPM v6.x.x, Windows 10 and Ubuntu 18.04.6 LTS.

  1. Create bot using @BotFather, save the bot token.
  2. Get your Telegram user ID. You can get your user ID using the available bots (search for "user id bot" in Telegram).
  3. Clone this project
$ git clone https://github.com/riozec/quran-telegram-bot
$ cd quran-telegram-bot
  1. Create a .env file, write down your bot token and API key here.
# create .env file in the quran-telegram-bot folder
$ touch .env

# open and edit the .env file
$ nano .env

Write to .env file:

BOT_TOKEN="YOUR BOT TOKEN"
OWNER_USER_ID="YOUR USER ID"
  1. Build and run the bot.
$ npm install
$ npm run build
$ npm start
  1. Now the bot is running, but can't send surah audios. Because Telegram bot can't send more than 50 MB, you need a file_id of already uploaded file. In order to solve this, you need to manually forward all surah audios to the bot. Here's the steps:

    1. Send /getsurahaudiofileid command to the bot. The bot will respond with an "OK".
    2. Open this channel and forward all audios to the bot (114 audios).
    3. The bot will respond with a "Done" if it has done saving the 114 audios.
  2. (Optional) You can save the file_id of the short tutorial video in the channel to show it in the /start command.

    1. Forward the video to the bot.
    2. Quote the video, and send this command:
    /eval ctx.message.reply_to_message.animation.file_id
    
    1. Copy the file_id, and paste it to the .env file by adding this line:
    START_VIDEO_TUTORIAL_FILE_ID="FILE_ID HERE"
    

Thanks to

  • Allah SWT
  • Telegraf
  • Ecoslow
  • LoLHuman
  • Everyayah.com
  • Equran.id
  • semarketir/quranjson
  • rioastamal/quran-json
  • And other sources of data, written in the files.

Donation

  • 0877-2271-3834 (DANA)
  • 0851-5823-1152 (OVO, ShopeePay)
You might also like...

A jQuery plugin for making html tables searchable and sortable with pagination

jQuery.fancyTable A jQuery plugin for making html tables searchable and sortable with pagination. Live demo See a live demo on CodePen Installation Us

Dec 19, 2022

URL Shortener API in NodeJS supporting pagination, sort params and lot more

URL Shortener API in NodeJS supporting pagination, sort params and lot more

node-url-shortener Built with ❤️ in NodeJS A simple URL Shortner REST API that uses shortid npm package to generate short endpoints for your long URL.

Sep 22, 2022

Simple and easy-to-use pagination library for Mongoose (Node.js)

Simple and easy-to-use pagination library for Mongoose (Node.js)

node-paginator Simple and easy-to-use pagination library for Mongoose (Node.js) 📚 Why node-paginator? Every web developer should work on pagination a

Sep 21, 2022

A simple javascript library for pagination, compatible with Bootstrap.

A simple javascript library for pagination, compatible with Bootstrap.

Easy Pagination JS A simple library for pagination, compatible with Bootstrap. Check my website here. Demo Check this Demo here. Example Import the fi

Aug 5, 2022

A handler to create embedded pages with buttons for pagination.

➝ Whats that • A handler to create embedded pages with buttons for pagination. ➝ Requirements • ["Handler"] pages.js • [Example command] embed.js ➝ Us

Oct 30, 2022

i18n-language.js is Simple i18n language with Vanilla Javascript

i18n-language.js i18n-language.js is Simple i18n language with Vanilla Javascript Write by Hyun SHIN Demo Page: http://i18n-language.s3-website.ap-nor

Jul 12, 2022

When a person that doesn't know how to create a programming language tries to create a programming language

When a person that doesn't know how to create a programming language tries to create a programming language

Kochanowski Online Spróbuj Kochanowskiego bez konfiguracji projektu! https://mmusielik.xyz/projects/kochanowski Instalacja Stwórz nowy projekt przez n

Dec 4, 2022

Write "hello world" in your native language, code "hello world" in your favorite programming language!

Hello World, All languages! 🌎 📌 Write "hello world" in your native language, code "hello world" in your favorite language! #hacktoberfest2022 How to

Dec 13, 2022

@TGMusicfy - Minimalistic Telegram music search bot written in TypeScript and based on Telegraf and Express JS.

@TGMusicfy Go to bot Deployed thanks to Heroku and New-Relic Bots are special Telegram accounts designed to handle messages automatically. Users can i

Sep 13, 2022
Owner
Rioze
Rioze
Pagination Manager is an useful framework for improving the use of object pagination in APIs like Discord.

Pagination Manager Pagination Manager is an useful framework for improving the use of object pagination in APIs like Discord. Lightweight module, ES6

tnfAngel 4 Jul 26, 2022
Jaksel Script, Programming language very modern and Indonesian style

Jaksel Script Jaksel Script is a new programming language, very modern, easy to learn, using Indonesia-slang language. No programming experience requi

Rio Chandra 823 Jan 3, 2023
A simple command line interface for listening to Quran.

Quran-CLI A simple command line interface for listening to Quran. Used API We are using the mp3quran api. Dependencies Install mpv as it is required f

Mostafa Wael 79 Nov 18, 2022
Get a verse(an aya) from the Quran during your coding session 💻 , stay connected with the words of Allah. 🕋

Ayat ?? Get a verse(an aya) from the Quran during your coding session ?? stay connected with the words of Allah. ?? ?? Release Notes 1.0.0 Get random

Hussam Adil 27 Jan 2, 2023
A simple vs code extension to listen to Quran recitation.

Quran Radio (vscode-extension) A simple vs code extension to listen to Quran recitation. Dependencies Install vlc as it is required for playing the au

Mostafa Wael 24 Dec 12, 2022
List of jokes in English and Indonesian 👌

Jokes API Jokes API is a simple REST API for showing a list of jokes in English and Indonesia????. When to use ✨ Jokes API is a free online REST API t

Rades Pratama 8 Nov 13, 2022
Collection of job openings from Indonesian remote-friendly companies

id-wfa ???? This project scrapes job openings from Indonesian companies that have publicly announced that they provide WFA (work-from-anywhere) perks

Jacky Efendi 74 Dec 25, 2022
This plugin can generate timestamps for video, audio and Bilibili video, it takes you to the corresponding video/audio position when clicked.

logseq-plugin-media-ts 本插件能够生成视频、音频以及 B 站视频的时间戳,点击时间戳后会跳转到对应的音视频位置。 This plugin can generate timestamps for video, audio and Bilibili video, it takes

Seth Yuan 58 Jan 3, 2023
Essential Audio Player JS is a simple, clean and minimal JavaScript / HTML5 / CSS web audio player.

Essential Audio Player JS is a simple, clean and minimal JavaScript / HTML5 / CSS web audio player. No unnecessary controls, just a button and a track

null 32 Dec 14, 2022
🧬 A type builder for pagination with prisma and type-graphql.

?? Prisma TypeGraphql Pagination Prisma TypeGraphql Pagination builds prisma pagination types for type-graphql. import { ... } from 'type-graphql'

Arthur Fiorette 2 Apr 21, 2022