How to Create a Telegram Bot Using PHP (Bonus: Get Cheap Hosting on Hostinger for Unlimited Bandwidth)
Creating a Telegram bot using PHP is a great way to automate interactions and build useful tools for your community. In this article, we'll guide you through the process of setting up your Telegram bot, writing the PHP script, and hosting it on Hostinger for unlimited bandwidth without costly VPS hosting.
Step 1: Setting Up Your Telegram Bot
-
Create a Telegram Bot:
- Open the Telegram app and search for the "BotFather" bot.
- Start a chat with BotFather and send the command
/start
. - Use the command
/newbot
to create a new bot. - Follow the prompts to set the bot's name and username.
- After completing the setup, you'll receive a bot token. Keep this token safe as you'll need it to authenticate your bot.
Step 2: Setting the Webhook
To receive messages, you need to set a webhook for your bot. This URL will point to your server where your PHP script will handle updates.
-
Open your browser and navigate to the following URL (replace
<YOUR_BOT_TOKEN>
with your actual bot token and<YOUR_WEBHOOK_URL>
with your actual webhook URL):https://api.telegram.org/bot<YOUR_BOT_TOKEN>/setWebhook?url=<YOUR_WEBHOOK_URL>
For example:
```
https://api.telegram.org/bot7337693933:AAGKjpcWREFw5u4U_efy0UkRbq692QxC87k/setWebhook?url=https://example.com/bot.php
Step 3: Writing the PHP Script
Create a file named bot.php
on your server with the following content:
<?php
// Replace with your bot token
$token = "7337693933:AAGKjpcWREFw5u4U_efy0UkRbq692QxC87k";
// Get the incoming update
$update = json_decode(file_get_contents("php://input"), true);
if (!$update) {
// Handle invalid JSON data
error_log("Invalid JSON data received");
exit;
}
// Extract the message text and chat ID
$message = $update['message']['text'];
$chat_id = $update['message']['chat']['id'];
// Prepare the response
if (strtolower($message) === "hi") {
$response = "hi";
} else {
$response = "I only respond to 'hi'!";
}
// Send the response back to the user
$sendMessageUrl = "https://api.telegram.org/bot$token/sendMessage";
$params = [
'chat_id' => $chat_id,
'text' => $response,
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $sendMessageUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
if ($result === FALSE) {
error_log("Curl failed: " . curl_error($ch));
}
curl_close($ch);
echo "OK";
?>
Step 4: Hosting Your Bot on Hostinger
To host your Telegram bot, you need reliable and affordable hosting. Hostinger offers excellent plans with unlimited bandwidth, ideal for running your bot without incurring high costs.
-
Sign Up for Hostinger:
- Visit Hostinger and sign up for an account.
- Choose a hosting plan that suits your needs. The shared hosting plans are a great starting point as they offer unlimited bandwidth at a low cost.
-
Set Up Your Hosting Environment:
- Once you have your hosting account, log in to the Hostinger control panel.
- Use the File Manager or FTP to upload your
bot.php
file to your server.
-
Set Your Domain or Subdomain:
- Ensure that your webhook URL points to the correct location of your
bot.php
file on your domain or subdomain.
- Ensure that your webhook URL points to the correct location of your
Step 5: Testing Your Bot
Now, you can test your bot by sending "hi" to it on Telegram. The bot should respond with "hi". If you send any other message, it should respond with "I only respond to 'hi'!".
Why Choose PHP for Your Telegram Bot?
When it comes to hosting web applications, using JavaScript (Node.js) or Python can often be more expensive. This is because these technologies typically require VPS (Virtual Private Server) hosting to handle the runtime environment and dependencies. On the other hand, PHP has been the backbone of web hosting for years, largely due to the popularity of platforms like WordPress.
PHP hosting is widely available and very affordable, especially with shared hosting plans. These plans offer an excellent balance between cost and performance, making them ideal for small to medium-sized projects. If you liked the idea and the article, try Hostinger with my referral code 1SHASWATRAJ69 for reliable and cheap hosting options.
Conclusion
Congratulations! You have successfully created a Telegram bot using PHP and hosted it on Hostinger. This setup ensures that you have unlimited bandwidth for your bot without the need for costly VPS hosting.
By following this guide, you can build more complex bots and expand their functionality to suit your needs. For affordable and reliable hosting, don't forget to check out Hostinger and take advantage of their great plans.
Happy coding!