Example #1
0
class calabiyau_session(SQLModel):
    id = SQLModel.Uuid(default=uuid4, internal=True)
    user_id = SQLModel.Uuid(null=True)
    username = SQLModel.String(max_length=128, null=False, default=None)
    acctsessionid = SQLModel.String(max_length=64, null=True, default=None)
    acctuniqueid = SQLModel.String(max_length=32, null=True, default=None)
    nasipaddress = SQLModel.Ip4(null=False)
    nasportid = SQLModel.String(max_length=15, null=True, default=None)
    nasport = SQLModel.String(max_length=32, null=True, default=None)
    nasporttype = SQLModel.String(max_length=32, null=True, default=None)
    acctstarttime = SQLModel.DateTime(null=True)
    acctupdated = SQLModel.DateTime(null=True)
    processed = SQLModel.DateTime(null=True)
    calledstationid = SQLModel.String(max_length=50, null=True, default=None)
    callingstationid = SQLModel.String(max_length=50, null=True, default=None)
    servicetype = SQLModel.String(max_length=32, default=None, null=True)
    framedprotocol = SQLModel.String(max_length=32, default=None, null=True)
    framedipaddress = SQLModel.Ip4(null=True)
    acctinputoctets = SQLModel.BigInt(signed=False, null=True, default=None)
    acctoutputoctets = SQLModel.BigInt(signed=False, null=True, default=None)
    accttype = SQLModel.String(max_length=32, null=True, default='start')
    ctx = SQLModel.SmallInt(null=False, default=0)
    primary_key = id
    session_uniqueid_index = SQLModel.UniqueIndex(acctuniqueid)
    session_username_index = SQLModel.Index(user_id)
    session_ipaddress_index = SQLModel.Index(framedipaddress)
    session_acctstarttime_index = SQLModel.Index(acctstarttime)
    session_acctupdated_index = SQLModel.Index(acctupdated)
    session_acct_prune_index = SQLModel.Index(accttype, processed)
    session_nasid_index = SQLModel.Index(acctsessionid)
    session_nas_index = SQLModel.Index(nasipaddress)
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.Ip4(null=True)
    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)
    calabiyau_pkg_ref = SQLModel.ForeignKey(package_id,
                                            calabiyau_package.id,
                                            on_delete='RESTRICT')
    primary_key = id
Example #3
0
class calabiyau_duplicate(SQLModel):
    id = SQLModel.Uuid(default=uuid4, internal=True)
    package_id = SQLModel.Uuid()
    name = SQLModel.Word(max_length=64, null=False, regex=r'^[a-z0-9\._-]+$')
    server = SQLModel.Ip4(null=False)
    class_attr = SQLModel.TinyInt(null=False, default=0)
    creation_time = SQLModel.DateTime(readonly=True, default=now)
    pkg_dup_ref = SQLModel.ForeignKey(package_id, calabiyau_package.id)
    primary_key = id
Example #4
0
class calabiyau_ippool(SQLModel):
    id = SQLModel.Uuid(default=uuid4, internal=True)
    pool_id = SQLModel.Uuid(null=False)
    user_id = SQLModel.Uuid(null=True)
    framedipaddress = SQLModel.Ip4(null=False)
    expiry_time = SQLModel.DateTime(null=True, default=None)
    primary_key = id
    ippool_user_index = SQLModel.Index(user_id, expiry_time)
    ippool_expire_index = SQLModel.Index(pool_id, expiry_time)
    ippool_pool_ref = SQLModel.ForeignKey(pool_id, calabiyau_pool.id)
    ippool_unique_ip = SQLModel.UniqueIndex(pool_id, framedipaddress)
Example #5
0
class calabiyau_nas(SQLModel):
    id = SQLModel.Uuid(default=uuid4, internal=True)
    virtual_id = SQLModel.Uuid(internal=True)
    name = SQLModel.Word(max_length=64, null=False, regex=r'^[a-z0-9\._-]+$')
    nas_type = SQLModel.Word(max_length=64,
                             upper=True,
                             null=False,
                             regex=r'^[a-z0-9\._-]+$')
    secret = SQLModel.String(max_length=64, null=False)
    server = SQLModel.Ip4(null=False)
    description = SQLModel.Text()
    creation_time = SQLModel.DateTime(default=now, readonly=True)
    nas_virtual_ref = SQLModel.ForeignKey(virtual_id, calabiyau_virtual.id)
    nas_virtual_index = SQLModel.Index(virtual_id)
    nas_server_index = SQLModel.Index(server)
    nas_unique = SQLModel.UniqueIndex(server)
    primary_key = id