Location: /
The Flask Debug Toolbar has intercepted a redirect to the above URL for
debug viewing purposes. You can click the above link to continue with the
redirect as normal. If you'd like to disable this feature, you can set the
config variable DEBUG_TB_INTERCEPT_REDIRECTS
to False
.
Installation paths relative to:
/opt/osp/venv/lib/python3.9/site-packages
Package | Version | Installed Path |
---|---|---|
aiohttp | 3.8.1 | |
aiosignal | 1.3.1 | |
alembic | 1.8.0 | |
amqp | 5.1.1 | |
aniso8601 | 7.0.0 | |
async-timeout | 4.0.3 | |
attrs | 23.1.0 | |
Authlib | 0.14.1 | |
Babel | 2.9.1 | |
bidict | 0.21.4 | |
billiard | 3.6.4.0 | |
bleach | 3.3.0 | |
blinker | 1.6.2 | |
cachelib | 0.9.0 | |
celery | 5.2.7 | |
certifi | 2023.7.22 | |
cffi | 1.15.1 | |
cfgv | 3.4.0 | |
charset-normalizer | 2.1.1 | |
click | 8.1.3 | |
click-didyoumean | 0.3.0 | |
click-plugins | 1.1.1 | |
click-repl | 0.3.0 | |
cryptography | 41.0.3 | |
Deprecated | 1.2.14 | |
distlib | 0.3.7 | |
dnspython | 2.4.2 | |
email-validator | 1.1.3 | |
ffmpeg-python | 0.2.0 | |
filelock | 3.12.2 | |
Flask | 2.1.2 | |
Flask-Babel | 2.0.0 | |
Flask-Caching | 2.0.2 | |
Flask-Cors | 3.0.10 | |
Flask-DebugToolbar | 0.13.1 | |
Flask-Limiter | 1.1.0 | |
Flask-Login | 0.6.2 | |
Flask-Mail | 0.9.1 | |
Flask-Markdown | 0.3 | |
Flask-Migrate | 3.1.0 | |
Flask-Principal | 0.4.0 | |
flask-restx | 1.0.5 | |
Flask-Reuploaded | 1.3.0 | |
Flask-Script | 2.0.6 | |
Flask-Security-Too | 5.1.0 | |
Flask-Session | 0.4.0 | |
Flask-SocketIO | 5.2.0 | |
Flask-SQLAlchemy | 2.5.1 | |
Flask-WTF | 1.0.1 | |
frozenlist | 1.4.0 | |
future | 0.18.3 | |
gevent | 22.10.2 | |
gevent-websocket | 0.10.1 | |
gitdb2 | 2.0.5 | |
GitPython | 2.1.11 | |
greenlet | 2.0.2 | |
gunicorn | 20.1.0 | |
identify | 2.5.27 | |
idna | 3.4 | |
importlib-metadata | 6.8.0 | |
importlib-resources | 6.0.1 | |
itsdangerous | 2.1.2 | |
Jinja2 | 3.1.2 | |
jsonschema | 4.19.0 | |
jsonschema-specifications | 2023.7.1 | |
kombu | 5.3.1 | |
limits | 3.5.0 | |
Mako | 1.0.13 | |
Markdown | 3.4.4 | |
MarkupSafe | 2.1.1 | |
multidict | 6.0.4 | |
nodeenv | 1.8.0 | |
packaging | 23.1 | |
passlib | 1.7.4 | |
pilkit | 2.0 | |
Pillow | 9.4.0 | |
pip | 20.3.4 | |
pkg-resources | 0.0.0 | |
platformdirs | 3.10.0 | |
pre-commit | 2.19.0 | |
prompt-toolkit | 3.0.39 | |
psutil | 5.7.0 | |
psycopg2-binary | 2.8.5 | |
pycparser | 2.21 | |
PyMySQL | 0.9.3 | |
pypng | 0.20220715.0 | |
PyQRCode | 1.2.1 | |
python-dateutil | 2.8.0 | |
python-dotenv | 0.20.0 | |
python-editor | 1.0.4 | |
python-engineio | 4.3.1 | |
python-socketio | 5.0.2 | |
pytz | 2022.1 | |
PyYAML | 6.0.1 | |
qrcode | 7.4.2 | |
redis | 4.3.3 | |
referencing | 0.30.2 | |
requests | 2.28.2 | |
rpds-py | 0.9.2 | |
sentry-sdk | 1.12.1 | |
setuptools | 44.1.1 | |
six | 1.16.0 | |
smmap2 | 2.0.5 | |
speaklater | 1.3 | |
SQLAlchemy | 1.4.37 | |
toml | 0.10.2 | |
typing-extensions | 4.7.1 | |
urllib3 | 1.26.16 | |
vine | 5.0.0 | |
virtualenv | 20.24.3 | |
wcwidth | 0.2.6 | |
webencodings | 0.5.1 | |
Werkzeug | 2.1.2 | |
wheel | 0.41.1 | |
wrapt | 1.15.0 | |
WTForms | 3.0.1 | |
xmltodict | 0.13.0 | |
yarl | 1.9.2 | |
zipp | 3.16.2 | |
zope.event | 5.0 | |
zope.interface | 6.0 |
Resource | Value |
---|---|
User CPU time | 21.590 msec |
System CPU time | 0.000 msec |
Total CPU time | 21.590 msec |
Elapsed time | 58.694 msec |
Context switches | 16 voluntary, 0 involuntary |
Key | Value |
---|---|
HTTP_ACCEPT | text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 |
HTTP_ACCEPT_ENCODING | br,gzip |
HTTP_ACCEPT_LANGUAGE | en-US,en;q=0.5 |
HTTP_CONNECTION | close |
HTTP_HOST | bufr.zone:443 |
HTTP_USER_AGENT | CCBot/2.0 (https://commoncrawl.org/faq/) |
QUERY_STRING | |
REMOTE_ADDR | 34.204.181.91 |
REQUEST_METHOD | GET |
SCRIPT_NAME | |
SERVER_NAME | server |
SERVER_PORT | 5005 |
SERVER_PROTOCOL | HTTP/1.0 |
SERVER_SOFTWARE | gevent/22.10.2 gunicorn/20.1.0 |
View Function | args | kwargs |
---|---|---|
blueprints.play.view_vid_page | [] | videoID=3 |
Variable | Value |
---|
Variable | Value |
---|---|
'_permanent' | True |
'_fresh' | False |
'guestUUID' | '27b95d17-f3dd-4e89-aee3-0dc28497b9b2' |
'_flashes' | [('error', 'No Such Channel')] |
Variable | Value |
---|
Variable | Value |
---|
Key | Value |
---|---|
APPLICATION_ROOT | '/' |
BABEL_DEFAULT_LOCALE | 'en' |
BABEL_DEFAULT_TIMEZONE | 'UTC' |
BABEL_DOMAIN | 'messages' |
broker_url | 'redis://localhost:6379' |
DEBUG | True |
DEBUG_TB_ENABLED | True |
DEBUG_TB_HOSTS | () |
DEBUG_TB_INTERCEPT_REDIRECTS | True |
DEBUG_TB_PANELS | ('flask_debugtoolbar.panels.versions.VersionDebugPanel', 'flask_debugtoolbar.panels.timer.TimerDebugPanel', 'flask_debugtoolbar.panels.headers.HeaderDebugPanel', 'flask_debugtoolbar.panels.request_vars.RequestVarsDebugPanel', 'flask_debugtoolbar.panels.config_vars.ConfigVarsDebugPanel', 'flask_debugtoolbar.panels.template.TemplateDebugPanel', 'flask_debugtoolbar.panels.sqlalchemy.SQLAlchemyDebugPanel', 'flask_debugtoolbar.panels.logger.LoggingPanel', 'flask_debugtoolbar.panels.route_list.RouteListDebugPanel', 'flask_debugtoolbar.panels.profiler.ProfilerDebugPanel', 'flask_debugtoolbar.panels.g.GDebugPanel') |
ENV | 'production' |
EXPLAIN_TEMPLATE_LOADING | False |
JSON_AS_ASCII | True |
JSON_SORT_KEYS | True |
JSONIFY_MIMETYPE | 'application/json' |
JSONIFY_PRETTYPRINT_REGULAR | False |
MAIL_DEFAULT_SENDER | 'info@bufr.zone' |
MAIL_PASSWORD | 'ykxggnsgfqzkzyho' |
MAIL_PORT | 465 |
MAIL_SERVER | 'smtp.gmail.com' |
MAIL_USE_SSL | True |
MAIL_USE_TLS | False |
MAIL_USERNAME | 'nfxus@bufr.zone' |
MAX_CONTENT_LENGTH | 4000000000 |
MAX_COOKIE_SIZE | 4093 |
MYSQL_DATABASE_CHARSET | 'utf8' |
PERMANENT_SESSION_LIFETIME | datetime.timedelta(days=31) |
PREFERRED_URL_SCHEME | 'http' |
PRESERVE_CONTEXT_ON_EXCEPTION | None |
PROPAGATE_EXCEPTIONS | None |
RATELIMIT_ENABLED | True |
RATELIMIT_HEADER_LIMIT | 'X-RateLimit-Limit' |
RATELIMIT_HEADER_REMAINING | 'X-RateLimit-Remaining' |
RATELIMIT_HEADER_RESET | 'X-RateLimit-Reset' |
RATELIMIT_HEADER_RETRY_AFTER | 'Retry-After' |
RATELIMIT_HEADERS_ENABLED | False |
RATELIMIT_STORAGE_URL | 'redis://localhost:6379' |
RATELIMIT_STRATEGY | 'fixed-window' |
RATELIMIT_SWALLOW_ERRORS | False |
RECAPTCHA_PRIVATE_KEY | '6LeGrb0nAAAAANTT9DM_OhtXNhU8omJOIzoSraFh' |
RECAPTCHA_PUBLIC_KEY | '6LeGrb0nAAAAAHODTbfIGih7sCe1RFLDXoE_vhEJ' |
RESTX_INCLUDE_ALL_MODELS | False |
RESTX_MASK_HEADER | 'X-Fields' |
RESTX_MASK_SWAGGER | True |
result_backend | 'redis://localhost:6379' |
SECRET_KEY | 'BjUwLD^uh3kdvpeEJwUS25g9%5nDdkD^u9$4YLR5o6abvxxmnSph&sR$!vjSUt$SBvmfe4eMUsNkL8fX#e*aZ3FMWHe!YJo%Vd&#N67qnKUYe6mnj9tMg4QJxwCS$' |
SECURITY_API_ENABLED_METHODS | ['session', 'token'] |
SECURITY_AUTO_LOGIN_AFTER_CONFIRM | True |
SECURITY_BACKWARDS_COMPAT_AUTH_TOKEN | False |
SECURITY_BACKWARDS_COMPAT_UNAUTHN | False |
SECURITY_BLUEPRINT_NAME | 'security' |
SECURITY_CHANGABLE | True |
SECURITY_CHANGE_PASSWORD_TEMPLATE | 'security/change_password.html' |
SECURITY_CHANGE_SALT | 'change-salt' |
SECURITY_CHANGE_URL | '/change' |
SECURITY_CHANGEABLE | False |
SECURITY_CLI_ROLES_NAME | 'roles' |
SECURITY_CLI_USERS_NAME | 'users' |
SECURITY_CONFIRM_EMAIL_WITHIN | '5 days' |
SECURITY_CONFIRM_ERROR_VIEW | None |
SECURITY_CONFIRM_SALT | 'confirm-salt' |
SECURITY_CONFIRM_URL | '/confirm' |
SECURITY_CONFIRMABLE | True |
SECURITY_CSRF_COOKIE | {'samesite': 'Strict', 'httponly': False, 'secure': False} |
SECURITY_CSRF_COOKIE_NAME | None |
SECURITY_CSRF_COOKIE_REFRESH_EACH_REQUEST | False |
SECURITY_CSRF_HEADER | 'X-XSRF-Token' |
SECURITY_CSRF_IGNORE_UNAUTH_ENDPOINTS | False |
SECURITY_CSRF_PROTECT_MECHANISMS | ('basic', 'session', 'token') |
SECURITY_DATETIME_FACTORY | <built-in method utcnow of type object at 0x929f20> |
SECURITY_DEFAULT_HTTP_AUTH_REALM | 'Login Required' |
SECURITY_DEFAULT_REMEMBER_ME | False |
SECURITY_DEPRECATED_HASHING_SCHEMES | ['hex_md5'] |
SECURITY_DEPRECATED_PASSWORD_SCHEMES | ['auto'] |
SECURITY_EMAIL_HTML | True |
SECURITY_EMAIL_PLAINTEXT | True |
SECURITY_EMAIL_SENDER | 'info@bufr.zone' |
SECURITY_EMAIL_SUBJECT_CONFIRM | 'BUFR ZONE - Email Confirmation Request' |
SECURITY_EMAIL_SUBJECT_PASSWORD_CHANGE_NOTICE | 'Your password has been changed' |
SECURITY_EMAIL_SUBJECT_PASSWORD_NOTICE | 'BUFR ZONE - Password Reset Notification' |
SECURITY_EMAIL_SUBJECT_PASSWORD_RESET | 'BUFR ZONE - Password Reset Request' |
SECURITY_EMAIL_SUBJECT_PASSWORDLESS | 'Login instructions' |
SECURITY_EMAIL_SUBJECT_REGISTER | 'BUFR ZONE - Welcome!' |
SECURITY_EMAIL_SUBJECT_TWO_FACTOR | 'Two-factor Login' |
SECURITY_EMAIL_SUBJECT_TWO_FACTOR_RESCUE | 'Two-factor Rescue' |
SECURITY_EMAIL_VALIDATOR_ARGS | None |
SECURITY_FLASH_MESSAGES | True |
SECURITY_FORGOT_PASSWORD_TEMPLATE | 'security/forgot_password.html' |
SECURITY_FRESHNESS | datetime.timedelta(days=1) |
SECURITY_FRESHNESS_GRACE_PERIOD | datetime.timedelta(seconds=3600) |
SECURITY_HASHING_SCHEMES | ['sha256_crypt', 'hex_md5'] |
SECURITY_I18N_DIRNAME | '/opt/osp/venv/lib/python3.9/site-packages/flask_security/translations' |
SECURITY_I18N_DOMAIN | 'flask_security' |
SECURITY_JOIN_USER_ROLES | True |
SECURITY_LOGIN_ERROR_VIEW | None |
SECURITY_LOGIN_SALT | 'login-salt' |
SECURITY_LOGIN_URL | '/login' |
SECURITY_LOGIN_USER_TEMPLATE | 'security/login_user.html' |
SECURITY_LOGIN_WITHIN | '1 days' |
SECURITY_LOGIN_WITHOUT_CONFIRMATION | False |
SECURITY_LOGOUT_METHODS | ['GET', 'POST'] |
SECURITY_LOGOUT_URL | '/logout' |
SECURITY_MSG_ALREADY_CONFIRMED | ('Your email has already been confirmed.', 'info') |
SECURITY_MSG_ANONYMOUS_USER_REQUIRED | ('You can only access this endpoint when not logged in.', 'error') |
SECURITY_MSG_API_ERROR | ('Input not appropriate for requested API', 'error') |
SECURITY_MSG_CODE_HAS_BEEN_SENT | ('Code has been sent.', 'info') |
SECURITY_MSG_CONFIRM_REGISTRATION | ('Thank you. Confirmation instructions have been sent to %(email)s.', 'success') |
SECURITY_MSG_CONFIRMATION_EXPIRED | ('You did not confirm your email within %(within)s. New instructions to confirm your email have been sent to %(email)s.', 'error') |
SECURITY_MSG_CONFIRMATION_REQUEST | ('Confirmation instructions have been sent to %(email)s.', 'info') |
SECURITY_MSG_CONFIRMATION_REQUIRED | ('Email requires confirmation.', 'error') |
SECURITY_MSG_DISABLED_ACCOUNT | ('Account Disabled', 'error') |
SECURITY_MSG_EMAIL_ALREADY_ASSOCIATED | ('Username or Email Already Associated with an Account', 'error') |
SECURITY_MSG_EMAIL_CONFIRMED | ('Thank you. Your email has been confirmed.', 'success') |
SECURITY_MSG_EMAIL_NOT_PROVIDED | ('Email not provided', 'error') |
SECURITY_MSG_FAILED_TO_SEND_CODE | ('Failed to send code. Please try again later', 'error') |
SECURITY_MSG_FORGOT_PASSWORD | ('Forgot password?', 'info') |
SECURITY_MSG_GENERIC_AUTHN_FAILED | ('Authentication failed - identity or password/passcode invalid', 'error') |
SECURITY_MSG_GENERIC_RECOVERY | ('If that email address is in our system, you will receive an email describing how to reset your password.', 'info') |
SECURITY_MSG_GENERIC_US_SIGNIN | ('If that identity is in our system, you were sent a code.', 'info') |
SECURITY_MSG_IDENTITY_ALREADY_ASSOCIATED | ("Identity attribute '%(attr)s' with value '%(value)s' is already associated with an account.", 'error') |
SECURITY_MSG_IDENTITY_NOT_REGISTERED | ('Identity %(id)s not registered', 'error') |
SECURITY_MSG_INVALID_CODE | ('Invalid code', 'error') |
SECURITY_MSG_INVALID_CONFIRMATION_TOKEN | ('Invalid confirmation token.', 'error') |
SECURITY_MSG_INVALID_EMAIL_ADDRESS | ('Invalid Username or Password', 'error') |
SECURITY_MSG_INVALID_LOGIN_TOKEN | ('Invalid login token.', 'error') |
SECURITY_MSG_INVALID_PASSWORD | ('Invalid Username or Password', 'error') |
SECURITY_MSG_INVALID_PASSWORD_CODE | ('Password or code submitted is not valid', 'error') |
SECURITY_MSG_INVALID_RECOVERY_CODE | ('Recovery code invalid', 'error') |
SECURITY_MSG_INVALID_REDIRECT | ('Redirections outside the domain are forbidden', 'error') |
SECURITY_MSG_INVALID_RESET_PASSWORD_TOKEN | ('Invalid reset password token.', 'error') |
SECURITY_MSG_LOGIN | ('Please log in to access this page.', 'info') |
SECURITY_MSG_LOGIN_EMAIL_SENT | ('Instructions to login have been sent to %(email)s.', 'success') |
SECURITY_MSG_LOGIN_EXPIRED | ('You did not login within %(within)s. New instructions to login have been sent to %(email)s.', 'error') |
SECURITY_MSG_NO_RECOVERY_CODES_SETUP | ('No recovery codes generated yet', 'info') |
SECURITY_MSG_OAUTH_HANDSHAKE_ERROR | ('An error occurred while communicating with the Oauth provider. Please try again.', 'error') |
SECURITY_MSG_PASSWORD_BREACHED | ('Password on breached list', 'error') |
SECURITY_MSG_PASSWORD_BREACHED_SITE_ERROR | ('Failed to contact breached passwords site', 'error') |
SECURITY_MSG_PASSWORD_CHANGE | ('You successfully changed your password.', 'success') |
SECURITY_MSG_PASSWORD_INVALID_LENGTH | ('Password must be at least %(length)s characters', 'error') |
SECURITY_MSG_PASSWORD_IS_THE_SAME | ('Your new password must be different than your previous password.', 'error') |
SECURITY_MSG_PASSWORD_MISMATCH | ('Password does not match', 'error') |
SECURITY_MSG_PASSWORD_NOT_PROVIDED | ('Password not provided', 'error') |
SECURITY_MSG_PASSWORD_RESET | ('You successfully reset your password and you have been logged in automatically.', 'success') |
SECURITY_MSG_PASSWORD_RESET_EXPIRED | ('You did not reset your password within %(within)s. New instructions have been sent to %(email)s.', 'error') |
SECURITY_MSG_PASSWORD_RESET_REQUEST | ('Instructions to reset your password have been sent to %(email)s.', 'info') |
SECURITY_MSG_PASSWORD_TOO_SIMPLE | ('Password not complex enough', 'error') |
SECURITY_MSG_PASSWORDLESS_LOGIN_SUCCESSFUL | ('You have successfully logged in.', 'success') |
SECURITY_MSG_PHONE_INVALID | ('Phone number not valid e.g. missing country code', 'error') |
SECURITY_MSG_REAUTHENTICATION_REQUIRED | ('You must re-authenticate to access this endpoint', 'error') |
SECURITY_MSG_REAUTHENTICATION_SUCCESSFUL | ('Reauthentication successful', 'info') |
SECURITY_MSG_REFRESH | ('Please reauthenticate to access this page.', 'info') |
SECURITY_MSG_RETYPE_PASSWORD_MISMATCH | ('Passwords do not match', 'error') |
SECURITY_MSG_TWO_FACTOR_CHANGE_METHOD_SUCCESSFUL | ('You successfully changed your two-factor method.', 'success') |
SECURITY_MSG_TWO_FACTOR_DISABLED | ('You successfully disabled two factor authorization.', 'success') |
SECURITY_MSG_TWO_FACTOR_INVALID_TOKEN | ('Invalid code', 'error') |
SECURITY_MSG_TWO_FACTOR_LOGIN_SUCCESSFUL | ('Your code has been confirmed', 'success') |
SECURITY_MSG_TWO_FACTOR_METHOD_NOT_AVAILABLE | ('Marked method is not valid', 'error') |
SECURITY_MSG_TWO_FACTOR_PERMISSION_DENIED | ('You currently do not have permissions to access this page', 'error') |
SECURITY_MSG_UNAUTHENTICATED | ('You are not authenticated. Please supply the correct credentials.', 'error') |
SECURITY_MSG_UNAUTHORIZED | ('You do not have permission to view this resource.', 'error') |
SECURITY_MSG_US_METHOD_NOT_AVAILABLE | ('Requested method is not valid', 'error') |
SECURITY_MSG_US_SETUP_EXPIRED | ('Setup must be completed within %(within)s. Please start over.', 'error') |
SECURITY_MSG_US_SETUP_SUCCESSFUL | ('Unified sign in setup successful', 'info') |
SECURITY_MSG_US_SPECIFY_IDENTITY | ('You must specify a valid identity to sign in', 'error') |
SECURITY_MSG_USE_CODE | ('Use this code to sign in: %(code)s.', 'info') |
SECURITY_MSG_USER_DOES_NOT_EXIST | ('Invalid Username or Password', 'error') |
SECURITY_MSG_USERNAME_ALREADY_ASSOCIATED | ('%(username)s is already associated with an account.', 'error') |
SECURITY_MSG_USERNAME_DISALLOWED_CHARACTERS | ('Username can contain only letters and numbers', 'error') |
SECURITY_MSG_USERNAME_ILLEGAL_CHARACTERS | ('Username contains illegal characters', 'error') |
SECURITY_MSG_USERNAME_INVALID_LENGTH | ('Username must be at least %(min)d characters and less than %(max)d characters', 'error') |
SECURITY_MSG_USERNAME_NOT_PROVIDED | ('Username not provided', 'error') |
SECURITY_MSG_WEBAUTHN_CREDENTIAL_DELETED | ('Successfully deleted WebAuthn credential with name: %(name)s', 'info') |
SECURITY_MSG_WEBAUTHN_CREDENTIAL_ID_INUSE | ('WebAuthn credential id already registered.', 'error') |
SECURITY_MSG_WEBAUTHN_CREDENTIAL_WRONG_USAGE | ('Credential not registered for this use (first or secondary)', 'error') |
SECURITY_MSG_WEBAUTHN_EXPIRED | ('WebAuthn operation must be completed within %(within)s. Please start over.', 'error') |
SECURITY_MSG_WEBAUTHN_MISMATCH_USER_HANDLE | ("Credential user handle didn't match", 'error') |
SECURITY_MSG_WEBAUTHN_NAME_INUSE | ('%(name)s is already associated with a credential.', 'error') |
SECURITY_MSG_WEBAUTHN_NAME_NOT_FOUND | ('%(name)s not registered with current user.', 'error') |
SECURITY_MSG_WEBAUTHN_NAME_REQUIRED | ('Nickname for new credential is required.', 'error') |
SECURITY_MSG_WEBAUTHN_NO_VERIFY | ('Could not verify WebAuthn credential: %(cause)s.', 'error') |
SECURITY_MSG_WEBAUTHN_ORPHAN_CREDENTIAL_ID | ("WebAuthn credential doesn't belong to any user.", 'error') |
SECURITY_MSG_WEBAUTHN_REGISTER_SUCCESSFUL | ('Successfully added WebAuthn credential with name: %(name)s', 'info') |
SECURITY_MSG_WEBAUTHN_UNKNOWN_CREDENTIAL_ID | ('Unregistered WebAuthn credential id.', 'error') |
SECURITY_MULTI_FACTOR_RECOVERY_CODE_TTL | None |
SECURITY_MULTI_FACTOR_RECOVERY_CODES | False |
SECURITY_MULTI_FACTOR_RECOVERY_CODES_KEYS | None |
SECURITY_MULTI_FACTOR_RECOVERY_CODES_N | 5 |
SECURITY_MULTI_FACTOR_RECOVERY_CODES_TEMPLATE | 'security/mf_recovery_codes.html' |
SECURITY_MULTI_FACTOR_RECOVERY_CODES_URL | '/mf-recovery-codes' |
SECURITY_MULTI_FACTOR_RECOVERY_TEMPLATE | 'security/mf_recovery.html' |
SECURITY_MULTI_FACTOR_RECOVERY_URL | '/mf-recovery' |
SECURITY_OAUTH_BUILTIN_PROVIDERS | ['github', 'google'] |
SECURITY_OAUTH_ENABLE | False |
SECURITY_OAUTH_RESPONSE_URL | '/login/oauthresponse' |
SECURITY_OAUTH_START_URL | '/login/oauthstart' |
SECURITY_PASSWORD_BREACHED_COUNT | 1 |
SECURITY_PASSWORD_CHECK_BREACHED | False |
SECURITY_PASSWORD_COMPLEXITY_CHECKER | None |
SECURITY_PASSWORD_HASH | 'pbkdf2_sha512' |
SECURITY_PASSWORD_HASH_OPTIONS | {} |
SECURITY_PASSWORD_HASH_PASSLIB_OPTIONS | {'argon2__rounds': 10} |
SECURITY_PASSWORD_LENGTH_MIN | 8 |
SECURITY_PASSWORD_NORMALIZE_FORM | 'NFKD' |
SECURITY_PASSWORD_REQUIRED | True |
SECURITY_PASSWORD_SALT | 'C25mwDG8fiS%$aBw$vRK&y$gYrr^9Pm5!GoRd8hyejBFu9GzNTCToJW&%$EgDCSjH!xWvy7PWkSmx*U%AFL5PGk&8^4B#S2$ZZkzP9qXmAWzdT#qYfB8tEj4U7Jbr' |
SECURITY_PASSWORD_SCHEMES | ['bcrypt', 'argon2', 'des_crypt', 'pbkdf2_sha256', 'pbkdf2_sha512', 'sha256_crypt', 'sha512_crypt', 'plaintext'] |
SECURITY_PASSWORD_SINGLE_HASH | {'django_bcrypt_sha256', 'plaintext', 'django_salted_sha1', 'django_pbkdf2_sha1', 'django_bcrypt', 'django_argon2', 'django_des_crypt', 'django_pbkdf2_sha256', 'django_salted_md5'} |
SECURITY_PASSWORDLESS | False |
SECURITY_PHONE_REGION_DEFAULT | 'US' |
SECURITY_POST_CHANGE_VIEW | None |
SECURITY_POST_CONFIRM_VIEW | None |
SECURITY_POST_LOGIN_VIEW | '/' |
SECURITY_POST_LOGOUT_VIEW | '/' |
SECURITY_POST_REGISTER_VIEW | None |
SECURITY_POST_RESET_VIEW | None |
SECURITY_POST_VERIFY_VIEW | None |
SECURITY_RECOVERABLE | True |
SECURITY_REDIRECT_ALLOW_SUBDOMAINS | False |
SECURITY_REDIRECT_BEHAVIOR | None |
SECURITY_REDIRECT_HOST | None |
SECURITY_REDIRECT_VALIDATE_MODE | None |
SECURITY_REDIRECT_VALIDATE_RE | '^/{4,}|\\\\{3,}|[\\s\\000-\\037][/\\\\]{2,}' |
SECURITY_REGISTER_URL | '/register' |
SECURITY_REGISTER_USER_TEMPLATE | 'security/register_user.html' |
SECURITY_REGISTERABLE | True |
SECURITY_REMEMBER_SALT | 'remember-salt' |
SECURITY_REQUIRES_CONFIRMATION_ERROR_VIEW | None |
SECURITY_RESET_ERROR_VIEW | None |
SECURITY_RESET_PASSWORD_TEMPLATE | 'security/reset_password.html' |
SECURITY_RESET_PASSWORD_WITHIN | '5 days' |
SECURITY_RESET_SALT | 'reset-salt' |
SECURITY_RESET_URL | '/reset' |
SECURITY_RESET_VIEW | None |
SECURITY_RETURN_GENERIC_RESPONSES | False |
SECURITY_SEND_CONFIRMATION_TEMPLATE | 'security/send_confirmation.html' |
SECURITY_SEND_LOGIN_TEMPLATE | 'security/send_login.html' |
SECURITY_SEND_PASSWORD_CHANGE_EMAIL | True |
SECURITY_SEND_PASSWORD_RESET_EMAIL | True |
SECURITY_SEND_PASSWORD_RESET_NOTICE_EMAIL | True |
SECURITY_SEND_REGISTER_EMAIL | True |
SECURITY_SMS_SERVICE | 'Dummy' |
SECURITY_SMS_SERVICE_CONFIG | {'ACCOUNT_SID': None, 'AUTH_TOKEN': None, 'PHONE_NUMBER': None} |
SECURITY_STATIC_FOLDER | 'static' |
SECURITY_STATIC_FOLDER_URL | '/fs-static' |
SECURITY_SUBDOMAIN | None |
SECURITY_TOKEN_AUTHENTICATION_HEADER | 'Authentication-Token' |
SECURITY_TOKEN_AUTHENTICATION_KEY | 'auth_token' |
SECURITY_TOKEN_MAX_AGE | None |
SECURITY_TOTP_ISSUER | 'BUFR ZONE' |
SECURITY_TOTP_SECRETS | {'1': 'BjUwLD^uh3kdvpeEJwUS25g9%5nDdkD^u9$4YLR5o6abvxxmnSph&sR$!vjSUt$SBvmfe4eMUsNkL8fX#e*aZ3FMWHe!YJo%Vd&#N67qnKUYe6mnj9tMg4QJxwCS$'} |
SECURITY_TRACKABLE | True |
SECURITY_TWO_FACTOR | True |
SECURITY_TWO_FACTOR_ALWAYS_VALIDATE | False |
SECURITY_TWO_FACTOR_AUTHENTICATOR_VALIDITY | 120 |
SECURITY_TWO_FACTOR_ENABLED_METHODS | ['authenticator'] |
SECURITY_TWO_FACTOR_ERROR_VIEW | '.login' |
SECURITY_TWO_FACTOR_IMPLEMENTATIONS | {'code': 'flask_security.twofactor.CodeTfPlugin', 'webauthn': 'flask_security.webauthn.WebAuthnTfPlugin'} |
SECURITY_TWO_FACTOR_LOGIN_VALIDITY | '7 days' |
SECURITY_TWO_FACTOR_MAIL_VALIDITY | 300 |
SECURITY_TWO_FACTOR_POST_SETUP_VIEW | '.two_factor_setup' |
SECURITY_TWO_FACTOR_REQUIRED | False |
SECURITY_TWO_FACTOR_RESCUE_EMAIL | True |
SECURITY_TWO_FACTOR_RESCUE_MAIL | 'no-reply@localhost' |
SECURITY_TWO_FACTOR_RESCUE_URL | '/tf-rescue' |
SECURITY_TWO_FACTOR_SECRET | None |
SECURITY_TWO_FACTOR_SELECT_TEMPLATE | 'security/two_factor_select.html' |
SECURITY_TWO_FACTOR_SELECT_URL | '/tf-select' |
SECURITY_TWO_FACTOR_SETUP_TEMPLATE | 'security/two_factor_setup.html' |
SECURITY_TWO_FACTOR_SETUP_URL | '/tf-setup' |
SECURITY_TWO_FACTOR_SMS_SERVICE | 'Dummy' |
SECURITY_TWO_FACTOR_SMS_SERVICE_CONFIG | {'ACCOUNT_SID': None, 'AUTH_TOKEN': None, 'PHONE_NUMBER': None} |
SECURITY_TWO_FACTOR_SMS_VALIDITY | 120 |
SECURITY_TWO_FACTOR_TOKEN_VALIDATION_URL | '/tf-validate' |
SECURITY_TWO_FACTOR_URI_SERVICE_NAME | 'service_name' |
SECURITY_TWO_FACTOR_VALIDITY_COOKIE | {'httponly': True, 'secure': False, 'samesite': 'Strict'} |
SECURITY_TWO_FACTOR_VALIDITY_SALT | 'tf-validity-salt' |
SECURITY_TWO_FACTOR_VERIFY_CODE_TEMPLATE | 'security/two_factor_verify_code.html' |
SECURITY_UNAUTHORIZED_VIEW | None |
SECURITY_UNIFIED_SIGNIN | False |
SECURITY_URL_PREFIX | None |
SECURITY_US_EMAIL_SUBJECT | 'Verification Code' |
SECURITY_US_ENABLED_METHODS | ['password', 'email', 'authenticator', 'sms'] |
SECURITY_US_MFA_REQUIRED | ['password', 'email'] |
SECURITY_US_POST_SETUP_VIEW | '.us_setup' |
SECURITY_US_SETUP_SALT | 'us-setup-salt' |
SECURITY_US_SETUP_TEMPLATE | 'security/us_setup.html' |
SECURITY_US_SETUP_URL | '/us-setup' |
SECURITY_US_SETUP_WITHIN | '30 minutes' |
SECURITY_US_SIGNIN_REPLACES_LOGIN | False |
SECURITY_US_SIGNIN_SEND_CODE_URL | '/us-signin/send-code' |
SECURITY_US_SIGNIN_TEMPLATE | 'security/us_signin.html' |
SECURITY_US_SIGNIN_URL | '/us-signin' |
SECURITY_US_TOKEN_VALIDITY | 120 |
SECURITY_US_VERIFY_LINK_URL | '/us-verify-link' |
SECURITY_US_VERIFY_SEND_CODE_URL | '/us-verify/send-code' |
SECURITY_US_VERIFY_TEMPLATE | 'security/us_verify.html' |
SECURITY_US_VERIFY_URL | '/us-verify' |
SECURITY_USER_IDENTITY_ATTRIBUTES | [{'email': {'mapper': <function uia_email_mapper at 0x7fef47358280>, 'case_insensitive': True}}] |
SECURITY_USERNAME_ENABLE | False |
SECURITY_USERNAME_MAX_LENGTH | 32 |
SECURITY_USERNAME_MIN_LENGTH | 4 |
SECURITY_USERNAME_NORMALIZE_FORM | 'NFKD' |
SECURITY_USERNAME_REQUIRED | False |
SECURITY_VERIFY_TEMPLATE | 'security/verify.html' |
SECURITY_VERIFY_URL | '/verify' |
SECURITY_WAN_ALLOW_AS_FIRST_FACTOR | True |
SECURITY_WAN_ALLOW_AS_MULTI_FACTOR | True |
SECURITY_WAN_ALLOW_AS_VERIFY | ['first', 'secondary'] |
SECURITY_WAN_ALLOW_USER_HINTS | True |
SECURITY_WAN_CHALLENGE_BYTES | None |
SECURITY_WAN_DELETE_URL | '/wan-delete' |
SECURITY_WAN_POST_REGISTER_VIEW | '.wan_register' |
SECURITY_WAN_REGISTER_TEMPLATE | 'security/wan_register.html' |
SECURITY_WAN_REGISTER_TIMEOUT | 60000 |
SECURITY_WAN_REGISTER_URL | '/wan-register' |
SECURITY_WAN_REGISTER_WITHIN | '30 minutes' |
SECURITY_WAN_RP_NAME | 'My Flask App' |
SECURITY_WAN_SALT | 'wan-salt' |
SECURITY_WAN_SIGNIN_TEMPLATE | 'security/wan_signin.html' |
SECURITY_WAN_SIGNIN_TIMEOUT | 60000 |
SECURITY_WAN_SIGNIN_URL | '/wan-signin' |
SECURITY_WAN_SIGNIN_WITHIN | '1 minutes' |
SECURITY_WAN_VERIFY_TEMPLATE | 'security/wan_verify.html' |
SECURITY_WAN_VERIFY_URL | '/wan-verify' |
SECURITY_WEBAUTHN | False |
SECURITY_ZXCVBN_MINIMUM_SCORE | 3 |
SEND_FILE_MAX_AGE_DEFAULT | None |
SERVER_NAME | None |
SESSION_COOKIE_DOMAIN | False |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'ospSession' |
SESSION_COOKIE_PATH | None |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | False |
SESSION_REDIS | Redis<ConnectionPool<Connection<host=localhost,port=6379,db=0>>> |
SESSION_REFRESH_EACH_REQUEST | True |
SESSION_TYPE | 'redis' |
SQLALCHEMY_BINDS | None |
SQLALCHEMY_COMMIT_ON_TEARDOWN | False |
SQLALCHEMY_DATABASE_URI | 'mysql+pymysql://rdbu:W3G0tAcc355@localhost/bufrstreaming?charset=utf8mb4' |
SQLALCHEMY_ECHO | False |
SQLALCHEMY_ENGINE_OPTIONS | {'encoding': 'utf8', 'pool_use_lifo': 'False', 'pool_size': 10, 'pool_pre_ping': True} |
SQLALCHEMY_MAX_OVERFLOW | -1 |
SQLALCHEMY_NATIVE_UNICODE | None |
SQLALCHEMY_POOL_RECYCLE | 300 |
SQLALCHEMY_POOL_SIZE | None |
SQLALCHEMY_POOL_TIMEOUT | 600 |
SQLALCHEMY_RECORD_QUERIES | None |
SQLALCHEMY_TRACK_MODIFICATIONS | False |
TEMPLATES_AUTO_RELOAD | None |
TESTING | False |
TRAP_BAD_REQUEST_ERRORS | None |
TRAP_HTTP_EXCEPTIONS | False |
UPLOADED_DEFAULT_DEST | '/var/www/images' |
UPLOADED_PHOTOS_DEST | '/var/www/images' |
UPLOADED_STICKERS_DEST | '/var/www/images' |
USE_X_SENDFILE | False |
VIDEO_UPLOAD_EXTENSIONS | ['PNG', 'MP4'] |
VIDEO_UPLOAD_TEMPFOLDER | '/var/www/videos/temp' |
WEB_ROOT | '/var/www/' |
No template rendered
(ms) | Action | Context | Query |
---|---|---|---|
0.5577 |
SELECT EXPLAIN |
./app.py:858 (do_before_request) |
SELECT ip_list.id AS ip_list_id, ip_list.`ipAddress` AS `ip_list_ipAddress`, ip_list.reason AS ip_list_reason
FROM ip_list
WHERE ip_list.`ipAddress` = %(ipAddress_1)s
LIMIT %(param_1)s
|
6.1126 |
SELECT EXPLAIN |
./app.py:866 (do_before_request) |
SELECT `Guest`.id AS `Guest_id`, `Guest`.`UUID` AS `Guest_UUID`, `Guest`.last_active_at AS `Guest_last_active_at`, `Guest`.last_active_ip AS `Guest_last_active_ip`
FROM `Guest`
WHERE `Guest`.`UUID` = %(UUID_1)s
LIMIT %(param_1)s
|
5.8627 |
SELECT EXPLAIN |
./app.py:875 (do_before_request) |
SELECT `Guest`.id AS `Guest_id`, `Guest`.`UUID` AS `Guest_UUID`, `Guest`.last_active_at AS `Guest_last_active_at`, `Guest`.last_active_ip AS `Guest_last_active_ip`
FROM `Guest`
WHERE `Guest`.last_active_ip = %(last_active_ip_1)s
LIMIT %(param_1)s
|
0.4997 | ./app.py:881 (do_before_request) |
UPDATE `Guest` SET `UUID`=%(UUID)s, last_active_at=%(last_active_at)s WHERE `Guest`.id = %(Guest_id)s
|
|
1.5705 |
SELECT EXPLAIN |
<unknown> |
SELECT settings.id AS settings_id, settings.`siteName` AS `settings_siteName`, settings.`siteProtocol` AS `settings_siteProtocol`, settings.`siteAddress` AS `settings_siteAddress`, settings.`serverTimeZone` AS `settings_serverTimeZone`, settings.`allowRecording` AS `settings_allowRecording`, settings.`allowUploads` AS `settings_allowUploads`, settings.`allowRestream` AS `settings_allowRestream`, settings.`protectionEnabled` AS `settings_protectionEnabled`, settings.`adaptiveStreaming` AS `settings_adaptiveStreaming`, settings.`showEmptyTables` AS `settings_showEmptyTables`, settings.`allowComments` AS `settings_allowComments`, settings.`systemTheme` AS `settings_systemTheme`, settings.`systemLogo` AS `settings_systemLogo`, settings.version AS settings_version, settings.`sortMainBy` AS `settings_sortMainBy`, settings.`restreamMaxBitrate` AS `settings_restreamMaxBitrate`, settings.`serverMessageTitle` AS `settings_serverMessageTitle`, settings.`serverMessage` AS `settings_serverMessage`, settings.`maxClipLength` AS `settings_maxClipLength`, settings.`limitMaxChannels` AS `settings_limitMaxChannels`, settings.`proxyFQDN` AS `settings_proxyFQDN`, settings.`maintenanceMode` AS `settings_maintenanceMode`, settings.`buildEdgeOnRestart` AS `settings_buildEdgeOnRestart`, settings.`hubUUID` AS `settings_hubUUID`, settings.`hubEnabled` AS `settings_hubEnabled`, settings.`hubURL` AS `settings_hubURL`, settings.`maxVideoRetention` AS `settings_maxVideoRetention`, settings.`webrtcPlaybackEnabled` AS `settings_webrtcPlaybackEnabled`, settings.`webrtcSignalProtocol` AS `settings_webrtcSignalProtocol`, settings.`webrtcSignalURL` AS `settings_webrtcSignalURL`
FROM settings
LIMIT %(param_1)s
|
1.1120 |
SELECT EXPLAIN |
<unknown> |
SELECT `RecordedVideo`.id AS `RecordedVideo_id`, `RecordedVideo`.uuid AS `RecordedVideo_uuid`, `RecordedVideo`.`videoDate` AS `RecordedVideo_videoDate`, `RecordedVideo`.`owningUser` AS `RecordedVideo_owningUser`, `RecordedVideo`.`channelName` AS `RecordedVideo_channelName`, `RecordedVideo`.`channelID` AS `RecordedVideo_channelID`, `RecordedVideo`.description AS `RecordedVideo_description`, `RecordedVideo`.topic AS `RecordedVideo_topic`, `RecordedVideo`.views AS `RecordedVideo_views`, `RecordedVideo`.length AS `RecordedVideo_length`, `RecordedVideo`.`videoLocation` AS `RecordedVideo_videoLocation`, `RecordedVideo`.`thumbnailLocation` AS `RecordedVideo_thumbnailLocation`, `RecordedVideo`.`gifLocation` AS `RecordedVideo_gifLocation`, `RecordedVideo`.pending AS `RecordedVideo_pending`, `RecordedVideo`.`allowComments` AS `RecordedVideo_allowComments`, `RecordedVideo`.published AS `RecordedVideo_published`, `RecordedVideo`.`originalStreamID` AS `RecordedVideo_originalStreamID`
FROM `RecordedVideo`
WHERE `RecordedVideo`.id = %(id_1)s
LIMIT %(param_1)s
|
1.6475 |
SELECT EXPLAIN |
<unknown> |
SELECT `Channel`.id AS `Channel_id`, `Channel`.`owningUser` AS `Channel_owningUser`, `Channel`.`channelName` AS `Channel_channelName`, `Channel`.`channelLoc` AS `Channel_channelLoc`, `Channel`.topic AS `Channel_topic`, `Channel`.views AS `Channel_views`, `Channel`.`currentViewers` AS `Channel_currentViewers`, `Channel`.record AS `Channel_record`, `Channel`.`chatEnabled` AS `Channel_chatEnabled`, `Channel`.`chatBG` AS `Channel_chatBG`, `Channel`.`chatTextColor` AS `Channel_chatTextColor`, `Channel`.`chatAnimation` AS `Channel_chatAnimation`, `Channel`.`imageLocation` AS `Channel_imageLocation`, `Channel`.`offlineImageLocation` AS `Channel_offlineImageLocation`, `Channel`.description AS `Channel_description`, `Channel`.`allowComments` AS `Channel_allowComments`, `Channel`.protected AS `Channel_protected`, `Channel`.`channelMuted` AS `Channel_channelMuted`, `Channel`.`showChatJoinLeaveNotification` AS `Channel_showChatJoinLeaveNotification`, `Channel`.`defaultStreamName` AS `Channel_defaultStreamName`, `Channel`.`autoPublish` AS `Channel_autoPublish`, `Channel`.`vanityURL` AS `Channel_vanityURL`, `Channel`.private AS `Channel_private`, `Channel`.`streamKey` AS `Channel_streamKey`, `Channel`.`xmppToken` AS `Channel_xmppToken`, `Channel`.`chatFormat` AS `Channel_chatFormat`, `Channel`.`chatHistory` AS `Channel_chatHistory`, `Channel`.`allowGuestNickChange` AS `Channel_allowGuestNickChange`, `Channel`.`showHome` AS `Channel_showHome`, `Channel`.`maxVideoRetention` AS `Channel_maxVideoRetention`, `Channel`.`hubEnabled` AS `Channel_hubEnabled`, `Channel`.`hubNSFW` AS `Channel_hubNSFW`
FROM `Channel`
WHERE `Channel`.id = %(id_1)s
LIMIT %(param_1)s
|
No messages logged.
URL route | Endpoint name | HTTP methods | Is alias | Redirect to |
---|---|---|---|---|
/ | root.main_page | GET, HEAD, OPTIONS | False | None |
/apiv1/ | api.doc | GET, HEAD, OPTIONS | False | None |
/apiv1/ | api.root | GET, HEAD, OPTIONS | False | None |
/apiv1/channel/ | api.channel_api_1__list_channels | GET, HEAD, OPTIONS, POST | False | None |
/apiv1/channel/<string:channelEndpointID> | api.channel_api_1__list_channel | DELETE, GET, HEAD, OPTIONS, PUT | False | None |
/apiv1/channel/<string:channelEndpointID>/invites | api.channel_api_1__invites | DELETE, GET, HEAD, OPTIONS, POST | False | None |
/apiv1/channel/<string:channelEndpointID>/restreams | api.channel_api_1__get_restreams | GET, HEAD, OPTIONS | False | None |
/apiv1/channel/<string:channelEndpointID>/streams | api.channel_api_1__streams | GET, HEAD, OPTIONS | False | None |
/apiv1/channel/activeChannels | api.channel_api_1__active_channels | GET, HEAD, OPTIONS | False | None |
/apiv1/channel/authed/ | api.channel_api_1__list_channel_authed | GET, HEAD, OPTIONS | False | None |
/apiv1/channel/hubChannels | api.channel_api_1_hub_channels | GET, HEAD, OPTIONS | False | None |
/apiv1/channel/hubChannelsLive | api.channel_api_1__active_hub_channels | GET, HEAD, OPTIONS | False | None |
/apiv1/channel/search | api.channel_api_1__search_channels | OPTIONS, POST | False | None |
/apiv1/clip/ | api.clip_api_1__list_clips | GET, HEAD, OPTIONS | False | None |
/apiv1/clip/<int:clipID> | api.clip_api_1__list_clip | DELETE, GET, HEAD, OPTIONS, PUT | False | None |
/apiv1/clip/search | api.clip_api_1__search_clips | OPTIONS, POST | False | None |
/apiv1/rtmp/playbackauth | api.rtmp_api_1_rtmp_playbackauth | OPTIONS, POST | False | None |
/apiv1/rtmp/reccheck | api.rtmp_api_1_rtmp_reccheck | OPTIONS, POST | False | None |
/apiv1/rtmp/recclose | api.rtmp_api_1_rtmp_recclose | OPTIONS, POST | False | None |
/apiv1/rtmp/stage1 | api.rtmp_api_1_rtmp_stage1 | OPTIONS, POST | False | None |
/apiv1/rtmp/stage2 | api.rtmp_api_1_rtmp_stage2 | OPTIONS, POST | False | None |
/apiv1/rtmp/streamclose | api.rtmp_api_1_rtmp_streamclose | OPTIONS, POST | False | None |
/apiv1/server/ | api.server_api_1__server | GET, HEAD, OPTIONS | False | None |
/apiv1/server/edges | api.server_api_1__edges | GET, HEAD, OPTIONS | False | None |
/apiv1/server/ping | api.server_api_1__ping | GET, HEAD, OPTIONS | False | None |
/apiv1/server/rtmp | api.server_api_1__rtmp | DELETE, GET, HEAD, OPTIONS, POST | False | None |
/apiv1/stream/ | api.stream_api_1__list_streams | GET, HEAD, OPTIONS | False | None |
/apiv1/stream/<int:streamID> | api.stream_api_1__list_stream | GET, HEAD, OPTIONS, PUT | False | None |
/apiv1/stream/search | api.stream_api_1__search_streams | OPTIONS, POST | False | None |
/apiv1/swagger.json | api.specs | GET, HEAD, OPTIONS | False | None |
/apiv1/topic/ | api.topic_api_1__list_topics | GET, HEAD, OPTIONS | False | None |
/apiv1/topic/<int:topicID> | api.topic_api_1__list_topic | GET, HEAD, OPTIONS | False | None |
/apiv1/topic/search | api.topic_api_1__search_topics | OPTIONS, POST | False | None |
/apiv1/user/ | api.user_api_1__admin_user | DELETE, GET, HEAD, OPTIONS, POST | False | None |
/apiv1/user/<string:username> | api.user_api_1__list_user | GET, HEAD, OPTIONS | False | None |
/apiv1/user/role | api.user_api_1__role_mgmt | DELETE, OPTIONS, POST | False | None |
/apiv1/user/search | api.user_api_1__search_users | OPTIONS, POST | False | None |
/apiv1/video/ | api.video_api_1__list_videos | GET, HEAD, OPTIONS | False | None |
/apiv1/video/<int:videoID> | api.video_api_1__list_video | DELETE, GET, HEAD, OPTIONS, PUT | False | None |
/apiv1/video/search | api.video_api_1__search_videos | OPTIONS, POST | False | None |
/apiv1/xmpp/auth | api.xmpp_api_1_xmpp_auth | OPTIONS, POST | False | None |
/apiv1/xmpp/isuser | api.xmpp_api_1_xmppisuser | OPTIONS, POST | False | None |
/auth | root.auth_check | GET, HEAD, OPTIONS, POST | False | None |
/c/<vanityURL> | root.vanityURL_channel_link | GET, HEAD, OPTIONS | False | None |
/c/<vanityURL>/live | root.vanityURL_live_link | GET, HEAD, OPTIONS | False | None |
/channel/ | channel.channels_page | GET, HEAD, OPTIONS | False | None |
/channel/<int:chanID>/ | channel.channel_view_page | GET, HEAD, OPTIONS | False | None |
/channel/<loc>/stream | channel.channel_stream_link_page | GET, HEAD, OPTIONS | False | None |
/channel/link/<channelLoc>/ | channel.channel_view_link_page | GET, HEAD, OPTIONS | False | None |
/clip/<clipID> | clip.view_clip_page | GET, HEAD, OPTIONS | False | None |
/clip/<clipID>/change | clip.clip_change_page | OPTIONS, POST | False | None |
/clip/<clipID>/delete | clip.delete_clip_page | GET, HEAD, OPTIONS | False | None |
/confirm | security.send_confirmation | GET, HEAD, OPTIONS, POST | False | None |
/confirm/<token> | security.confirm_email | GET, HEAD, OPTIONS, POST | False | None |
/fs-static/<path:filename> | security.static | GET, HEAD, OPTIONS | False | None |
/legal | root.static_from_root_privacy | GET, HEAD, OPTIONS | False | None |
/login | security.login | GET, HEAD, OPTIONS, POST | False | None |
/logout | security.logout | GET, HEAD, OPTIONS, POST | False | None |
/m3u8/stream/index.m3u8 | m3u8.get_stream_index | GET, HEAD, OPTIONS | False | None |
/m3u8/video/index.m3u8 | m3u8.get_all_video_index | GET, HEAD, OPTIONS | False | None |
/messages | root.messages_page | GET, HEAD, OPTIONS | False | None |
/notifications | root.notification_page | GET, HEAD, OPTIONS | False | None |
/oauth/authorize/<provider> | oauth.oAuthAuthorize | GET, HEAD, OPTIONS | False | None |
/oauth/convert/<provider> | oauth.oAuthConvert | OPTIONS, POST | False | None |
/oauth/login/<provider> | oauth.oAuthLogin | GET, HEAD, OPTIONS | False | None |
/p/<static_page> | root.render_staticPage | GET, HEAD, OPTIONS | False | None |
/play/<videoID> | play.view_vid_page | GET, HEAD, OPTIONS | False | None |
/play/<videoID>/change | play.vid_change_page | OPTIONS, POST | False | None |
/play/<videoID>/clip | play.vid_clip_page | OPTIONS, POST | False | None |
/play/<videoID>/comment | play.comments_vid_page | GET, HEAD, OPTIONS, POST | False | None |
/play/<videoID>/delete | play.delete_vid_page | GET, HEAD, OPTIONS | False | None |
/play/<videoID>/move | play.vid_move_page | OPTIONS, POST | False | None |
/profile/<username> | profile.profile_view_page | GET, HEAD, OPTIONS | False | None |
/proxy-adapt/<channelLoc>.m3u8 | root.proxy_adaptive_redirect | GET, HEAD, OPTIONS | False | None |
/proxy-adapt/<channelLoc>/<file> | root.proxy_adaptive_subfolder_redirect | GET, HEAD, OPTIONS | False | None |
/proxy/<channelLoc>/<file> | root.proxy_redirect | GET, HEAD, OPTIONS | False | None |
/register | security.register | GET, HEAD, OPTIONS, POST | False | None |
/reset | security.forgot_password | GET, HEAD, OPTIONS, POST | False | None |
/reset/<token> | security.reset_password | GET, HEAD, OPTIONS, POST | False | None |
/robots.txt | root.static_from_root | GET, HEAD, OPTIONS | False | None |
/rtmpCheck | root.rtmp_check | GET, HEAD, OPTIONS, POST | False | None |
/search | root.search_page | GET, HEAD, OPTIONS, POST | False | None |
/settings/admin | settings.admin_page | GET, HEAD, OPTIONS, POST | False | None |
/settings/admin/create_test_task | settings.createtestask | GET, HEAD, OPTIONS | False | None |
/settings/admin/features | settings.admin_devFeatures | GET, HEAD, OPTIONS | False | None |
/settings/admin/rtmpstat/<node> | settings.rtmpStat_page | GET, HEAD, OPTIONS | False | None |
/settings/admin/run_task/<task> | settings.run_task | GET, HEAD, OPTIONS | False | None |
/settings/api | settings.settings_apikeys_page | GET, HEAD, OPTIONS | False | None |
/settings/api/<string:action> | settings.settings_apikeys_post_page | OPTIONS, POST | False | None |
/settings/channels | settings.settings_channels_page | GET, HEAD, OPTIONS, POST | False | None |
/settings/channels/chat | settings.settings_channels_chat_page | GET, HEAD, OPTIONS, POST | False | None |
/settings/initialSetup | settings.initialSetup | OPTIONS, POST | False | None |
/settings/user | settings.user_page | GET, HEAD, OPTIONS, POST | False | None |
/settings/user/addInviteCode | settings.user_addInviteCode | GET, HEAD, OPTIONS | False | None |
/settings/user/deleteSelf | settings.user_delete_own_account | OPTIONS, POST | False | None |
/settings/user/subscriptions | settings.subscription_page | GET, HEAD, OPTIONS | False | None |
/static/<path:filename> | static | GET, HEAD, OPTIONS | False | None |
/streamer/ | streamers.streamers_page | GET, HEAD, OPTIONS | False | None |
/streamer/<userID>/ | streamers.streamers_view_page | GET, HEAD, OPTIONS | False | None |
/sw.js | root.static_from_root_sw | GET, HEAD, OPTIONS | False | None |
/swaggerui/<path:filename> | restx_doc.static | GET, HEAD, OPTIONS | False | None |
/tf-rescue | security.two_factor_rescue | GET, HEAD, OPTIONS, POST | False | None |
/tf-select | security.tf_select | GET, HEAD, OPTIONS, POST | False | None |
/tf-setup | security.two_factor_setup | GET, HEAD, OPTIONS, POST | False | None |
/tf-validate | security.two_factor_token_validation | GET, HEAD, OPTIONS, POST | False | None |
/topic/ | topic.topic_page | GET, HEAD, OPTIONS | False | None |
/topic/<topicID>/ | topic.topic_view_page | GET, HEAD, OPTIONS | False | None |
/u/<username> | root.vanityURL_username_link | GET, HEAD, OPTIONS | False | None |
/unsubscribe | root.unsubscribe_page | GET, HEAD, OPTIONS | False | None |
/upload/video-details | upload.upload_vid | OPTIONS, POST | False | None |
/upload/video-files | upload.upload | GET, HEAD, OPTIONS, POST | False | None |
/verify | security.verify | GET, HEAD, OPTIONS, POST | False | None |
/view/<loc>/ | liveview.view_page | GET, HEAD, OPTIONS | False | None |
/xmpp | root.xmpp_proxy | DELETE, GET, HEAD, OPTIONS, POST | False | None |
Key | Value |
---|---|
_login_user | <flask_security.core.AnonymousUser object at 0x7fef4121d280> |
debug_toolbar | <flask_debugtoolbar.DebugToolbarExtension object at 0x7fef43bc5310> |
identity | <AnonymousIdentity id="None" auth_type="None" provides=set()> |
view_rate_limit | None |