Пример #1
0
def login():
    auth = request.authorization
    if not auth:
        return jsonify({'message': 'Authotization Not Provided!'}), 400
    else:
        username = auth.username
        password = auth.password

        for user in users_list:
            if username == user.name and password == user.password:
                token = jwt.encode(
                    {
                        'name':
                        user.name,
                        'exp':
                        datetime.datetime.utcnow() +
                        datetime.timedelta(minutes=15)
                    }, os.environ['SECRET_KEY'])

                mail = Mail(
                    user.mail, 'Login',
                    'http://0.0.0.0:50/user-login?token={}'.format(
                        token.decode('utf-8')))
                mail.send()
                sms = SMS(user.phone, 'Someone Logged into your account')
                sms.send()
                return jsonify({'token': token.decode('utf-8')}), 200
            else:
                return jsonify({'message':
                                'Username or Password is Invalid'}), 400
        return jsonify({'message': 'Username or Password is Invalid'}), 400
Пример #2
0
def send(req, phone):
    from SMS import SMS
    sms = SMS("成少雷", "SMS_102315005")

    # 验证码
    num = random.randint(10000, 99999)

    para = "{'number':'%d'}" % num
    # 阿里云服务器会修改cookie路径,需要重新吧cookie的path设置/
    res = sms.send(phone, para)

    # 将验证码写入文件
    response = Response(req)
    response.set_cookie('phone', phone)
    response.set_cookie('code', num)

    req.start_response("200 ok", response.header)
    #
    html = b"""
    <html>
    <head>
       <meta charset='utf-8'>
       <meta http-equiv='refresh' content='0;url=/login'>
    </head>
    <body></body>
    </html>
    """
    return [html]
Пример #3
0
def checkSMS(e):
    global contact_addr
    global textMode
    SAY("Ok, is this correct?")
    SAY(e)
    ans = trueOrFalse()
    if ans:
        sms = SMS()
        sms.send([contact_addr, e])
        SAY("Ok, text message sent")
        textMode = False
    else:
        SAY("Ok, try again")
        newE = listenForText()
        Print(newE)
        checkSMS(newE)
Пример #4
0
class SMSTest(unittest.TestCase):
    def setUp(self):
        lunchr.loadUrl = minimock.Mock('lunchr.loadUrl', returns='0')
        self.SMS = SMS('username', 'password', 'type')

    def tearDown(self):
        del self.SMS
        minimock.restore()

    def test_constructor(self):
        """
        Tests that SMS constructor sets values properly.
        """
        self.assertEquals('username', self.SMS.username)
        self.assertEquals('password', self.SMS.password)
        self.assertEquals('type', self.SMS.type)

    def test_send(self):
        """
        Tests that SMS.send() can send an SMS.
        """
        result = self.SMS.send('phonenumber', 'message')
        self.assertEquals('0', result)