Copyright ©
Mindbreeze GmbH, A-4020 Linz, .
Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen und/oder Marken der jeweiligen Hersteller.
Diese Unterlagen sind streng vertraulich. Durch die Übermittlung und Präsentation dieser Unterlagen alleine werden keine Rechte an unserer Software, an unseren Dienstleistungen und Dienstleistungsresultaten oder sonstigen geschützten Rechten begründet. Die Weitergabe, Veröffentlichung oder Vervielfältigung ist nicht gestattet.
Aus Gründen der einfacheren Lesbarkeit wird auf die geschlechtsspezifische Differenzierung, z.B. Benutzer/-innen, verzichtet. Entsprechende Begriffe gelten im Sinne der Gleichbehandlung grundsätzlich für beide Geschlechter.
Im InSpire Management Center ist es möglich, eigene Menüpunkte zu hinterlegen bzw. diese zu überschreiben. So können z.B. CSV-Files oder Text-Files direkt in das Mindbreeze Management Center eingebunden und bearbeitet werden. Die Berechtigungen werden weiterhin laut Backend Credentials geprüft.
Je nachdem welche Variante verwendet wird (Rollen oder resource.json), wird die Dokumentation unterschieden.
Sämtliche Menüpunkte werden über Rollen gesteuert angezeigt, wenn kein resource.json vorhanden ist. Andernfalls wird das Menü in gewohnter Art geladen (siehe resource.json).
Achtung: Dieses Feature ist nur mit CentOS 7 verfügbar.
User können im Management Center unter „Credentials“ verwaltet werden. Für mehr Informationen siehe Konfiguration - Backend Credentials.
Wichtig: Jeder User, welches das Management Center verwendet, muss die Rolle „InSpire Overview User” haben.
Rolle | Angezeigte Menüpunkte |
InSpire Administrator | Search Apps, Reporting, Search Experience, Services, Configuration, Setup, Update, System |
InSpire app.telemetry Administrator | Reporting |
InSpire Client User | Search Apps (Nicht 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 (Vollständig inkl. Plugins) |
InSpire Insight Services Administrator | Insight Services |
Wenn Rollen verfügbar sind (data/resources/resource.json existiert nicht) lauten die Menüpunkte wie folgt.
{
"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",
"href": "{{client_url}}/",
"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"
}
]
}
]
}
Die angepassten JSON-Files müssen im Verzeichnis: /data/resources/mmc/ abgelegt werden und folgendem Muster entsprechen:
menu.{{menupunkt}}.json.overwrite
Ein JSON-File muss aus einem Header-Teil und einem Entries-Teil bestehen.
Plugins sind im Verzeichnis mit dem Muster „menu.resources.plugin.{{plugin-id}}.json.overwrite“ zu überschreiben.
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"
}]
}
Um das Menü im Mindbreeze Management Center anzupassen, wird die Datei „resources.json“ benötigt, welches sich unter /data/resources/ befindet.
Wichtig: Bei einem Update, wird die Datei resources.json überschrieben, um mögliche Updates zu erhalten. Allerdings wird ein Backup der Datei im selben Verzeichnis erstellt (resources-[TIMESTAMP].json). Dieses File kann wieder zu resources.json umbenannt werden, sodass die alte Konfiguration verwendet wird.
Hinweis: Zuvor von den Dateien resources.json und resource-TIMESTAMP.json ein Backup anlegen.
Die Konfiguration wird anhand eines Auszuges der aktuellen resources.json Datei beschrieben:
[{
"title": "Search Experience",
"icon": "search",
"entries": [
{
"title": "Synonyms",
"icon": "list-alt",
"filepath": "synonyms.csv",
"type": "csv"
},
{
"icon": "list-alt",
"url": ":8443/site/to/page",
"type": "url"
},
{
"title": "Query Boostings",
"icon": "list-alt",
"filepath": "term2documentboost.csv",
"type": "csv"
}
]
}]
Um das Menü wie im Bild oben zu erweitern/erstellen, wird eine Liste von Objekten in dieser resources.json Datei angegeben. Ein Objekt besteht dazu aus einem Titel (hier „Search Experience“) und einem Font-Awesome Icon. Dazu erhält jeder Eintrag „entries“ mit den jeweiligen Unterpunkten (siehe Beispiel).
Um den Hostnamen für die Unterpunkte in „Search Apps“ anpassen zu können, um ggf. einen Port oder Pfad anzupassen, kann diese Datei erweitert werden.
Dazu wird ein weiteres Objekt mit dem Key „searchappsbaseurl“ eingetragen.
"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"
},
]
}]
Tipp: Sollte die Änderungen nicht sofort übernommen sein, kann es hilfreich sein, den Browsercache zu leeren und die Seite neu zu laden.
Das zu verwendende Client Service kann direkt im Management Center über das Dropdown Menü oben rechts ausgewählt werden.
Im Dropdown Menü werden alle verfügbaren Client Services aufgelistet.
Alle Menüpunkte mit Bezug zu einem Client Service verwenden das entsprechend ausgewählte Client Service. Wenn das Management Center das erste Mal geladen wird, wird das erste verfügbare Client Service als verwendetes Client Service verwendet. Wenn nur ein Client Service verfügbar ist, wird dieses auch automatisch verwendet.
Eine zusätzliche Option am Ende der Dropdownliste ermöglicht es, eine alternative Client Service URL anzugeben, wenn diese nicht in der Liste aufscheinen sollte.
Mit einem Klick auf „Add Custom URL“ öffnet sich ein Fenster mit der Eingabemöglichkeit einer Custom-URL:
Folgende URLs können hier eingegeben werden: https://yourdomain.com/search/ (auch mit einem Basepath) jedoch nicht die URL zur Insight App selbst (z.B. https://yourdomain.com/apps/client).
Mit einem Klick auf „Add URL“ werden alle relevanten Insight Apps (innerhalt vom Managment Center) mit der jeweiligen URL angezeigt.
Hinweis: Es kann nur jeweils eine Client Service URL angegeben werden und diese wird nach einem Reload wieder entfernt.