发送邮件和短信django phone auth



我正在使用django-phone-auth库进行身份验证,但我不知道如何发送电子邮件验证和电话验证

# for email
from django.dispatch import receiver
from phone_auth.signals import verify_email
@receiver(verify_email)
def verify_email_signal(sender, user, url, email, **kwargs):
...
# Send email
...

#for phone
from django.dispatch import receiver
from phone_auth.signals import verify_phone
@receiver(verify_phone)
def verify_phone_signal(sender, user, url, phone, **kwargs):
...
# Send SMS
...

文档是这么说的。我如何发送电子邮件和电话??请帮帮我))

from django.dispatch import receiver
from phone_auth.signals import verify_phone
from sms import send_sms
@receiver(verify_phone)
def verify_phone_signal(sender, user, url, phone, **kwargs):
send_sms(
'Hello', # body
'+myphonenumber', # originator
[user.phone], #recipients
fail_silently=False
)

这个函数在控制台中产生2这就是它所做的

您是否尝试使用视图重写?

我一般没有见过这个包,但我可以看到它使用了参数中有user的信号。根据文档,发送电子邮件看起来像这样。

# for email
from django.dispatch import receiver
from phone_auth.signals import verify_email
from django.core.mail import send_mail

@receiver(verify_email)
def verify_email_signal(sender, user, url, email, **kwargs):
send_mail(
'Subject here',
'Here is the message.',
'from@example.com',
[user.email],
fail_silently=False,
)

我认为你需要使用额外的modules。您使用的library授权消息,但不允许您发送sms(至少我没有找到任何此类信息)。

然而,我发现了一个backend看起来适合你。参考那里的文档,尝试用这种方式发送文本消息。

from django.dispatch import receiver
from phone_auth.signals import verify_phone
from sms import send_sms
@receiver(verify_phone)
def verify_phone_signal(sender, user, url, phone, **kwargs):
send_sms(
'Your message', # body
'+12065550100', # originator
[user.phone_number], #recipients
fail_silently=False
)

更新# 2我写信给你是想让你看看文件。它清楚地写着

而不是发送真正的短信控制台后端只是写入将被发送到标准输出的文本消息。通过默认情况下,控制台后端写入stdout。你可以用不同的通过在时提供stream关键字参数来提供类似流的对象构建连接。

使用列出的后端之一,例如。

SMS_BACKEND = 'sms.backends.twilio.SmsBackend'
TWILIO_ACCOUNT_SID = 'live_redacted-twilio-account-sid'
TWILIO_AUTH_TOKEN = 'live_redacted-twilio-auth-token'

相关内容

  • 没有找到相关文章

最新更新