Copyright ©
Mindbreeze GmbH, A-4020 Linz, .
All rights reserved. All hardware and software names used are trade names and/or brands of the respective manufacturers.
These documents are strictly confidential. The transmission and presentation of these documents alone does not establish any rights to our software, our services and service results or any other protected rights. The passing on, publication or duplication is not permitted.
For reasons of easier readability, gender-specific differentiation, e.g. user, is not used. Corresponding terms apply to both sexes in the sense of equal treatment.
In the InSpire Management Center it is possible to store your own menu items or to overwrite them. For example, CSV files or text files can be directly integrated into the Mindbreeze Management Center and edited. The authorizations are still checked according to the backend credentials.
Depending on which variant is used (roles or resource.json), the documentation is differentiated as follows
All menu items are displayed via roles if no resource.json is available. Otherwise the menu will be loaded in the usual way (see resource.json).
Attention: This feature is only available with CentOS 7.
Users can be managed in the Management Center under "Credentials". For more information, see Configuration - Backend Credentials.
Important: Every user using the Management Center must have the role "InSpire Overview User".
Role | Displayed menu items |
InSpire Administrator | Search Apps, Reporting, Search Experience, Services, Configuration, Setup, Update, System |
InSpire app.telemetry Administrator | Reporting |
InSpire Client User | Search Apps (Not Insight Apps) |
InSpire Config Administrator | Configuration |
InSpire Services Administrator | Services |
InSpire Vocabulary Administrator | Search Experience (Synonyms, Replacements, Vocabulary) |
InSpire Relevance Administrator | Search Apps, Search Experience (Query Boosting, Relevanz) |
InSpire Resource Administrator | Search Apps, Search Experience (Complete incl. Plugins) |
InSpire Insight Services Administrator | Insight Services |
If roles are available (data/resources/resource.json does not exist) the menu items are as follows.
{
"entries": [{
"priority": 700,
"id": "update",
"title": "Update",
"icon": "upload",
"submenu": [{
"priority": 10,
"title": "Upload",
"href": "adminapps/services/update/upload/form",
"icon": "upload",
"unsupportedBrowsers": ["Edge"]
}, {
"priority": 20,
"title": "Perform Update",
"href": "adminapps/services/update/update/form",
"icon": "refresh",
"unsupportedBrowsers": ["Edge"]
}]
},
{
"priority": 600,
"id": "setup",
"title": "Setup",
"icon": "cogs",
"submenu": [{
"priority": 10,
"title": "Kerberos",
"href": "adminapps/services/krb5config",
"icon": "lock"
},
{
"priority": 20,
"title": "Credentials",
"href": "auth/admin/master/console/#/realms/master/users",
"icon": "users",
"unsupportedBrowsers": ["IE"]
},
{
"priority": 30,
"title": "InSpire",
"href": "update/settings/form",
"icon": "tasks"
},
{
"priority": 40,
"title": "SSL Certificate",
"href": "adminapps/services/update/upload/certificateform",
"icon": "certificate",
"unsupportedBrowsers": ["Edge"]
}
]
},
{
"priority": 900,
"submenu": [],
"icon": "folder",
"id": "filesystem",
"title": "File Manager"
}]
}]
}
{
"entries": [{
"priority": 500,
"id": "configuration",
"title": "Configuration",
"href": "config",
"icon": "wrench"
}]
}
{
"entries": [{
"priority": 300,
"id": "searchexperience",
"title": "Search Experience",
"icon": "search",
"submenu": [{
"priority": 30,
"id": "searchexperience",
"title": "Query Boostings",
"icon": "list-alt",
"filepath": "relevance/term2documentboost.csv",
"type": "csv"
},{
"priority": 70,
"id": "searchexperience",
"title": "Relevance",
"icon": "list-alt",
"type": "layout",
"grid": [{
"href": "{{client_url}}/apps/client/index.html?relevance-info=true",
"type": "url",
"class": "col-md-8 search-client"
},{
"class": "col-md-4",
"grid": [{
"filepath": "relevance/relevance.json",
"type": "json",
"class": "col-md-12",
"height": "50%"
},{
"filepath": "relevance/term2documentboost.csv",
"type": "csv",
"class": "col-md-12 mb-hidden-overflow",
"height": "50%"
}]
}]
}]
}]
}
{
"entries": [{
"priority": 200,
"id": "reporting",
"title": "Reporting",
"icon": "bar-chart-o",
"submenu": [{
"priority": 10,
"title": "Telemetry Details",
"href": "apptelemetry/#application-view!noSplash:1",
"icon": "tasks"
}, {
"priority": 20,
"title": "Appliance Health",
"href": "apptelemetry/#status-view!noSplash:1",
"icon": "medkit"
}, {
"priority": 30,
"title": "Performance",
"href": "apptelemetry/#dashboard-view!dashboardId:10097!noSplash:1",
"icon": "dashboard"
}, {
"priority": 40,
"title": "Search Experience",
"href": "apptelemetry/#dashboard-view!dashboardId:10103!noSplash:1",
"icon": "th-list"
"priority": 50,
"id": "queryLogs",
"title": "Query Logs",
"icon": "list-alt",
"href": "mindbreeze-inspire-query-logs"
}, {
"priority": 60,
"id": "queryperformanceTests",
"title": "Query Performance Testing",
"icon": "dashboard",
"href": "mindbreeze-inspire-query-performance-testing"
}]
}]
}
{
"entries": []
}
{
"entries": []
}
{
"entries": [{
"priority": 100,
"id": "searchapps",
"title": "Search Apps",
"icon": "th-large",
"submenu": [{
"priority": 10,
"title": "Client",
"icon": "search"
},
{
"priority": 30,
"title": "Designer",
"href": "{{client_url}}/apps/editor/",
"icon": "edit"
}
]
}]
}
{
"entries": [{
"priority": 100,
"id": "searchapps",
"title": "Insight Apps",
"titlesI18n": {
"de": "Insight Apps",
"en-US": "Insight Apps"
},
"icon": "th-large",
"submenu": [{
"priority": 20,
"title": "Insight Apps",
"titlesI18n": {
"de": "Insight Apps",
"en-US": "Insight Apps"
},
"href": "{{client_url}}/apps/?saveMode=true&storeURL={{encoded_host_url}}&storeProtocol=postMessage",
"icon": "edit"
}
]
}]
}
{
"entries": [{
"priority": 400,
"id": "services",
"title": "Services",
"href": "adminapps/services",
"icon": "cog"
}]
}
{
"entries": [{
"priority": 300,
"id": "searchexperience",
"title": "Search Experience",
"icon": "search",
"submenu": [{
"priority": 10,
"id": "searchexperience",
"title": "Synonyms",
"icon": "list-alt",
"filepath": "vocabulary/synonyms.txt",
"type": "text"
},{
"priority": 20,
"id": "searchexperience",
"title": "Replacements",
"icon": "list-alt",
"filepath": "vocabulary/replacements.csv",
"type": "csv"
},{
"priority": 40,
"id": "searchexperience",
"title": "Vocabulary",
"icon": "list-alt",
"filepath": "vocabulary/vocabulary.csv",
"type": "csv"
}]
}]
}
"entries": [
{
"priority": 150,
"id": "insights",
"title": "Insight Services",
"titlesI18n": {
"de": "Insight Services",
"en-US": "Insight Services"
},
"icon": "bar-chart-o",
"submenu": [
{
"priority": 10,
"id": "text-classification",
"title": "Text Classification",
"titlesI18n": {
"de": "Textklassifizierung",
"en-US": "Text Classification"
},
"icon": "list-alt",
"href": "text-classification"
},
{
"priority": 11,
"id": "rag",
"title": "RAG",
"services": "mindbreeze.plugins.insight.services.rag",
"titlesI18n": {
"de": "RAG",
"en-US": "RAG"
},
"icon": "list-alt",
"href": "rag"
}
]
}
]
}
The adapted JSON files must be stored in the directory: /data/resources/mmc/ and correspond to the following pattern:
menu.{{menu item}}. json.overwrite
A JSON file must consist of a header part and an entries part.
Plugins must be overwritten in the directory with the pattern "menu.resources.plugin.{{plugin-id}}.json.overwrite”.
menu.resources.plugin.[bestbets].json.overwrite
"header": {
"mergestrategy": "keepbuiltin",
"roles": [
"InSpire Resource Administrator"
]
},
"entries": [{
"id": "searchexperience",
"submenu": [{
"priority": 35,
"id": "searchexperience",
"title": "Suggested Sites 2",
"icon": "list-alt",
"filepath": "bestbets.csv",
"type": "csv"
}]
}]
}
menu.vocabulary.json.overwrite
{
"header": {
"mergestrategy": "replace",
"roles": [
"InSpire Administrator"
]
},
"entries": [{
"priority": 300,
"id": "searchexperience",
"title": "New Search Experience",
"icon": "search",
"submenu": [{
"priority": 10,
"id": "searchexperience",
"title": "Synonyms Neu",
"icon": "list-alt",
"filepath": "vocabulary/synonyms.txt",
"type": "text"
}]
}]
}
menu.config.json.overwrite
{
"header": {
"roles": [
"InSpire Administrator"
]
},
"entries": [{
"priority": 500,
"id": "configuration",
"title": "Configuration Neu",
"href": "config",
"icon": "wrench"
}]
}
To customize the menu in the Mindbreeze Management Center, you need the file "resources.json", which is located under /data/resources/.
Important: During an update, this resources.json file will be overwritten to get possible updates. However, a backup of the file is created in the same directory (resources-[TIMESTAMP]).json). This file can be renamed to resources.json so that the old configuration is used.
Hint: Make a backup of the files resources.json and resource-TIMESTAMP.json first.
The configuration is described by an excerpt of the current resources.json file:
[{
"title": "Search Experience",
"icon": "search",
"entries": [
{
"title": "Synonyms",
"icon": "list-alt",
"filepath": "synonyms.csv",
"type": "csv"
},
{
"title": "Custom Site",
"icon": "list-alt",
"url": ":8443/site/to/page",
"type": "url"
},
{
"title": "Query Boostings",
"icon": "list-alt",
"filepath": "term2documentboost.csv",
"type": "csv"
}
]
}]
To extend/create the menu as shown in the image above, a list of objects is specified in this resources.json file. An object consists of a title (here "Search Experience") and a Font-Awesome icon. Each entry is assigned "entries" with the respective subitems (see example).
This file can be extended to adapt the host name for the subitems in "Search Apps", to adapt a port or path if necessary.
For this purpose another object is entered with the key "searchappsbaseurl".
[{
"searchappsbaseurl": "http://meine-domaine.com:12345/"
},{
"title": "Search Experience",
"icon": "search",
"entries": [
{
"title": "Synonyms",
"icon": "list-alt",
"filepath": "synonyms.csv",
"type": "csv"
},
{
"title": "Query Boostings",
"icon": "list-alt",
"filepath": "term2documentboost.csv",
"type": "csv"
},
]
}]
Tip: If the changes are not applied immediately, it can be helpful to empty the browser cache and reload the page.
The Client Service to be used can be selected directly in the Management Center via the dropdown menu on the top right.
In the dropdown menu you see all your available Client Services.
All Client Service related Apps, displayed in Management Center will use the Client Service that is selected in the dropdown. When the Management Center is loaded first time the first available Client Service will be used as Client Service in use. If there is only one available Client Service it will be automatically selected as active.
There is an additional option (at the bottom of select dropdown list) to add a custom Client Service.
When you click “Add Custom URL” a modal with input form will be displayed:
Here you can input you custom ClientService-URL. Valid URLs are e.g. https://yourdomain.com/search/ (including a basepath) or https://yourdomain.com/.
Do not include the path to your client (…/apps/client).
Add the URL by clicking on “Add URL”. After that, all Insight Apps will be loaded from the new custom Client Service URL.
Hint: It is possible to add and modify only one custom Client Service URL and to remove it on page reload.