我正在考虑为我的bot添加一些命令的高级订阅。现在唯一能打动我头脑的方法是,我应该用razorpay之类的任何服务创建一个付款页面,并为能够访问这些命令的用户创建一个用户id列表,并对每个命令进行自定义检查
大概是这样的:
list = [user id]
def user_is_premium(ctx):
return ctx.message.author.id in list
但这将是手动的,我需要亲自将用户id添加到列表中。有没有一种方法可以让我跳过这个麻烦,让用户付费,自动添加他们的id之类的东西,比这个自定义检查更好的东西
记住,我所说的订阅不是一次性付款,因此用户需要每月续订才能连续访问
我建议使用某种类型的数据库
firestore
对于自由层来说可能是一个不错的选择。或者,您可以使用谷歌表单如果你不想自己去做,你应该用zapier作为一种自动化的方法
触发因素应该是你收到的支付电子邮件和不和谐的名称。将它添加到数据库中,并使用
docs = db.collection(ctx.guild.id).where('name', '==', ctx.author.name)
在bot中读取它,然后检查过期日期是否在将来。您还可以将其转换为id这可能不是一个完美的解决方案,但它应该是东方的,以实现所有您需要的是设置正确的触发器
相关问题 更多 >
编程相关推荐