> ## Content Index
> Fetch the complete content index at: https://tbbbk.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# 一个小白用 AI 搭建 Telegram 临时邮箱机器人的经历
- URL: https://tbbbk.com/setup-temp-mail-bot-by-claude/
- Published: 2025-10-25T13:00:00.000Z
- Updated: 2026-01-30T05:36:54.000Z
- Author: TuBaiBai
- Tags: 建站与自托管, 折腾日记, #Import 2026-07-20 07:13

# 一个小白用 AI 搭建 Telegram 临时邮箱机器人的经历

> 作为一个编程小白，我用 Claude AI 完成了这个项目。这篇文章记录了整个过程，希望能给其他想用 AI 做项目的朋友一些参考。

## 起因

我之前做了个临时邮箱网站 m2u.io，就是那种可以生成临时邮箱地址的服务。网站上线后，发现很多用户都在用 Telegram，每次要用临时邮箱还得打开网页挺麻烦的。

作为一个不太会写代码的人，我就想：能不能做个 Telegram Bot，让用户直接在 Telegram 里就能用临时邮箱？

然后我想到了 Claude AI。

## 我的基础

老实说，我编程基础很差：

- PHP 只会改改配置文件
- 数据库只会用 phpMyAdmin 看看表
- Telegram Bot？完全没接触过
- GitHub？能看懂别人的项目但不会自己写

但我会：

- 用 AI 聊天工具（ChatGPT、Claude）
- 看得懂基本的代码逻辑
- 知道怎么把代码上传到服务器
- 遇到问题会 Google 和问 AI

## 整个开发过程

### 第一步：跟 AI 说需求

我一开始就很直接地跟 Claude 说：

> "我有个临时邮箱网站，有 API 可以生成邮箱和获取邮件。我想做个 Telegram Bot，让用户在 Telegram 里就能用。我不太会写代码，你能帮我做吗？"

Claude 问了我一些问题：

- 你的 API 地址是什么？
- 需要什么参数？
- 想要什么功能？
- 有域名和服务器吗？

我一一回答后，它就开始写代码了。

### 第二步：创建 Bot

这一步还挺简单的，就是在 Telegram 里找 @BotFather：

1. 发 `/newbot`
2. 起名字（我叫它 M2U Temporary Email Bot）
3. 设置用户名（m2uiobot）
4. 拿到一个 Token（一长串字符）

整个过程 5 分钟搞定。这一步不需要写代码，跟着提示操作就行。

### 第三步：配置数据库

Claude 给了我一个 SQL 文件，让我在 phpMyAdmin 里导入。

我照做了，创建了两张表：

- `user_dialog` \- 存用户信息和语言设置
- `user_email` \- 存用户绑定的邮箱

一开始表结构有问题（chat\_id 用的 int），后来 Android 用户用不了，Claude 又给了修复脚本，改成了 BIGINT。

### 第四步：上传代码

Claude 给了我这些文件：

- `webhook.php` \- 主程序
- `includes/core.php` \- 核心函数
- `languages/zh.php` \- 中文语言包
- `languages/en.php` \- 英文语言包
- `languages/ru.php` \- 俄语语言包

我用 FTP 传到服务器，然后改了一下配置：

- 数据库账号密码
- Bot Token
- API 地址

### 第五步：设置 Webhook

这步我直接在浏览器里访问了一个地址：

```
https://api.telegram.org/bot你的TOKEN/setWebhook?url=https://你的域名/webhook.php
```

浏览器显示 `{"ok":true}` 就说明成功了。

### 第六步：测试

我在 Telegram 里找到我的 Bot，发了 `/start`...

然后就报错了。😅

## 踩过的坑（都是 Claude 帮我解决的）

### 坑 1：Bot 没反应

**问题：**发消息给 Bot，完全没回复

**怎么解决的：**

1. 我跟 Claude 说"Bot 没反应"
2. Claude 让我检查 Webhook 状态（给了个链接）
3. 发现 Webhook 有错误
4. Claude 让我在代码里加日志
5. 看日志发现是数据库连接错误
6. 改了数据库密码就好了

### 坑 2：Android 用户用不了

**问题：**iPhone 用户能正常用，Android 用户点按钮没反应

**怎么解决的：**

1. 我跟 Claude 说"有人反馈说 Android 用不了"
2. Claude 问我数据库表结构
3. 我截图发给它
4. Claude 说 chat\_id 字段太小，会溢出
5. 它给了个 SQL 修复脚本
6. 我在 phpMyAdmin 里运行了
7. 问题解决

### 坑 3：按钮匹配不上

**问题：**有些用户点按钮没反应

**怎么解决的：**

1. 我告诉 Claude"有用户说按钮不管用"
2. Claude 说可能是按钮文本匹配的问题
3. 它改了代码，用模糊匹配代替精确匹配
4. 我替换了代码文件
5. 所有人都能用了

### 坑 4：想加频道订阅功能

**需求：**我想让用户关注我的频道才能用 Bot

**怎么做的：**

1. 我直接跟 Claude 说"我想让用户先关注频道才能用"
2. Claude 问我频道地址
3. 它改了代码，加了频道验证逻辑
4. 还给我加了个"里程碑庆祝"功能（订阅数到整数就自动发庆祝消息）
5. 我照着教程配置了一下
6. 功能上线

### 坑 5：想支持多语言

**需求：**用户有外国人，想支持英文和俄语

**怎么做的：**

1. 告诉 Claude"能不能支持多语言"
2. Claude 问我要支持哪些语言
3. 我说中文、英文、俄语
4. 它生成了 3 个语言包文件
5. 还加了自动识别用户语言的功能
6. 我翻译了一下英文和俄语（用的 Google 翻译😂）
7. 上传，搞定

## 我学到的经验

### 1\. 跟 AI 说话要清楚

不要说"帮我做个 Bot"，要说：

- 我想做什么
- 我已经有什么
- 我遇到了什么问题
- 我试过什么方法

越详细越好，AI 才能给出准确的方案。

### 2\. 不懂就问，别装懂

我遇到不懂的就直接问 Claude：

- "这段代码是干什么的？"
- "为什么要这样写？"
- "BIGINT 和 int 有什么区别？"

Claude 都会耐心解释，我也慢慢学会了一些基础知识。

### 3\. 一步一步来

不要一次性做太多功能。我是这样的顺序：

1. 先让 Bot 能回复消息
2. 再加邮箱生成功能
3. 然后加刷新邮件功能
4. 再加频道订阅验证
5. 最后加多语言支持

每一步都测试通过再进行下一步。

### 4\. 保存好代码

每次改代码前，我都会：

- 把旧文件改名备份（比如 webhook.php.backup）
- 然后再上传新文件
- 出问题就能快速恢复

### 5\. 看日志很重要

Claude 教我在代码里加日志：

```php
error_log("这里出错了：" . $error_message);
```

然后去服务器看 error\_log 文件，就能知道哪里出问题了。

## 现在的功能

经过一个多星期的折腾，Bot 现在有这些功能：

- ✅ 自动生成临时邮箱
- ✅ 刷新收件箱
- ✅ 查看邮件内容
- ✅ 多语言支持（中英俄）
- ✅ 频道订阅验证
- ✅ 里程碑庆祝
- ✅ iOS 和 Android 都能用

## 成本

整个项目的成本很低：

- **服务器：**用的原来网站的服务器，0 元
- **域名：**用的原来的域名，0 元
- **时间成本：**断断续续花了 1 周左右

如果从零开始：

- 买个虚拟主机：5-10 美元/月
- 域名：10 美元/年
- Claude/ChatGPT：20 美元/月（可选，免费版也够用）

总共 100 美元以内就能搞定。

## 给其他小白的建议

### 1\. 别怕，AI 真的能帮你

我之前也觉得做 Bot 很难，但用了 AI 后发现，只要你会描述需求，AI 基本都能帮你实现。

### 2\. 先从简单的开始

不要一上来就想做很复杂的功能。先做个能发消息的 Bot，然后慢慢加功能。

### 3\. 学会看错误信息

遇到错误不要慌，复制错误信息给 AI 看，它会告诉你怎么解决。

### 4\. 多测试

每改一次代码都要测试，特别是：

- 不同的设备（iOS、Android）
- 不同的语言
- 不同的场景

### 5\. 加个用户群

我建了个 Telegram 群，用户遇到问题可以反馈。这样我就知道哪里需要改进了。

## 一些技术细节（给稍微懂一点的人）

虽然我是小白，但通过这个项目也学到了一些东西：

### 数据库字段类型很重要

Telegram 的 chat\_id 是个很大的数字，必须用 BIGINT：

```sql
`chat_id` BIGINT NOT NULL
```

用 int 的话会溢出，Android 用户的 ID 特别容易超。

### Webhook 比 Polling 好

Webhook 是 Telegram 主动推送消息给你的服务器，实时性好，不占资源。

Polling 是你的程序每隔几秒去 Telegram 拉取消息，会浪费服务器资源。

### 多语言支持不难

就是把所有文本都放到语言包文件里：

```php
// languages/zh.php
return [
    'Welcome' => '欢迎使用！',
    'GetEmail' => '获取邮箱'
];

```

然后根据用户语言加载对应的文件就行。

### 按钮要用模糊匹配

不要写成：

```php
if ($text === '📧 获取邮箱') {
// 只能匹配这一个文本
}
```

要写成：

```php
if (strpos($text, 'email') !== false || strpos($text, '邮箱') !== false) {
// 能匹配多种文本
}
```

这样不同语言、不同平台都能用。

## 最后想说的

作为一个编程小白，我觉得 AI 真的降低了做项目的门槛。

以前想做个东西，要么花钱请人做，要么自己花很长时间学。现在有了 AI，只要你：

- 有想法
- 会描述需求
- 愿意尝试
- 遇到问题愿意问

基本都能做出来。

这个 Bot 虽然功能不复杂，但对我来说是个很大的突破。从完全不懂 Telegram Bot，到现在能自己改代码、加功能、解决问题，这都是跟 AI 学的。

如果你也想做点什么，但觉得自己不会编程，不妨试试跟 AI 聊聊。说不定你也能做出自己的项目。

---

## 项目信息

- 🤖 **Bot：** [@m2uiobot](https://t.me/m2uiobot)
- 📢 **频道：** [@m2u\_io](https://t.me/m2u%5Fio)
- 🌐 **网站：** [m2u.io](https://m2u.io)

欢迎使用和反馈！