Пример #1
0
class tradius_accounting(SQLModel):
    id = SQLModel.Uuid(default=uuid4, internal=True)
    acctsessionid = SQLModel.String(max_length=64, null=False, default='')
    acctuniqueid = SQLModel.String(max_length=32, null=False, default='')
    username = SQLModel.String(max_length=64, null=False, default='')
    realm = SQLModel.String(max_length=64, null=True, default='')
    nasipaddress = SQLModel.String(max_length=15, null=False, default='')
    nasportid = SQLModel.String(max_length=15, null=True, default=None)
    nasporttype = SQLModel.String(max_length=32, null=True, default=None)
    acctstarttime = SQLModel.DateTime()
    acctupdatetime = SQLModel.DateTime()
    acctstoptime = SQLModel.DateTime()
    acctinterval = SQLModel.Integer(null=True, default=None)
    acctsessiontime = SQLModel.Integer(signed=False, null=True, default=None)
    acctauthentic = SQLModel.String(null=True, default=None, max_length=32)
    connectinfo_start = SQLModel.String(max_length=50, null=True, default=None)
    connectinfo_stop = SQLModel.String(max_length=50, null=True, default=None)
    acctinputoctets = SQLModel.BigInt(null=True, default=None)
    acctoutputoctets = SQLModel.BigInt(null=True, default=None)
    calledstationid = SQLModel.String(max_length=50, null=False, default='')
    callingstationid = SQLModel.String(max_length=50, null=False, default='')
    acctterminatecause = SQLModel.String(max_length=32, null=False, default='')
    servicetype = SQLModel.String(max_length=32, default=None, null=True)
    framedprotocol = SQLModel.String(max_length=32, default=None, null=True)
    framedipaddress = SQLModel.String(max_length=15, default='', null=False)
    primary_key = id
    acctuniqueid_index = SQLModel.UniqueIndex(acctuniqueid)
    username_index = SQLModel.Index(username, nasipaddress)
    framedipaddress_index = SQLModel.Index(framedipaddress, nasipaddress)
    acctsessionid_index = SQLModel.Index(acctsessionid)
    acctsessiontime_index = SQLModel.Index(acctsessiontime)
    acctstarttime_index = SQLModel.Index(acctstarttime)
    acctinterval_index = SQLModel.Index(acctinterval)
    acctstoptime_index = SQLModel.Index(acctstoptime)
    nasipaddress_index = SQLModel.Index(nasipaddress)
Пример #2
0
class calabiyau_accounting(SQLModel):
    id = SQLModel.Uuid(default=uuid4, internal=True)
    user_id = SQLModel.Uuid()
    today = SQLModel.DateTime()
    acctinputoctets = SQLModel.BigInt(signed=False, null=True, default=None)
    acctoutputoctets = SQLModel.BigInt(signed=False, null=True, default=None)
    primary_key = id
    acc_unique = SQLModel.UniqueIndex(user_id, today)
    acc_username_index = SQLModel.Index(user_id)
    acc_today_index = SQLModel.Index(today)
    acc_user_ref = SQLModel.ForeignKey(user_id, calabiyau_subscriber.id)
Пример #3
0
class calabiyau_subscriber(SQLModel):
    id = SQLModel.Uuid(default=uuid4, internal=True)
    package_id = SQLModel.Uuid()
    domain = SQLModel.Fqdn(internal=True)
    tenant_id = SQLModel.Uuid(internal=True)
    username = SQLModel.Username(max_length=64, null=False)
    password = SQLModel.Password(max_length=150, null=True)
    email = SQLModel.Email(max_length=100)
    name = SQLModel.String(max_length=64)
    phone_mobile = SQLModel.Phone()
    phone_office = SQLModel.Phone()
    designation = SQLModel.Enum('', 'Mr', 'Mrs', 'Ms', 'Dr', 'Prof')
    static_ip4 = SQLModel.String(null=True, max_length=64)
    ctx = SQLModel.SmallInt(null=False, default=0)
    notified = SQLModel.Boolean(null=False, default=True)
    enabled = SQLModel.Boolean(default=True)
    creation_time = SQLModel.DateTime(null=False, default=now, readonly=True)
    volume_expire = SQLModel.DateTime(null=True)
    package_expire = SQLModel.DateTime(null=True)
    volume_used_bytes = SQLModel.BigInt(null=False, signed=False, default=0)
    volume_used = SQLModel.Boolean(null=False, default=False)
    calabiyau_unique = SQLModel.UniqueIndex(username, domain)
    calabiyau_pkg_ref = SQLModel.ForeignKey(package_id,
                                            calabiyau_package.id,
                                            on_delete='RESTRICT')
    primary_key = id
Пример #4
0
class tradius_ippool(SQLModel):
    id = SQLModel.BigInt()
    domain = SQLModel.Fqdn(internal=True)
    pool_name = SQLModel.String(max_length=30, null=False)
    framedipaddress = SQLModel.String(max_length=15, default='', null=False)
    nasipaddress = SQLModel.String(max_length=15, null=False, default = '')
    expiry_time = SQLModel.DateTime(null=True, default=None)
    username = SQLModel.String(max_length=64, default='', null=False)
    pool_key = SQLModel.String(max_length=30, null=False)
    primary_key = id
    poolname_expire_index = SQLModel.Index(pool_name, expiry_time)
    framedipaddress_index = SQLModel.Index(framedipaddress)
    nasip_poolkey_ipaddress_index = SQLModel.Index(nasipaddress, pool_key,
                                                   framedipaddress)