コード例 #1
0
ファイル: reports.py プロジェクト: jh3rnand3z/mango
class BaseHistory(models.Model):
    '''
        base history

        Scopes: accounts, numbers
    '''
    uuid = types.UUIDType(default=_id.uuid4)
    record_uuid = types.UUIDType(default=_id.uuid4)
    ban = types.UUIDType(default=_id.uuid4)  # 'billing account number'
    country_number = types.IntType()
    number = types.StringType()
    campaign_uuid = types.UUIDType(default=_id.uuid4)
    start_time = types.DateTimeType()
    caller_id = types.StringType()
    caller_id_name = types.StringType()
    origin_number = types.StringType()
    origin_city = types.StringType()
    origin_state = types.StringType()
    origin_province = types.StringType()
    destination_type = types.IntType()
    destination_contry_code = types.StringType()
    destination_number = types.StringType()
    destination_city = types.StringType()
    destination_state = types.StringType()
    duration = types.IntType()
    duration_unrounded = types.IntType()
    cost = types.IntType()
    special_rate = types.IntType()
    lead_type = types.IntType()
    web_call = types.BooleanType(default=False)
コード例 #2
0
ファイル: games.py プロジェクト: spacebeam/bw
class Game(models.Model):
    '''
        Game Data Structure
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    game = types.IntType(required=True)
    status = types.StringType(
        choices=['new', 'starting', 'in-progress', 'completed', 'deleted'],
        default='new')
    labels = types.DictType(types.StringType)
    history = compound.ListType(types.StringType())
    address = types.IPAddressType()
    session = types.UUIDType()
    bots = types.StringType(required=True)
    map = types.StringType(required=True)
    replay = types.StringType()
    home = types.StringType()
    home_is_winner = types.BooleanType(default=False)
    home_crashed = types.BooleanType(default=False)
    home_timed_out = types.BooleanType(default=False)
    home_building_score = types.IntType()
    home_razing_score = types.IntType()
    home_unit_score = types.IntType()
    away = types.StringType()
    away_is_winner = types.BooleanType(default=False)
    away_crashed = types.BooleanType(default=False)
    away_timed_out = types.BooleanType(default=False)
    away_building_score = types.IntType()
    away_razing_score = types.IntType()
    away_unit_score = types.IntType()
    created_by = types.UUIDType()
    created_at = types.DateTimeType(default=datetime.datetime.utcnow)
    last_update_by = types.UUIDType()
    last_update_at = types.TimestampType()
コード例 #3
0
 class HowlerResource(_models.Model):
     '''
         Fiorella resource
     '''
     uuid = _types.UUIDType(default=_uuid.uuid4)
     campaign = _types.UUIDType(required=False)
     directory = _types.UUIDType(required=False)
     resource = _types.StringType(required=True)
コード例 #4
0
ファイル: reports.py プロジェクト: jh3rnand3z/mango
class VoiceCall(models.Model):
    '''
        voice call
    '''
    uuid = types.UUIDType(default=_id.uuid4)
    account_uuid = types.UUIDType(default=_id.uuid4)
    phone_1 = types.StringType()
    first_name = types.StringType()
    last_name = types.StringType()
    rep_phone = types.StringType()
    keyword = types.StringType()
コード例 #5
0
ファイル: reports.py プロジェクト: jh3rnand3z/mango
class ConectedDuration(models.Model):
    '''
        connected duration
    '''
    uuid = types.UUIDType(default=_id.uuid4)
    customer_uuid = types.UUIDType(default=_id.uuid4)
    phone_1 = types.StringType()
    first_name = types.StringType()
    rep_phone = types.StringType()
    keyword = types.StringType()
    duration_unrounded = types.IntType()
    record_uuid = types.UUIDType(default=_id.uuid4)
コード例 #6
0
ファイル: __init__.py プロジェクト: jh3rnand3z/mango
 class MangoResource(_models.Model):
     '''
         Mango resource
     '''
     uuid = _types.UUIDType(default=_uuid.uuid4)
     account = _types.StringType(required=False)
     resource = _types.StringType(required=True)
コード例 #7
0
ファイル: files.py プロジェクト: spacebeam/openresty-sif
class File(models.Model):
    '''
        File Data Structure
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    url = types.StringType()
    account = types.StringType(required=True)
    checksum = types.StringType()
    head = types.StringType()
    payload = types.StringType()
    public = types.BooleanType(default=False)
    labels = compound.ListType(types.StringType())
    hashes = compound.ListType(types.StringType())
    chunks = compound.ListType(types.StringType())
    status = types.StringType()
    created_by = types.StringType()
    created_at = types.TimestampType(default=arrow.utcnow().timestamp)
    updated = types.BooleanType(default=False)
    last_update_by = types.StringType()
    last_update_at = types.TimestampType()
    checked = types.BooleanType(default=False)
    checked_by = types.StringType()
    checked_at = types.TimestampType()
    active = types.BooleanType(default=True)
    watchers = compound.ListType(types.StringType())
コード例 #8
0
class Payment(models.Model):
    '''
        Payment structure
    '''
    uuid = types.UUIDType(default=uuid.uuid4)

    account = types.StringType(required=True)
    credit_card_type = types.StringType(required=False)

    merchant = types.StringType()

    address = types.StringType()

    phone = types.StringType()

    email = types.EmailType()
    
    card_name = types.StringType()

    amount_funds = types.StringType() 
    
    credit_card_number = types.StringType()
    credit_card_cvc = types.StringType()

    exp_month = types.StringType()
    exp_year = types.StringType()

    CustomerToken = types.StringType(default='None')

    Status = compound.ModelType(Status)
    Transaction = compound.ModelType(Transaction)
    AuthorizationNum = types.IntType(default=__None_Id__)

    created = types.DateTimeType(default=arrow.utcnow().naive)
コード例 #9
0
class Task(models.Model):
    '''
        Task Data Structure
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    account = types.StringType(required=True)
    subject = types.StringType()
    description = types.StringType()
    data = types.StringType()
    assign = compound.ListType(types.StringType())
    public = types.BooleanType(default=False)
    source = types.StringType()
    destination = types.StringType()
    labels = types.DictType(types.StringType)
    start_time = types.TimestampType()
    ack_time = types.TimestampType()
    stop_time = types.TimestampType()
    deadline = types.TimestampType()
    duration = types.StringType()
    comments = compound.ListType(types.StringType())
    status = types.StringType(choices=['new', 'now', 'later', 'done'],
                              default='new',
                              required=True)
    history = compound.ListType(types.StringType())
    checked = types.BooleanType(default=False)
    checked_by = types.StringType()
    checked_at = types.TimestampType(default=arrow.utcnow().timestamp)
    created_by = types.StringType()
    created_at = types.TimestampType(default=arrow.utcnow().timestamp)
    last_update_by = types.StringType()
    last_update_at = types.TimestampType()
コード例 #10
0
ファイル: files.py プロジェクト: spacebeam/openresty-sif
class ModifyFile(models.Model):
    '''
        Modify File

        This model is similar to File.

        It lacks of require and default values on it's fields.

        The reason of it existence is that we need to validate
        every input data that came from outside the system, with
        this we prevent users from using PATCH to create fields
        outside the scope of the resource.
    '''
    uuid = types.UUIDType()
    url = types.StringType()
    account = types.StringType()
    checksum = types.StringType()
    head = types.StringType()
    payload = types.StringType()
    public = types.BooleanType()
    labels = compound.ListType(types.StringType())
    hashes = compound.ListType(types.StringType())
    chunks = compound.ListType(types.StringType())
    status = types.StringType()
    created_by = types.StringType()
    created_at = types.TimestampType()
    updated = types.BooleanType()
    last_update_by = types.StringType()
    last_update_at = types.TimestampType()
    checked = types.BooleanType()
    checked_by = types.StringType()
    checked_at = types.TimestampType()
    active = types.BooleanType()
    watchers = compound.ListType(types.StringType())
コード例 #11
0
ファイル: __init__.py プロジェクト: jh3rnand3z/cebus
class ResourceContainer(models.Model):
    '''
        Cebus resource container
    '''
    contains = compound.ListType(types.UUIDType())

    total = types.IntType()
コード例 #12
0
ファイル: __init__.py プロジェクト: jh3rnand3z/extractor
class SimpleResource(models.Model):
    '''
        Simple resource
    '''
    contains = compound.ListType(types.UUIDType())

    total = types.IntType()
コード例 #13
0
class BaseAccount(models.Model):
    '''
        Base account
    '''
    uuid = types.UUIDType(default=uuid.uuid4)

    passwords = compound.ListType(compound.ModelType(Password))

    # api samples, remove after finish work on passwords or otherwise secret keys.
    api_key = types.StringType(required=False)
    # api_keys = compound.ListType(compound.ModelType(Mon))

    # system admin account
    is_admin = types.BooleanType(default=False)

    active = types.BooleanType(default=True)
    account = types.StringType(required=True)
    name = types.StringType(required=False)
    email = types.EmailType(required=True)
    phone_number = types.StringType()
    country_code = types.StringType()
    timezone = types.StringType()
    location = types.StringType()
    resources = compound.ModelType(Resource)
    
    routes = compound.ListType(compound.ModelType(Route))

    uri = types.StringType(required=False)
    url = types.URLType()

    # move this to howler and spider?
    max_channels = types.IntType()
コード例 #14
0
class SuggestionAddressDTO(DTO):
    """DTO подсказки адреса."""

    value = types.StringType()
    fias_id = types.UUIDType()
    lat = types.StringType()
    lon = types.StringType()
    fias_level = types.StringType(choices=AddressTypeEnum.choices(), )
コード例 #15
0
class SuggestionAddressParamsDTO(DTO):
    """DTO поиска адреса в геосервисе."""

    from_bound = types.StringType(choices=AddressTypeEnum.choices(),
                                  required=True)
    to_bound = types.StringType(choices=AddressTypeEnum.choices(),
                                required=True)
    query = types.StringType(required=True)
    region_fias_id = types.UUIDType()
    area_fias_id = types.UUIDType()
    city_fias_id = types.UUIDType()
    settlement_fias_id = types.UUIDType()
    street_fias_id = types.UUIDType()
    count = types.IntType(default=5)

    class Options:
        serialize_when_none = False
コード例 #16
0
ファイル: models.py プロジェクト: vadfabi/aiohttp-demo
class User(Model):
    id = types.UUIDType(required=False)
    name = types.StringType(required=False)
    email = EmailType(required=True)
    created_at = types.DateTimeType(required=False)
    updated_at = types.DateTimeType(required=False)
    deleted_at = types.DateTimeType(required=False)
    profile = types.DictType(types.StringType, default={}, required=False)
コード例 #17
0
class GeoserviceSuggestionDataDTO(DTO):
    """DTO данных подсказки из геосервиса."""

    fias_id = types.UUIDType()
    geo_lat = types.FloatType()
    geo_lon = types.FloatType()
    qc_geo = types.IntType(choices=GeoPointsAccuracy.choices())
    fias_level = types.IntType()
コード例 #18
0
class Monkey(models.Model):
    '''
        Monkey business
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    sshkey = types.StringType(required=True)
    sw = types.StringType(required=True)
    hw = types.StringType(required=True)
    ''' 
コード例 #19
0
class CampaignQueue(models.Model):
    '''
        Campaign queue
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    name = types.StringType(required=True)

    musiconhold = types.StringType(default='default')
    announce = types.StringType()
    context = types.StringType()
    timeout = types.IntType(default=15)

    monitor_join = types.IntType(default=1)
    monitor_format = types.StringType(default='wav')

    queue_youarenext = types.StringType(default='queue-youarenext')
    queue_thereare = types.StringType()
    queue_callswaiting = types.StringType()
    queue_holdtime = types.StringType()
    queue_minutes = types.StringType()
    queue_seconds = types.StringType()
    queue_lessthan = types.StringType(default='queue-less-than')
    queue_thankyou = types.StringType(default='queue-thankyou')
    queue_reporthold = types.StringType(default='queue-reporthold')

    announce_frequency = types.IntType()
    announce_round_seconds = types.IntType(default=10)
    announce_holdtime = types.StringType(default='yes')

    retry = types.IntType(default=5)
    wrapuptime = types.IntType()
    maxlen = types.IntType()
    servicelevel = types.IntType()
    strategy = types.StringType(choices=[
        'ringall', 'leastrecent', 'fewestcalls', 'random', 'rrmemory',
        'linear', 'wrandom'
    ],
                                required=True)

    joinempty = types.StringType(default='yes')
    leavewhenempty = types.StringType()

    eventmemberstatus = types.IntType(default=1)
    eventwhencalled = types.IntType(default=1)
    reportholdtime = types.IntType(default=1)
    memberdelay = types.IntType()
    weight = types.IntType()
    timeoutrestart = types.IntType()

    periodic_announce = types.StringType()
    periodic_announce_frequency = types.IntType()

    ringinuse = types.IntType(default=0)
    setinterfacevar = types.IntType(default=1)
コード例 #20
0
ファイル: tasks.py プロジェクト: jh3rnand3z/mango
class ModifyTask(models.Model):
    '''
        Modify task

        This model is similar to Task.

        It lacks of require and default values on it's fields.

        The reason of it existence is that we need to validate
        every input data that came from outside the system, with 
        this we prevent users from using PATCH to create fields 
        outside the scope of the resource.
    '''
    uuid = types.UUIDType()
    title = types.StringType()
    first_name = types.StringType()
    last_name = types.StringType()
    description = types.StringType()
    label = types.StringType()
    category = types.StringType()
    email = types.StringType()
    account = types.StringType()
    accountcode = types.StringType()
    userfield = types.StringType()
    assigned = types.BooleanType()
    checked = types.BooleanType()
    public = types.BooleanType()
    source = types.StringType()
    destination = types.StringType()
    channel = types.StringType()
    source_channel = types.StringType()
    context = types.StringType()
    destination_context = types.StringType()
    destination_number = types.StringType()
    destination_channel = types.StringType()
    start = types.DateTimeType()
    answer = types.DateTimeType()
    end = types.DateTimeType()
    duration = types.IntType()
    billsec = types.IntType()
    billing = types.IntType()
    rate = types.IntType()
    disposition = types.StringType()
    status = types.StringType()
    priority = types.StringType()
    severity = types.StringType()
    checked = types.BooleanType()
    checked_by = types.StringType()
    created = types.DateTimeType()
    comments = compound.ModelType(Comment)
    last_modified = types.DateTimeType()
    updated_by = types.StringType()
    updated_at = types.DateTimeType()
    uri = types.StringType()
コード例 #21
0
ファイル: inbound.py プロジェクト: jh3rnand3z/spider
class Contact(models.Model):
    '''
        Outbound contact
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    account = types.StringType(required=True)
    first_name = types.StringType()
    last_name = types.StringType()
    phone_1 = types.StringType(required=True)
    phone_2 = types.StringType()
    phone_3 = types.StringType()
コード例 #22
0
class InboundCampaign(models.Model):
    '''
        Inbound campaign
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    name = types.StringType(required=True)

    channel = types.StringType(required=True)

    context = types.StringType(required=True)
    extension = types.StringType(required=True)

    description = types.StringType()
コード例 #23
0
class BaseApp(models.Model):
    '''
        Cebus base application

        Apps basic data structure
    '''
    id = mongo.ObjectIdType(required=False)

    uuid = types.UUIDType(default=uuid.uuid4)

    active = types.BooleanType(default=True)
    name = types.StringType(required=False)
    url = types.URLType()
コード例 #24
0
class Password(models.Model):
    '''
        Password
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    assigned = types.BooleanType(default=False)
    password = types.StringType()
    raw = types.StringType()
    md5 = types.StringType()
    sha1 = types.StringType()
    sha256 = types.StringType()
    sha384 = types.StringType()
    sha512 = types.StringType()
    created_at = types.DateTimeType()
    last_modified = types.DateTimeType()
コード例 #25
0
class AddressDTO(DTO):
    """DTO адреса."""

    id = types.IntType()  # noqa: A003
    city = types.StringType(required=True)
    street = types.StringType(required=True)
    house = types.StringType(required=True)
    building = types.StringType()
    apartment = types.StringType()
    floor = types.StringType()
    entrance = types.StringType()
    comment = types.StringType()
    lat = types.FloatType()
    lon = types.FloatType()
    fias_id = types.UUIDType()
コード例 #26
0
ファイル: __init__.py プロジェクト: jh3rnand3z/cebus
class Unit(models.Model):
    '''
        Cebus base unit model
    '''
    name = types.StringType(required=False)
    uuid = types.UUIDType(default=uuid.uuid4)

    contacts = compound.ModelType(ContactsContainer)

    url = types.URLType()
    urls = compound.ListType(types.StringType())

    resources = compound.ModelType(Resource)

    cores = types.IntType(default=1)
    total = types.IntType()
コード例 #27
0
ファイル: companies.py プロジェクト: jh3rnand3z/extractor
class Company(models.Model):
    '''
        Company Object Data Structure
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    state_province = types.StringType()
    incorporated_state_province = types.StringType()
    fax = types.StringType()
    vat_tax_id_file_number = types.StringType()
    incorporated_number = types.StringType()
    zip_postal = types.StringType()
    dba = types.StringType()
    federal_tax_id = types.StringType()
    incoportated_country = types.StringType()
    telephone = types.StringType()
    city_town = types.StringType()
    country_company = types.StringType()
    subsidiary_reg_num = types.StringType()
    company_name = types.StringType()
    company_email = types.StringType()
    account_type = types.StringType()
    password = types.StringType()
    subsidiary_name = types.StringType()
    email = types.StringType()
    street_address = types.StringType()
    incorporated_address = types.StringType()

    status = types.StringType()
    account = types.StringType()

    checked = types.BooleanType(default=False)
    checked_by = types.StringType()

    #details = compound.ModelType(Log)
    #comments = compound.ModelType(Comment)

    created = types.DateTimeType(default=arrow.utcnow().naive)
    #created_at = types.DateTimeType()
    last_modified = types.DateTimeType()
    updated_by = types.DateTimeType()
    updated_at = types.DateTimeType()

    uri = types.StringType()
コード例 #28
0
ファイル: inbound.py プロジェクト: jh3rnand3z/spider
class Call(models.Model):
    '''
        Outbound call
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    # Specify where and how to call
    account = types.StringType(required=True)
    channel = types.StringType()
    callerid = types.StringType()
    max_retries = types.IntType(default=2)
    retry_time = types.IntType(default=300)
    wait_time = types.IntType(default=45)
    # If the call answers, connect it here
    context = types.StringType()
    extension = types.StringType()
    priority = types.IntType(default=1)
    # Set a variable for use in the extension logic
    set_var = types.StringType()
    # other stuff
    archive = types.StringType(default='no', choices=['yes', 'no'])
コード例 #29
0
class ModifyTask(models.Model):
    '''
        Modify task

        This model is similar to Task.

        It lacks of require and default values on it's fields.

        The reason of it existence is that we need to validate
        every input data that came from outside the system, with
        this we prevent users from using PATCH to create fields
        outside the scope of the resource.
    '''
    uuid = types.UUIDType(default=uuid.uuid4)
    account = types.StringType()
    subject = types.StringType()
    description = types.StringType()
    data = types.StringType()
    assign = compound.ListType(types.StringType())
    public = types.BooleanType(default=False)
    source = types.StringType()
    destination = types.StringType()
    labels = types.DictType(types.StringType)
    start_time = types.TimestampType()
    ack_time = types.TimestampType()
    stop_time = types.TimestampType()
    deadline = types.TimestampType()
    duration = types.StringType()
    comments = compound.ListType(types.StringType())
    status = types.StringType(choices=['new', 'now', 'later', 'done'],
                              default='new',
                              required=True)
    history = compound.ListType(types.StringType())
    checked = types.BooleanType(default=False)
    checked_by = types.StringType()
    checked_at = types.TimestampType(default=arrow.utcnow().timestamp)
    created_by = types.StringType()
    created_at = types.TimestampType(default=arrow.utcnow().timestamp)
    last_update_by = types.StringType()
    last_update_at = types.TimestampType()
コード例 #30
0
class SchematicsFieldsModel(BaseModel):
    # base fields
    type_string = types.StringType()
    type_int = types.IntType()
    type_uuid = types.UUIDType()
    type_IPv4 = types.IPv4Type()
    type_url = types.URLType()
    type_email = types.EmailType()
    type_number = types.NumberType(int, "integer")
    type_int = types.IntType()
    type_long = types.LongType()
    type_float = types.FloatType()
    type_decimal = types.DecimalType()
    type_md5 = types.MD5Type()
    type_sha1 = types.SHA1Type()
    type_boolean = types.BooleanType()
    type_date = types.DateType()
    type_datetime = types.DateTimeType()
    type_geopoint = types.GeoPointType()
    # type_multilingualstring = types.MultilingualStringType(default_locale='localized_value')

    # compound fields
    type_list = compound.ListType(types.StringType)
    type_dict = compound.DictType(
        types.IntType)  # dict values can be only integers
    type_list_of_dict = compound.ListType(compound.DictType,
                                          compound_field=types.StringType)
    type_dict_of_list = compound.DictType(compound.ListType,
                                          compound_field=types.IntType)
    type_model = compound.ModelType(NestedModel)
    type_list_model = compound.ListType(compound.ModelType(NestedModel))

    # reference fields
    type_ref_simplemodel = ModelReferenceType(SimpleModel)
    type_ref_usermodel = ModelReferenceType(User)

    class Options:
        # namespace = 'st'
        collection = 'st'
        serialize_when_none = False