Ajouter des modules personnalisés à ONLYOFFICE Workspace

Introduction

Maintenant, vous pouvez facilement créer vos propres modules pour ONLYOFFICE et les ajouter à ONLYOFFICE Workspace. Un modèle de projet est disponible ici: https://github.com/ONLYOFFICE/CommunityServer/tree/master/web/studio/ASC.Web.Studio/Products/Sample

Vous pouvez modifier ce modèle ou utiliser le module modèle comme base d'un nouveau module personnalisé. Assurez l'accessibilité des composants nécessaires dans les dossiers que vous avez indiqué et vérifiez que toutes lignes de code sont ajoutées aux fichiers appropriés comme il est décrit ci-après.

Comment cela fonctionne

  1. Obtenez ONLYOFFICE Community Server disponible sur https://github.com/ONLYOFFICE/CommunityServer
  2. Le projet Modèle est disponible dans le dossier Produits :

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

  3. ASC.Api.Sample est disponible dans le dossier ASC.Api :

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

  4. Il faut ajouter les lignes de code suivantes au fichier 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"/>

    et

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

    Vous pouvez également consulter des projets existants pour découvrir où on doit insérer ces lignes.

    Attention! Saisissez les lignes selon l'ordre établi.
  5. On doit ajouter ASC.Api.Sample.SampleApi au fichier web\studio\ASC.Web.Studio\web.autofac.config comme suit:
    <componenttype="ASC.Api.Sample.SampleApi, ASC.Api.Sample"service="ASC.Api.Interfaces.IApiEntryPoint, ASC.Api"name="sample"/>
  6. On peut exécuter Build.bat ici:

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

Comment créer votre propre module ONLYOFFICE

  1. Créez un projet ASP.NET Web Application (ASC.Web.Sample) et placez-le dans le dossier ...web\studio\ASC.Web.Studio\Products\Sample .
    IMPORTANT. Le nom du fichier de sortie dll doit être "ASC.Api.*.dll";
  2. Ajoutez des références requises à partir 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. Réalisez l'interface IProduct dans le fichier ProductEntryPoint.cs .
    IMPORTANT ProductID doit être un identifiant unique Guid (dans VS2012 il est généré en tant que TOOLS -> GUID -> New GUID)
  4. Ajoutez les lignes suivantes au fichier AssemblyInfo.cs :
    [assembly: Product(typeof(ASC.Web.Sample.Configuration.ProductEntryPoint))]
  5. Héritez le Maître de web\studio\ASC.Web.Studio\Masters\BaseTemplate.master
  6. Définissez le chemin de sortie pour le projet comme suit:
    <OutputPath>..\..\bin\</OutputPath>

    pour que les builds soient générés dans le dossier web\studio\ASC.Web.Studio\bin .

  7. On peut générer le projet manuellement ou à l'aide de générateur. Pour ce dernier, ajoutez les lignes suivantes au fichier build\msbuild\build.proj :
    <ProjectToBuild Include="$(ASCDir)web\studio\ASC.Web.Studio\Products\Sample\ASC.Web.Sample.csproj"/>

    et exécutez le fichier build\Build.bat .

  8. Ensuite, lancez le site web sur localhost:port, passez à la page Modules & Tools Settings (Paramètres de modules et outils) (http://localhost:port/management.aspx?type=2) et activez le nouveau module Sample (Modèle). Le module sera disponible dans le menu contextuel dans l'en-tête du portail ou par le lien direct: http://localhost:port/products/sample/default.aspx

Vous pouvez créer une API pour votre module selon ces instructions.

Hébergez ONLYOFFICE Workspace sur votre serveur

Articles avec le tag :
Parcourir tous les tags