Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents
stylenone

1. Extracting guide data (JSON)

To get started you first need to create your guides on CLOUD (lmw.technia.cloud). This requires the latest Light My Way extension that can either be installed from Chrome/Edge store https://technia.jira.com/wiki/spaces/TSD/pages/4031971409/Light+My+Way+-+Product+Documentation#Client-Installation or self-hosted 2. Self hosting client (web-extension).

...

Light My Way will then load all guide data from the export file and the extension will not connect to CLOUD.

image-20240315-133826.png

2. Self-hosting client (web extension)

To self-host the extension you need to host two files (3 with the JSON data file)

  1. the update file (e.g. update.xml)

  2. the extension package (e.g. lmw-2024.2.crx).

The files needs to be hosted over HTTPS (Reference: https://developer.chrome.com/docs/extensions/how-to/distribute/host-on-linux#update). We recommend hosting these together with the guide data JSON (there is a version dependency).

Extension package

The extension package (.crx) can be downloaded from products.technia.com.

Update file

The update file (.xml) needs to be edited according to how its hosted.

In below example these values needs to be updated:
<updatecheck codebase='path-to-extension.crx' version='version (must match extension version)' />

Example:

Code Block
languagexml
<?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
  <app appid='abgmfmhjplgnlmjoglbgddpdnfdcjenj'>
    <updatecheck codebase='https://<YOUR_HOSTING_URL>/lmw-2024.2.crx' version='2024.2' />
  </app>
</gupdate>

Please refer to this page on more details about the elements of the update file.

Learn more

Web Extension self-hosting is supported technology for Chrome and MS Edge.
Please refer to browser documentation for more information.

Pack Extension:

Click Browser--> Manage Extensions--> Click Pack extension and select extension folder.

image-20240403-081900.pngImage Removed

Use the Pack extension dialog to find the directory that has the source for the extension. Select the directory and then click Pack extension. This creates your CRX file, along with a PEM file.

image-20240403-081910.pngImage Removed

Add Extension to the browser:

 Drag and drop the CRX file into the extensions window and verify that it loads

image-20240403-081929.pngImage Removed

 

The extension is disabled after this operation. To enable it add the CRX ID of the extension to the ExtensionInstallAllowList policy.

Please use the below .reg file to update the registry editor. Please update the correct extension ID in the reg file.

...

 

Now, Extension will be enabled. Check user can open extension or not.

 

Download .json file from the admin and paste it in one folder. For example

C:\Users\akka01\Downloads\Onprem\######.json

 

In the Registry editor, to the following path create a new key and enter the extension id as the key name also create one more subkey with the name “policy”

Path: SOFTWARE\Policies\Microsoft\Edge\extensions

 

Click on Policy and create a new string with the below details:

hosted-guides-path” : C://Users//akka01//Downloads//Onprem//demo-3dx-config-2024-03-22_154036.json (Path of Json file)

Please refer below screenshot:

...

Restart the edge browser and open extension. Consumer extension will be connected to the hosted guides.

...

3. Distribution

Self hosted extensions can be distributed just like the Chrome Store hosted extension using the registry https://technia.jira.com/wiki/spaces/TSD/pages/4031971409/Light+My+Way+-+Product+Documentation#Registry-entries-using-file.

The registry file also needs to be edited with the correct values and path to the update file.

In below example these values would need to be updated:

  • update_url

  • runtime_allowed_hosts

  • hosted-guides-path

Example:

Code Block
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionSettings\abgmfmhjplgnlmjoglbgddpdnfdcjenj]
"installation_mode"="normal_installed"
"update_url"="https://<YOUR_HOSTING_URL>/update.xml"
"runtime_allowed_hosts"="[\"https://lmw.technia.cloud\",\"://example.com\",\"://*.3ds.com\"]"
"runtime_blocked_hosts"="[\"*://*\"]"

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\3rdparty\extensions\abgmfmhjplgnlmjoglbgddpdnfdcjenj\policy]
"hosted-guides-path"="https://<YOUR_HOSTING_URL>/data-export.json"
"lmw-server-url-editable"=dword:00000001
"lmw-author-mode"=dword:00000000
"lmw-registry-script-executed"=dword:00000000