<%@ Control Language="C#" Inherits="BaseContentUserControls"%> <%@ Register Namespace="TeamLab.Controls" Assembly="__Code" TagPrefix="cc" %>

Modo de añadir módulos personalizados al ONLYOFFICE Groups

Introducción

Si Usted desea crear sus propios módulos para ONLYOFFICE y añadirlos al ONLYOFFICE Groups, ahora puede fácilmente hacerlo. Proyecto de ejemplo está disponible aquí: https://github.com/ONLYOFFICE/CommunityServer/tree/master/web/studio/ASC.Web.Studio/Products/Sample

Puede modificar este ejemplo o crear un nuevo módulo personalizado en su base. Asegúrese de que todos los componentes necesarios están disponibles en las carpetas especificadas y ciertas líneas de código se añaden a los archivos especificados como se describe a continuación.

Cómo funciona

  1. Obtenga ONLYOFFICE Groups de https://github.com/ONLYOFFICE/CommunityServer
  2. El Proyecto de Ejemplo está disponible en la carpeta Productos aquí:

    https://github.com/ONLYOFFICE/CommunityServer/tree/master/web/studio/ASC.Web.Studio/Products

  3. El ASC.Api.Sample está disponible en la carpeta ASC.Api aquí:

    https://github.com/ONLYOFFICE/CommunityServer/tree/master/module/ASC.Api

  4. Las siguientes líneas de código se añaden al archivo https://github.com/ONLYOFFICE/CommunityServer/blob/master/build/msbuild/build.proj:
    <!-- Sample -->
    <ProjectToBuild Include="$(ASCDir)web\studio\ASC.Web.Studio\Products\Sample\ASC.Web.Sample.csproj"/>
    

    y

    <ProjectToBuild Include="$(ASCDir)module\ASC.Api\ASC.Api.Sample\ASC.Api.Sample.csproj"/>
    

    También puede ver otros proyectos existentes para aprender donde estas líneas deben ser añadidas.

    ¡Tenga en cuenta, por favor! El orden en que se teclean las líneas es muy importante.
  5. El ASC.Api.Sample.SampleApi se añade al archivo web\studio\ASC.Web.Studio\web.autofac.config de esta manera:
    <component
              type="ASC.Api.Sample.SampleApi, ASC.Api.Sample"
              service="ASC.Api.Interfaces.IApiEntryPoint, ASC.Api"
              name="sample"/>
    
  6. El archivo Build.bat puede ser ejecutado aquí:

    https://github.com/ONLYOFFICE/CommunityServer/blob/master/build/Build.bat

Cómo crear su propio módulo para ONLYOFFICE

  1. Cree un proyecto de aplicación web de ASP.NET (ASC.Web.Sample) y póngalo en la carpeta ...web\studio\ASC.Web.Studio\Products\Sample.
    ¡IMPORTANTE! El nombre del archivo de salida dll debe ser "ASC.Web.*.dll".
  2. Conecte las referencias necesarias de ...\web\studio\ASC.Web.Studio\bin\:
    ASC.Common.dll
    ASC.Core.Common.dll
    ASC.Data.Storage.dll
    ASC.Web.Core.dll
    ASC.Web.Studio.dll
    
  3. Implemente la interfaz del IProduct en el archivo ProductEntryPoint.cs.
    ¡IMPORTANTE! El ProductID debe ser único Guid (en VS2012 se genera como TOOLS -> GUID -> New GUID)
  4. Añada las siguientes líneas al archivo AssemblyInfo.cs:
    [assembly: Product(typeof(ASC.Web.Sample.Configuration.ProductEntryPoint))]
    
  5. Herede el Master de web\studio\ASC.Web.Studio\Masters\BaseTemplate.master
  6. Establezca la ruta de salida en las propiedades del proyecto de esta manera:
    <OutputPath>..\..\bin\</OutputPath>
    

    para crear las estructuras en la carpeta web\studio\ASC.Web.Studio\bin.

  7. El proyecto se puede construir manualmente o usando el constructor. Para el último añada las siguientes líneas al archivo build\msbuild\build.proj:
    <ProjectToBuild Include="$(ASCDir)web\studio\ASC.Web.Studio\Products\Sample\ASC.Web.Sample.csproj"/>
    

    y ejecute el archivo build\Build.bat.

  8. Después de la estructura, ejecute el sitio web en la dirección localhost:port, vaya a la página de Ajustes de "Módulos y Herramientas" (http://localhost:port/management.aspx?type=2) y active el nuevo módulo Ejemplo. Después éste estará disponible en el menú desplegable del encabezado del portal o usando el enlace directo: http://localhost:port/products/sample/default.aspx

Ahora Usted puede crear API para su propio módulo siguiendo ">estas instrucciones.