Browse Source

init commit

devel
bashmak 9 years ago
parent
commit
eec85a5773
  1. 0
      dialing_app/__init__.py
  2. 3
      dialing_app/admin.py
  3. 5
      dialing_app/apps.py
  4. 48
      dialing_app/models.py
  5. 3
      dialing_app/tests.py
  6. 7
      dialing_app/urls.py
  7. 15
      dialing_app/views.py

0
dialing_app/__init__.py

3
dialing_app/admin.py

@ -0,0 +1,3 @@
from django.contrib import admin
# Register your models here.

5
dialing_app/apps.py

@ -0,0 +1,5 @@
from django.apps import AppConfig
class DialingAppConfig(AppConfig):
name = 'dialing_app'

48
dialing_app/models.py

@ -0,0 +1,48 @@
from django.db import models
from django.utils.translation import ugettext_lazy as _
class AsteriskCDR(models.Model):
DISPOSITION_CHOICES = (
('NO ANSWER', _('No answer')),
('FAILED', _('Failed')),
('BUSY', _('Busy')),
('ANSWERED', _('Answered')),
('UNKNOWN', _('Unknown'))
)
calldate = models.DateTimeField(default='0000-00-00 00:00:00', primary_key=True)
clid = models.CharField(max_length=80, default='')
src = models.CharField(max_length=80, default='')
dst = models.CharField(max_length=80, default='')
dcontext = models.CharField(max_length=80, default='')
channel = models.CharField(max_length=80, default='')
dstchannel = models.CharField(max_length=80, default='')
lastapp = models.CharField(max_length=80, default='')
lastdata = models.CharField(max_length=80, default='')
duration = models.IntegerField(default=0)
billsec = models.IntegerField(default=0)
start = models.DateTimeField(null=True, blank=True, default=None)
answer = models.DateTimeField(null=True, blank=True, default=None)
end = models.DateTimeField(null=True, blank=True, default=None)
disposition = models.CharField(max_length=45, choices=DISPOSITION_CHOICES, default='')
amaflags = models.IntegerField(default=0)
accountcode = models.CharField(max_length=20, default='')
userfield = models.CharField(max_length=255, default='')
uniqueid = models.CharField(max_length=32, default='')
def save(self, *args, **kwargs):
return
def delete(self, *args, **kwargs):
return
class Meta:
abstract = True
def getModel():
class DynamicCDR(AsteriskCDR):
class Meta:
abstract = False
db_table = 'cdr'
return DynamicCDR

3
dialing_app/tests.py

@ -0,0 +1,3 @@
from django.test import TestCase
# Create your tests here.

7
dialing_app/urls.py

@ -0,0 +1,7 @@
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.home, name='home'),
]

15
dialing_app/views.py

@ -0,0 +1,15 @@
from django.contrib.auth.decorators import login_required
from django.shortcuts import render
from mydefs import only_admins
from .models import getModel
@login_required
@only_admins
def home(request):
AsteriskCDR = getModel()
logs = AsteriskCDR.objects.filter()
return render(request, 'index.html', {
'logs': logs
})
Loading…
Cancel
Save