项目描述:
Eztalks 是一个面向海外用户的虚拟号码通信平台,用户可购买全球多个国家的虚拟手机号,实现短信收发与语音通话功能。
核心功能:
- 用户体系:实现JWT认证的注册登录、密码重置及个人资料管理;
- 号码管理:对接第三方号码API,实现号码查询、选购、绑定与释放;
- 支付系统:集成银行卡支付网关,完成订单创建、充值、回调验证及余额管理;
- 通信服务:基于Twilio等API实现短信发送/接收、电话拨打/接听,并处理通话状态回调;
- 异步任务:使用Celery处理耗时操作(如短信发送、账单生成),结合Redis作为消息队列和缓存,提升系统响应速度。
1. 整体框架
后端框架 Django + Django REST Framework
异步任务 Celery + Celery Beat
消息队列 / 缓存 Redis(既作Broker又作Cache)
数据库 MySQL
支付网关 Stripe
通信API Twilio(短信 / 语音 / 传真)
部署环境 Nginx + uWSGI + Supervisor
版本控制 Git
2. 用户认证与权限管理
功能描述:支持用户注册、登录、密码加密存储、JWT会话管理、多语言时区适配。
3. 号码商城(核心业务)
功能描述:对接海外号码供应商API,实现号码实时查询、筛选、购买、绑定与释放,支持库存状态同步。
4. 支付与充值系统
功能描述:集成国际银行卡支付网关,完成订单生成、支付回调验签、余额自动更新。
5. 短信与电话通信服务
功能描述:通过Twilio第三方API实现短信发送/接收、电话拨打/接听,处理异步状态回调
6. 异步任务与定时调度
功能描述:处理耗时操作(短信群发、账单生成、邮件通知、号码库存同步