4th Street Bar Hive-Bar

Hive-Bar Powered by Hive beta-fdb5b5b

Community post

Telegram Bot - Save Group Messages

This is the code to save group messages in a MySQL database using Telegram Bot API.

//Using Telegram Bot API for easy usage of telegram messages.
const TelegramBot = require('node-telegram-bot-api');

//Using Mysql to save mesages to mysql database
var mysql = require('mysql');


//initiate a mysql connection.
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : '',
  database : 'telegram'
});

//connect to mysql
connection.connect();


//CHange the Bot Token as per your Bot's Token
const token = '';

const bot = new TelegramBot(token, {polling: true});


//On Message event in group

bot.on("message", (msg) => {
	
	//chat id of user and message id of the message
	var chat_id = msg.chat.id;
	var msg_id = msg.message_id;
	
	
	//FROM PART
	var user_id = msg.from.id;
	var bot_check = msg.from.is_bot;
	var first = msg.from.first_name;
	var username = msg.from.username;
	
	//GROUP DETAILS
	var group_name = msg.chat.title;
	var group_username = msg.chat.username;
	
	//message send by the user
	var message = msg.text
	
	var date = msg.date;
	
	
	console.log(msg);
	
			if(bot_check == false){

				
				//MYSQL Coding
				
							var user_name = "null";
							var group_user_name = "null";
							var name_group = "null";

							if(!isEmpty(username)){
							   user_name = username;
							}

							if(!isEmpty(group_username)){
							   group_user_name = group_username;
							}

							if(!isEmpty(group_name)){
							   name_group = group_name;
							}



							var post  = {user_id: user_id , first: first , username: user_name,  group_name: name_group , group_username: group_user_name , num_msg: "0" , date: date};
				
							///Change Data structure as per your convenience

							var query = connection.query('INSERT INTO users SET ?', post, function (error, results, fields) {
							  if (error) throw error;
							  
							});

						

				});


			}
		
		
	});


bot.on('polling_error', (error) => {
  console.log(error);  // => 'EPARSE'
});

function isEmpty(value) {
    return typeof value == 'string' && !value.replace(/\s/g,'') || typeof value == 'undefined' || value === null;
  }


Join our Telegram Group to get more information .
https://t.me/Crypto_Cal_App

1 upvotes $0.00

Replies (2)

Review before signing

Posting as . Signing with . Keychain permission: Posting. Hive Keychain will ask you to approve this action next.


  
Technical details

Operation fingerprint: