예제 #1
0
def status_callback(request):
    form = StatusCallbackForm(request.POST or None)
    if form.is_valid():
        form.save(ip_address=request.get_host())
    else:
        post = pprint.pformat(request.POST)
        errors = [(k, str(v[0])) for k, v in form.errors.items()]
        logging.error('Callback error: %s, %s' % (errors, post))
    return HttpResponse('OK')
예제 #2
0
 def test_missing_from(self):
     message = Message.objects.create(body='foo', connection=self.connection)
     data = {
         'api_id': 12345,
         'apiMsgId': '996f364775e24b8432f45d77da8eca47',
         'cliMsgId': message.id,
         'timestamp': 1218007814,
         'to': 279995631564,
         'from': '',
         'status': '003',
         'charge': '0.300000',
     }
     form = StatusCallbackForm(data)
     self.assertTrue(form.is_valid(), [(k, str(v[0])) for k, v in form.errors.items()])
     status = form.save(ip_address='127.0.0.1')
     self.assertEqual(status.sender, '')