diff --git a/db/up/icecast.sql b/db/up/icecast.sql index b167890ac..01385f055 100644 --- a/db/up/icecast.sql +++ b/db/up/icecast.sql @@ -42,16 +42,16 @@ create table icecast_admin_authentications ( -- The default username for all source connections is 'source' but -- this option allows to specify a default password. This and the username -- can be changed in the individual mount sections. - source_password VARCHAR NOT NULL DEFAULT 'icejam321', + source_password VARCHAR(64) NOT NULL DEFAULT 'icejam321', -- Used in the master server as part of the authentication when a slave requests -- the list of streams to relay. The default username is 'relay' - relay_user VARCHAR NOT NULL DEFAULT 'relay', - relay_password VARCHAR NOT NULL DEFAULT 'jkrelayhack', + relay_user VARCHAR(64) NOT NULL DEFAULT 'relay', + relay_password VARCHAR(64) NOT NULL DEFAULT 'jkrelayhack', --The username/password used for all administration functions. - admin_user VARCHAR NOT NULL DEFAULT 'jkadmin', - admin_password VARCHAR NOT NULL DEFAULT 'jKadmin123', + admin_user VARCHAR(64) NOT NULL DEFAULT 'jkadmin', + admin_password VARCHAR(64) NOT NULL DEFAULT 'jKadmin123', created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP @@ -60,10 +60,10 @@ create table icecast_admin_authentications ( --contains all the settings for listing a stream on any of the Icecast2 YP Directory servers. -- Multiple occurances of this section can be specified in order to be listed on multiple directory servers. -create table icecast_directorys ( +create table icecast_directories ( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), - yp_url_timeout integer not null default 15, - yp_url character not null UNIQUE default 'http://dir.xiph.org/cgi-bin/yp-cgi', + yp_url_timeout INTEGER not null default 15, + yp_url VARCHAR(1024) not null UNIQUE default 'http://dir.xiph.org/cgi-bin/yp-cgi', created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ); @@ -73,11 +73,11 @@ create table icecast_servermiscs ( -- This is the DNS name or IP address that will be used for the stream directory lookups or possibily -- the playlist generation if a Host header is not provided. While localhost is shown as an example, -- in fact you will want something that your listeners can use. - hostname character not null default 'concertsvr.jamkazam.com', + hostname VARCHAR(256) not null default 'concertsvr.jamkazam.com', --This sets the location string for this icecast instance. It will be shown e.g in the web interface. - location character not null default 'earth', + location VARCHAR(128) not null default 'earth', --This should contain contact details for getting in touch with the server administrator. - admin character not null default 'icemaster@localhost', + admin VARCHAR(128) not null default 'icemaster@localhost', -- This flag turns on the icecast2 fileserver from which static files can be served. -- All files are served relative to the path specified in the configuration -- setting. By default the setting is enabled so that requests for the images @@ -86,7 +86,7 @@ create table icecast_servermiscs ( -- This optional setting allows for the administrator of the server to override the -- default server identification. The default is icecast followed by a version number -- and most will not care to change it however this setting will change that. - server_id character not null default 'icecast 2.3', + server_id VARCHAR(128) not null default 'icecast 2.3', created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, @@ -97,13 +97,13 @@ create table icecast_listen_sockets ( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), -- The TCP port that will be used to accept client connections. - port integer not null default 8001, + port INTEGER not null default 8001, -- An optional IP address that can be used to bind to a specific network card. -- If not supplied, then it will bind to all interfaces. - bind_address character, + bind_address VARCHAR(128), - shoutcast_mount character default NULL, + shoutcast_mount VARCHAR(128) default NULL, shoutcast_compat INTEGER not null default 0, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, @@ -115,15 +115,15 @@ create table icecast_mastersvr_relays ( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), -- ip address of the master icecast server and port number - master_server character not null, - master_server_port integer not null, + master_server VARCHAR(128) not null, + master_server_port INTEGER not null, --The interval (in seconds) that the Relay Server will poll the Master Server for any new mountpoints to relay. - master_update_interval integer not null default 120, + master_update_interval INTEGER not null default 120, -- This is the relay username on the master server. It is used to query the server for a list of -- mountpoints to relay. If not specified then 'relay' is used - master_username character not null default 'relay', - master_password character not null, + master_username VARCHAR(64) not null default 'relay', + master_password VARCHAR(64) not null, --Global on-demand setting for relays. Because you do not have individual relay options when -- using a master server relay, you still may want those relays to only pull the stream when @@ -141,50 +141,51 @@ create table icecast_relays ( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), -- ip address of server we are relaying from and port number - server character not null, - port integer not null default 8001, + server VARCHAR(128) not null, + port INTEGER not null default 8001, -- mount at server. eg /example.ogg - mount character not null, + mount VARCHAR(128) not null, -- eg /different.ogg - local_mount character not null, + local_mount VARCHAR(128) not null, -- eg joe. could be null - username character default NULL , + username VARCHAR(64) default NULL , -- user password - password character default null , + password VARCHAR(64) default null , relay_shoutcast_metadata INTEGER default 0, --- relay only if we have someone wanting to listen on_demand INTEGER default 0, - created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ); create TABLE icecast_user_authentications( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), --"htpasswd or url" - type CHARACTER DEFAULT NULL , + -- real name is type + stype VARCHAR(16) DEFAULT NULL , -- these are for httpasswd - filename CHARACTER default NULL, + filename VARCHAR(256) default NULL, allow_duplicate_users INTEGER DEFAULT 0, -- these options are for url -- eg value="http://myauthserver.com/stream_start.php" - mount_add CHARACTER default NULL, + mount_add VARCHAR(256) default NULL, --value="http://myauthserver.com/stream_end.php" - mount_remove CHARACTER default NULL, + mount_remove VARCHAR(256) default NULL, --value="http://myauthserver.com/listener_joined.php" - listener_add CHARACTER default NULL, + listener_add VARCHAR(256) default NULL, --value="http://myauthserver.com/listener_left.php" - listener_remove CHARACTER default NULL, + listener_remove VARCHAR(256) default NULL, -- value="user" - username CHARACTER default NULL, + username VARCHAR(64) default NULL, -- value="pass" - password CHARACTER default NULL, + password VARCHAR(64) default NULL, -- value="icecast-auth-user: 1" - auth_header CHARACTER default NULL, + auth_header VARCHAR(64) default NULL, -- value="icecast-auth-timelimit:" - timelimit_header CHARACTER default NULL, + timelimit_header VARCHAR(64) default NULL, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP @@ -194,20 +195,20 @@ create TABLE icecast_user_authentications( create table icecast_mounts ( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), -- eg/example-complex.ogg - mount_name CHARACTER UNIQUE NOT NULL, - username CHARACTER NOT NULL DEFAULT 'jamsource', - password CHARACTER NOT NULL DEFAULT 'jamksource', + mount_name VARCHAR(128) UNIQUE NOT NULL, + username VARCHAR(64) NOT NULL DEFAULT 'jamsource', + password VARCHAR(64) NOT NULL DEFAULT 'jamksource', max_listeners INTEGER NOT NULL DEFAULT 4, max_listener_duration INTEGER NOT NULL DEFAULT 3600, -- dump of the stream coming through on this mountpoint. -- eg /tmp/dump-example1.ogg - dump_file CHARACTER DEFAULT NULL, + dump_file VARCHAR(256) DEFAULT NULL, -- intro music to play -- This optional value specifies a mountpoint that clients are automatically moved to -- if the source shuts down or is not streaming at the time a listener connects. - intro CHARACTER NOT NULL DEFAULT '/intro.ogg', - fallback_mount CHARACTER NOT NULL DEFAULT '/sourcedown.ogg', + intro VARCHAR(256) NOT NULL DEFAULT '/intro.ogg', + fallback_mount VARCHAR(256) NOT NULL DEFAULT '/sourcedown.ogg', -- When enabled, this allows a connecting source client or relay on this mountpoint -- to move listening clients back from the fallback mount. fallback_override INTEGER DEFAULT 1, @@ -218,19 +219,21 @@ create table icecast_mounts ( --For non-Ogg streams like MP3, the metadata that is inserted into the stream often -- has no defined character set. - charset CHARACTER NOT NULL DEFAULT 'ISO8859-1', + charset VARCHAR(256) NOT NULL DEFAULT 'ISO8859-1', -- possilble values are -1, 0, 1 - public INTEGER DEFAULT 1, + -- real name is public but this is reserved word in ruby + publicc INTEGER DEFAULT 1, - stream_name VARCHAR NOT NULL DEFAULT 'My Jamkazam Audio Stream', - stream_description VARCHAR NOT NULL DEFAULT 'My JK audio description', + stream_name VARCHAR(256) NOT NULL DEFAULT 'My Jamkazam Audio Stream', + stream_description VARCHAR(256) NOT NULL DEFAULT 'My JK audio description', -- direct to user page - stream_url CHARACTER NOT NULL DEFAULT 'http://wwww.jamakazam.com#user_id', + stream_url VARCHAR(256) NOT NULL DEFAULT 'http://wwww.jamakazam.com#user_id', -- get this from the session info - genre VARCHAR NOT NULL DEFAULT 'Unknown', + genre VARCHAR(64) NOT NULL DEFAULT 'Unknown', bitrate integer NOT NULL default 92, - type CHARACTER NOT NULL DEFAULT 'application/ogg' , - subtype CHARACTER NOT NULL DEFAULT 'vorbis', + -- real name is type but this is reserved name in ruby + mtype VARCHAR(64) NOT NULL DEFAULT 'application/ogg' , + subtype VARCHAR(64) NOT NULL DEFAULT 'vorbis', -- Enable this to prevent this mount from being shown on the xsl pages. -- This is mainly for cases where a local relay is configured and you do -- not want the source of the local relay to be shown @@ -242,25 +245,25 @@ create table icecast_mounts ( mp3_metadata_interval INTEGER DEFAULT 4096, --called when the source connects or disconnects. The scripts are called with the name of the mount - on_connect CHARACTER DEFAULT '/home/icecast/bin/source-start', - on_disconnect CHARACTER DEFAULT '/home/icecast/bin/source-end', + on_connect VARCHAR(256) DEFAULT '/home/icecast/bin/source-start', + on_disconnect VARCHAR(256) DEFAULT '/home/icecast/bin/source-end', created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - auth_id VARCHAR(64) NOT NULL REFERENCES icecast_user_authentications(id) + updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ); create table icecast_paths ( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), - basedir CHARACTER NOT NULL DEFAULT './', - logdir CHARACTER NOT NULL DEFAULT './logs', - pidfile CHARACTER NOT NULL DEFAULT './icecast.pid', - webroot CHARACTER NOT NULL DEFAULT './web', - adminroot CHARACTER NOT NULL DEFAULT './admin', - allow_ip CHARACTER NOT NULL DEFAULT '/path/to/ip_allowlist', - deny_ip CHARACTER NOT NULL DEFAULT '/path_to_ip_denylist', - alias CHARACTER DEFAULT 'source="/foo" dest="/bar"', + basedir VARCHAR(256) NOT NULL DEFAULT './', + logdir VARCHAR(256) NOT NULL DEFAULT './logs', + pidfile VARCHAR(256) NOT NULL DEFAULT './icecast.pid', + webroot VARCHAR(256) NOT NULL DEFAULT './web', + adminroot VARCHAR(256) NOT NULL DEFAULT './admin', + allow_ip VARCHAR(256) NOT NULL DEFAULT '/path/to/ip_allowlist', + deny_ip VARCHAR(256) NOT NULL DEFAULT '/path_to_ip_denylist', + --real name is alias but alias is reserved in ruby + aliass VARCHAR(256) DEFAULT 'source="/foo" dest="/bar"', created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP @@ -269,9 +272,9 @@ create table icecast_paths ( create table icecast_loggings ( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), - accesslog CHARACTER NOT NULL DEFAULT 'access.log', - errorlog CHARACTER NOT NULL DEFAULT 'error.log', - playlistlog CHARACTER NOT NULL DEFAULT 'playlist.log', + accesslog VARCHAR(256) NOT NULL DEFAULT 'access.log', + errorlog VARCHAR(256) NOT NULL DEFAULT 'error.log', + playlistlog VARCHAR(256) NOT NULL DEFAULT 'playlist.log', -- 4 Debug, 3 Info, 2 Warn, 1 Error loglevel INTEGER NOT NULL DEFAULT 4 , @@ -280,12 +283,12 @@ create table icecast_loggings ( ); -create table icecast_securitys ( +create table icecast_securities ( id VARCHAR(64) PRIMARY KEY NOT NULL DEFAULT uuid_generate_v4(), chroot INTEGER NOT NULL DEFAULT 0, - changeowner_user CHARACTER DEFAULT 'nobody', - changeowner_group CHARACTER DEFAULT 'nogroup', + changeowner_user VARCHAR(64) DEFAULT 'nobody', + changeowner_group VARCHAR(64) DEFAULT 'nogroup', created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP