added the services and tables pages for Workspace

This commit is contained in:
Natalia Ovchinnikova 2023-11-17 17:01:32 +03:00
parent e4c1377019
commit 491ee30918
6 changed files with 508 additions and 0 deletions

View File

@ -45,6 +45,12 @@
<ul>
<li><h6><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-changelog.aspx")%>">Changelog</a></h6></li>
<li><h6>General configuration</h6>
<ul>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-general-config-services.aspx")%>">Workspace services</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-general-config-tables.aspx")%>">Workspace SQL tables</a></li>
</ul>
</li>
<li><h6>System requirements</h6>
<ul>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-sys-reqs-docker.aspx")%>">Docker version</a></li>

View File

@ -49,6 +49,13 @@
<h2><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-community-index.aspx")%>">ONLYOFFICE Workspace</a></h2>
<ul>
<li><h6><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-changelog.aspx")%>">Changelog</a></h6></li>
<li><h6>General configuration</h6>
<ul>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-general-config-services.aspx")%>">Workspace services</a></li>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-general-config-tables.aspx")%>">Workspace SQL tables</a></li>
</ul>
</ul>
</li>
<li><h6>System requirements</h6>
<ul>
<li><a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-sys-reqs-docker.aspx")%>">Docker version</a></li>

View File

@ -0,0 +1,166 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls"%>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Workspace services";
MetaKeyWords = "";
MetaDescription = "Workspace services.";
}
</script>
<div id="toggleMenuEditors" class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Workspace services</h1>
<span>
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/Versions/CommunityEdition/CommunityEdition_Current.ascx" />
</span>
<div class="keyword_block">
<ul>
<li><cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Tags/server-version/server-version.ascx" /></li>
</ul>
</div>
<div class="video_ground video_trips">
<h2 id="introduction">Introduction</h2>
<div class="block_of_step">
<div class="screen_text">
<p>Service is the ONLYOFFICE Workspace component that is used to perform long-running background operations without user interaction.
The service can be started and stopped from any application component or other services.</p>
<p>Below you can find a list of the ONLYOFFICE Workspace services.</p>
<table class="table_portslist script_parameters">
<colgroup>
<col style="width: 250px;" />
<col />
</colgroup>
<tbody>
<tr>
<th>Service</th>
<th>Description</th>
</tr>
<tr>
<td><div class="copy-link" id="BackupBackgroundTasks">BackupBackgroundTasks</div></td>
<td>
<p>Launches the additional services related to the backup creation:</p>
<ul>
<li><b>BackupWorkerService</b> - launches <b>WorkerService</b> that runs backups/restore etc.;</li>
<li><b>BackupListenerService</b> - waits for a notification to delete backups according to the schedule;</li>
<li><b>BackupCleanerTempFileService</b> - deletes the temporary files remaining after backup;</li>
<li><b>BackupCleanerService</b> - deletes outdated backups;</li>
<li><b>BackupSchedulerService</b> - runs backups according to the schedule.</li>
</ul>
</td>
</tr>
<tr>
<td><div class="copy-link" id="BackupService">BackupService</div></td>
<td>Handles the API requests related to the backups. The port number is 5012.</td>
</tr>
<tr>
<td><div class="copy-link" id="ClearEvents">ClearEvents</div></td>
<td>Clears the <a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-general-config-tables.aspx")%>#login_events">login_events</a>
and <a href="<%=VirtualPathUtility.ToAbsolute("~/installation/workspace-general-config-tables.aspx")%>#audit_events">audit_events</a> tables
by <b>LoginHistoryLifeTime</b> and <b>AuditTrailLifeTime</b> to log out users after the timeout.</td>
</tr>
<tr>
<td><div class="copy-link" id="FileServer">FileServer</div></td>
<td>
<ul>
<li>Handles the API requests related to the documents. The port number is 5007.</li>
<li>Launches <b>OFormService</b>.</li>
</ul>
</td>
</tr>
<tr>
<td><div class="copy-link" id="FileService">FileService</div></td>
<td>
<p>Launches the additional services related to the file management:</p>
<ul>
<li><b>ElasticSearchIndexService</b> - indexes documents using Elasticsearch;</li>
<li><b>FeedAggregatorService</b> - aggregates notifications;</li>
<li><b>FeedCleanerService</b> - removes notifications;</li>
<li><b>FileConverterService</b> - converts documents;</li>
<li><b>ThumbnailBuilderService</b> - generates thumbnails for documents;</li>
<li><b>Launcher</b> - removes the outdated files from the recycle bin.</li>
</ul>
</td>
</tr>
<tr>
<td><div class="copy-link" id="MigrationService">MigrationService</div></td>
<td>Handles the API requests related to the migration. It is responsible for creating the database.
The database connection is transferred to the service, and the service creates the tables and populates them with values.
The port number is 5034.</td>
</tr>
<tr>
<td><div class="copy-link" id="NotifyService">NotifyService</div></td>
<td>
<p>Launches the additional services related to the notifications about Workspace events:</p>
<ul>
<li><b>NotifySenderService</b> - sends messages from the database;</li>
<li><b>NotifyCleanerService</b> - removes messages.</li>
</ul>
</td>
</tr>
<tr>
<td><div class="copy-link" id="PeopleServer">PeopleServer</div></td>
<td>Handles the API requests related to the <em>People</em> module.</td>
</tr>
<tr>
<td><div class="copy-link" id="Radicale">Radicale</div></td>
<td>
<p>Defines a server to work with the <em>CalDAV/CardDAV</em> protocols.
It operates either as a standalone package using its own internal HTTP server, or can be integrated with an existing web server.</p>
<p>When working with calendars/events/todo/address books/contacts, all actions are duplicated on the Radicale server. Any client (for example, Thunderbird) running on these protocols can be connected, and the data will be synchronized with the portals.</p>
</td>
</tr>
<tr>
<td><div class="copy-link" id="SocketIO">SocketIO</div></td>
<td>Provides the two-way communication between a client and a server.
It allows pages to receive data without restarting (for example, thumbnails or new documents). The port number is 9899.</td>
</tr>
<tr>
<td><div class="copy-link" id="SsoAuth">SsoAuth</div></td>
<td>Allows you to enable and configure the SAML-based single sign-on (SSO) authentication
providing a faster, easier, and more secure way for users to access Workspace. The port number is 9834.</td>
</tr>
<tr>
<td><div class="copy-link" id="StudioNotifyService">StudioNotifyService</div></td>
<td>Generates notifications and sends them to other services (for example, <b>TelegramService</b> and <b>NotifyService</b>).</td>
</tr>
<tr>
<td><div class="copy-link" id="TelegramService">TelegramService</div></td>
<td>Launches a service that waits for a notification to interact with Telegram.</td>
</tr>
<tr>
<td><div class="copy-link" id="WebApi">WebApi</div></td>
<td>Handles the API requests not related to the services above.
For example, it handles requests related to settings, audit, authentication, etc.
The port number is 5000.</td>
</tr>
<tr>
<td><div class="copy-link" id="WebDav">WebDav</div></td>
<td>Webdav is an extension of the HTTP protocol that allows you to manage files on a remote server,
access documents over the Internet, and collaborate on them.</td>
</tr>
<tr>
<td><div class="copy-link" id="WebHealthChecksUI">WebHealthChecksUI</div></td>
<td>Displays the list of launched services. The port number is 5027.</td>
</tr>
<tr>
<td><div class="copy-link" id="WebhooksService">WebhooksService</div></td>
<td>
<p>Launches the additional services related to webhooks:</p>
<ul>
<li><b>BuildQueueService</b> - waits for a notification to add a webhook to the queue;</li>
<li><b>WorkerService</b> - sends webhooks if a queue exists.</li>
</ul>
</td>
</tr>
<tr>
<td><div class="copy-link" id="WebStudio">WebStudio</div></td>
<td>Processes the <em>storage</em> handlers and the authorization pages. The port number is 5003.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,285 @@
<%@ Control Language="C#" Inherits="BaseContentUserControls"%>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<script runat="server">
protected override void Init()
{
PageTitle = PageCaption = "Workspace SQL tables";
MetaKeyWords = "";
MetaDescription = "Workspace SQL tables.";
}
</script>
<div id="toggleMenuEditors" class="MainHelpCenter">
<h1 class="subHeaderFeaturesCaption Guides_Video_Captions">Workspace SQL tables</h1>
<span>
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/VariousControls/Versions/CommunityEdition/CommunityEdition_Current.ascx" />
</span>
<div class="keyword_block">
<ul>
<li><cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Tags/server-version/server-version.ascx" /></li>
</ul>
</div>
<div class="video_ground video_trips">
<h2 id="introduction">Introduction</h2>
<div class="block_of_step">
<div class="screen_text">
<p>All necessary information for the ONLYOFFICE Workspace database is stored in tables.</p>
<p>Below you can find a list of the main ONLYOFFICE Workspace tables.
All the SQL tables can be found <a target="_blank" href="https://github.com/ONLYOFFICE/CommunityServer/blob/master/build/sql/onlyoffice.sql">here</a>.</p>
<table class="table_portslist script_parameters">
<colgroup>
<col style="width: 250px;" />
<col />
<col style="width: 350px;" />
</colgroup>
<tbody>
<tr>
<th>Table</th>
<th>Description</th>
<th>Columns</th>
</tr>
<tr>
<td><div class="copy-link" id="account_links">account_links</div></td>
<td>Account connections via OAuth.</td>
<td>id, uid, provider, profile, linked</td>
</tr>
<tr>
<td><div class="copy-link" id="audit_events">audit_events</div></td>
<td>User actions logs except for authorization.</td>
<td>id, ip, initiator, browser, platform, date, tenant_id, user_id, page, action, description, target</td>
</tr>
<tr>
<td><div class="copy-link" id="backup_backup">backup_backup</div></td>
<td>Completed backups.</td>
<td>id, tenant_id, is_scheduled, name, storage_type, storage_base_path, storage_path, created_on, expires_on, storage_params, hash, removed</td>
</tr>
<tr>
<td><div class="copy-link" id="backup_schedule">backup_schedule</div></td>
<td>Backup schedule.</td>
<td>tenant_id, backup_mail, cron, backups_stored, storage_type, storage_base_path, last_backup_time, storage_params</td>
</tr>
<tr>
<td><div class="copy-link" id="core_acl">core_acl</div></td>
<td>List of allowed or prohibited actions for user groups (for example, the ability to change information about yourself).</td>
<td>tenant, subject, action, object, acetype</td>
</tr>
<tr>
<td><div class="copy-link" id="core_group">core_group</div></td>
<td>List of user groups.</td>
<td>tenant, id, name, categoryid, parentid, sid, removed, last_modified</td>
</tr>
<tr>
<td><div class="copy-link" id="core_settings">core_settings</div></td>
<td>Hashed settings.</td>
<td>tenant, id, value, last_modified</td>
</tr>
<tr>
<td><div class="copy-link" id="core_user">core_user</div></td>
<td>List of users.</td>
<td>tenant, id, username, firstname, lastname, sex, bithdate, status, activation_status, email, workfromdate, terminateddate, title,
culture, contacts, phone, phone_activation, location, notes, sid, sso_name_id, sso_session_id, removed, create_on, last_modified, user_lead</td>
</tr>
<tr>
<td><div class="copy-link" id="core_userdav">core_userdav</div></td>
<td>List of users who requested an address book from the Radicale server. This table is used to avoid updating the address book for all users simultaneously.</td>
<td>tenant, id, user_id</td>
</tr>
<tr>
<td><div class="copy-link" id="core_usergroup">core_usergroup</div></td>
<td>Group membership of users.</td>
<td>tenant, userid, groupid, ref_type, removed, last_modified</td>
</tr>
<tr>
<td><div class="copy-link" id="core_userphoto">core_userphoto</div></td>
<td>User photos.</td>
<td>tenant, userid, photo</td>
</tr>
<tr>
<td><div class="copy-link" id="core_usersecurity">core_usersecurity</div></td>
<td>User passwords.</td>
<td>tenant, userid, pwdhash, LastModified</td>
</tr>
<tr>
<td><div class="copy-link" id="dbip_location">dbip_location</div></td>
<td>Geolocation.</td>
<td>id, addr_type, ip_start, ip_end, country, stateprov, district, city, zipcode, latitude, longitude, geoname_id, timezone_offset, timezone_name, processed</td>
</tr>
<tr>
<td><div class="copy-link" id="feed_aggregate">feed_aggregate</div></td>
<td>Newsline.</td>
<td>id, tenant, product, module, author, modified_by, created_date, modified_date, group_id, json, keywords, aggregated_date</td>
</tr>
<tr>
<td><div class="copy-link" id="feed_last">feed_last</div></td>
<td>Latest news dates in modules.</td>
<td>last_key, last_date</td>
</tr>
<tr>
<td><div class="copy-link" id="feed_readed">feed_readed</div></td>
<td>Modules read by users.</td>
<td>user_id, timestamp, module, tenant_id</td>
</tr>
<tr>
<td><div class="copy-link" id="feed_users">feed_users</div></td>
<td>Correlation of the news feed with users.</td>
<td>feed_id, user_id, aggregated_date</td>
</tr>
<tr>
<td><div class="copy-link" id="files_bunch_objects">files_bunch_objects</div></td>
<td>Folder paths (for example, <em>files/my/58a22c6f-e835-11ec-a200-d45d64a8bb3e</em>).</td>
<td>tenant_id, right_node, left_node</td>
</tr>
<tr>
<td><div class="copy-link" id="files_converts">files_converts</div></td>
<td>Range of formats for conversion (from which to which).</td>
<td>input, output</td>
</tr>
<tr>
<td><div class="copy-link" id="files_file">files_file</div></td>
<td>List of files.</td>
<td>id, version, version_group, current_version, folder_id, title, content_length, file_status, category, create_by, create_on,
modified_by, modified_on, tenant_id, converted_type, comment, changes, encrypted, forcesave, thumb</td>
</tr>
<tr>
<td><div class="copy-link" id="files_folder">files_folder</div></td>
<td>List of folders.</td>
<td>id, parent_id, title, folder_type, create_by, create_on, modified_by, modified_on, tenant_id, foldersCount, filesCount</td>
</tr>
<tr>
<td><div class="copy-link" id="files_folder_tree">files_folder_tree</div></td>
<td>Tree of folders.</td>
<td>folder_id, parent_id, level</td>
</tr>
<tr>
<td><div class="copy-link" id="files_link">files_link</div></td>
<td>Connection between a form and a document being filled out.</td>
<td>source_id, linked_id, linked_for, tenant_id</td>
</tr>
<tr>
<td><div class="copy-link" id="files_properties">files_properties</div></td>
<td>Fillable fields in forms.</td>
<td>tenant_id, entry_id, data</td>
</tr>
<tr>
<td><div class="copy-link" id="files_security">files_security</div></td>
<td>Security of documents, determining who has access to files and the type of access.</td>
<td>tenant_id, entry_id, entry_type, subject, subject_type, owner, security, timestamp, options</td>
</tr>
<tr>
<td><div class="copy-link" id="files_tag">files_tag</div></td>
<td>List of document tags.</td>
<td>id, name, owner, flag, tenant_id</td>
</tr>
<tr>
<td><div class="copy-link" id="files_tag_link">files_tag_link</div></td>
<td>Correlation between tags and documents.</td>
<td>tenant_id, tag_id, entry_type, entry_id, create_by, create_on, tag_count</td>
</tr>
<tr>
<td><div class="copy-link" id="files_thirdparty_account">files_thirdparty_account</div></td>
<td>Connected third-party drives.</td>
<td>id, provider, customer_title, user_name, password, token, user_id, folder_type, create_on, url, tenant_id</td>
</tr>
<tr>
<td><div class="copy-link" id="files_thirdparty_app">files_thirdparty_app</div></td>
<td>Connected third-party drives (used in the browser plugin).</td>
<td>user_id, app, token, tenant_id, modified_on</td>
</tr>
<tr>
<td><div class="copy-link" id="files_thirdparty_id_mapping">files_thirdparty_id_mapping</div></td>
<td>Correlation of the document IDs in the third-party drives to the hashed IDs.</td>
<td>hash_id, id, tenant_id</td>
</tr>
<tr>
<td><div class="copy-link" id="hosting_instance_registration">hosting_instance_registration</div></td>
<td>Active-passive hosted services.</td>
<td>instance_registration_id, last_updated, worker_type_name, is_active</td>
</tr>
<tr>
<td><div class="copy-link" id="login_events">login_events</div></td>
<td>Logs of user actions related to authorization events.</td>
<td>id, ip, login, browser, platform, date, tenant_id, user_id, page, action, description, active</td>
</tr>
<tr>
<td><div class="copy-link" id="notify_info">notify_info</div></td>
<td>Information about sending messages.</td>
<td>notify_id, state, attempts, modify_date, priority</td>
</tr>
<tr>
<td><div class="copy-link" id="notify_queue">notify_queue</div></td>
<td>Queue for sending messages.</td>
<td>notify_id, tenant_id, sender, reciever, subject, content_type, content, sender_type, reply_to, creation_date, attachments, auto_submitted</td>
</tr>
<tr>
<td><div class="copy-link" id="telegram_users">telegram_users</div></td>
<td>Telegram connections.</td>
<td>portal_user_id, tenant_id, telegram_user_id</td>
</tr>
<tr>
<td><div class="copy-link" id="tenants_forbiden">tenants_forbiden</div></td>
<td>Forbidden tenants.</td>
<td>address</td>
</tr>
<tr>
<td><div class="copy-link" id="tenants_iprestrictions">tenants_iprestrictions</div></td>
<td>List of addresses where tenants are available.</td>
<td>id, tenant, ip, for_admin</td>
</tr>
<tr>
<td><div class="copy-link" id="tenants_partners">tenants_partners</div></td>
<td>Parent tenants.</td>
<td>tenant_id, partner_id, affiliate_id, campaign</td>
</tr>
<tr>
<td><div class="copy-link" id="tenants_quota">tenants_quota</div></td>
<td>Tenant quota (available features, maximum file size, maximum users, etc.).</td>
<td>tenant, name, description, max_file_size, max_total_size, active_users, features, price, avangate_id, visible</td>
</tr>
<tr>
<td><div class="copy-link" id="tenants_quotarow">tenants_quotarow</div></td>
<td>Size of the tenant used space.</td>
<td>tenant, path, counter, tag, last_modified, user_id</td>
</tr>
<tr>
<td><div class="copy-link" id="tenants_tariff">tenants_tariff</div></td>
<td>Tenant tariffs.</td>
<td>id, tenant, tariff, stamp, quantity, comment, create_on</td>
</tr>
<tr>
<td><div class="copy-link" id="tenants_tenants">tenants_tenants</div></td>
<td>List of tenants.</td>
<td>id, name, alias, mappeddomain, version, version_changed, language, timezone, trusteddomains, trusteddomainsenabled,
status, statuschanged, creationdatetime, owner_id, public, publicvisibleproducts, payment_id, industry, last_modified, spam, calls</td>
</tr>
<tr>
<td><div class="copy-link" id="webhooks_config">webhooks_config</div></td>
<td>Settings for webhooks.</td>
<td>id, name, secret_key, tenant_id, uri, enabled</td>
</tr>
<tr>
<td><div class="copy-link" id="webhooks_logs">webhooks_logs</div></td>
<td>Logs of webhooks.</td>
<td>id, config_id, creation_type, webhook_id, request_headers, request_payload, response_headers, response_payload, status, tenant_id, uid, delivery</td>
</tr>
<tr>
<td><div class="copy-link" id="webstudio_index">webstudio_index</div></td>
<td>Webstudio indexes for ElasticSearch.</td>
<td>index_name, last_modified</td>
</tr>
<tr>
<td><div class="copy-link" id="webstudio_settings">webstudio_settings</div></td>
<td>Webstudio settings.</td>
<td>TenantID, ID, UserID, Data</td>
</tr>
<tr>
<td><div class="copy-link" id="webstudio_uservisit">webstudio_uservisit</div></td>
<td>User visits to the modules.</td>
<td>tenantid, visitdate, productid, userid, visitcount, firstvisittime, lastvisittime</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,22 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/InstallationGuides/InstallationWorkspaceArticles.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="docker_version community_edition installation_workspace_ce">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:localizecontent runat="Server" controlname="~/Controls/Help/VariousControls/TopControls/OpensourceTop/OpensourceTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Server/Docker/Opensource/Services/WorkspaceServices.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="installationworkspacepage enterprise">
<div id="SeeAlsoBlockLinks">
<div class="caption guides">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/GettingStarted/070_configuration.ascx" />
</div>
<div class="caption video">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Video/130_docker_install.ascx" />
</div>
</div>
</asp:Content>

View File

@ -0,0 +1,22 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Masters/InstallationGuides/InstallationWorkspaceArticles.master" %>
<%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>
<asp:Content ID="Content4" ContentPlaceHolderID="pagebodyidpage" runat="Server">
<body class="docker_version community_edition installation_workspace_ce">
</asp:Content>
<asp:Content ID="content3" ContentPlaceHolderID="breadstop" runat="server">
<cc:localizecontent runat="Server" controlname="~/Controls/Help/VariousControls/TopControls/OpensourceTop/OpensourceTop.ascx" />
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="content" runat="Server">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/Server/Docker/Opensource/Tables/WorkspaceTables.ascx" />
</asp:Content>
<asp:Content ID="content2" ContentPlaceHolderID="leftmenupage" runat="server">
<div class="installationworkspacepage enterprise">
<div id="SeeAlsoBlockLinks">
<div class="caption guides">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/GettingStarted/070_configuration.ascx" />
</div>
<div class="caption video">
<cc:LocalizeContent runat="Server" ControlName="~/Controls/Help/ArticlesCompleteList/Video/130_docker_install.ascx" />
</div>
</div>
</asp:Content>