<?xml version="1.0" encoding="UTF-8"?>
	<rss version="2.0"
		xmlns:content="http://purl.org/rss/1.0/modules/content/"
		xmlns:wfw="http://wellformedweb.org/CommentAPI/"
		xmlns:dc="http://purl.org/dc/elements/1.1/"
		xmlns:atom="http://www.w3.org/2005/Atom"

			>

	<channel>

		<title>OTOBO &#187; Alle Themen</title>
		<atom:link href="https://otobo.io/topics/feed/" rel="self" type="application/rss+xml" />
		<link>https://otobo.io/topics/feed/</link>
		<description></description>
		<lastBuildDate>Sat, 27 Jun 2026 10:40:47 +0000</lastBuildDate>
		<generator>https://bbpress.org/?v=2.6.14</generator>
		<language>de</language>

		
		
			
				<item>
					<guid>https://otobo.io/forums/topic/otobo-11-1-beta-problem-mit-dem-einrichten-der-email-oaut2/</guid>
					<title><![CDATA[Otobo 11.1 Beta &#8211; Problem mit dem einrichten der Email OAut2]]></title>
					<link>https://otobo.io/forums/topic/otobo-11-1-beta-problem-mit-dem-einrichten-der-email-oaut2/</link>
					<pubDate>Fri, 26 Jun 2026 20:22:47 +0000</pubDate>
					<dc:creator>marcel-graf</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 4</p>
						<p>Hallo Zusammen,</p>
<p>soeben haben wir mal auf dem Testsystem die neue Otobo 11.1 Beta installiert.</p>
<p>Da wir zum Abholen bisher immer das Paket &#8222;MailAccount-OAuth2&#8220; benutzt haben, habe ich versucht über den Punkt OIDC Anbieter-Profile das einzustellen. Leider kommt hier der Fehler, dass die Tabelle nicht existiert.</p>
<p>(siehe Bild)</p>
<p>Gibt es ein Howto zum umsetzen?</p>
<p><img decoding="async" src="https://otobo.io/wp-content/uploads/hm_bbpui/42050/tsqdh57nbkt527nkk4uifg76qh6ursj1.png" alt="" /></p>
<p>Gruß Marcel</p>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/otobo-11-1-beta-jetzt-verfuegbar/</guid>
					<title><![CDATA[OTOBO 11.1 (Beta) – jetzt verfügbar]]></title>
					<link>https://otobo.io/forums/topic/otobo-11-1-beta-jetzt-verfuegbar/</link>
					<pubDate>Fri, 26 Jun 2026 10:41:17 +0000</pubDate>
					<dc:creator>Pia Cebic</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 1</p>
						<p>OTOBO 11.1 (Beta) ist nicht nur voll von Quality-of-Life-Improvements, sondern bietet auch echte Mehrwerte in den Bereichen Modellierung, Integration &amp; Systemanbindung sowie Administration.</p>
<p>Alle Neuerungen im Überblick.</p>
<div  class='avia-iframe-wrap'>
<blockquote class="wp-embedded-content" data-secret="i5nMgorYeW"><p><a href="https://otobo.io/de/otobo-11-1-beta/">OTOBO 11.1 Beta</a></p></blockquote>
<p><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" style="position: absolute; visibility: hidden;" title="&#8222;OTOBO 11.1 Beta&#8220; &#8211; OTOBO" src="https://otobo.io/de/otobo-11-1-beta/embed/#?secret=ixnHiFik6P#?secret=i5nMgorYeW" data-secret="i5nMgorYeW" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></div>
<p>&nbsp;</p>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/otobo-11-1-beta-available-now/</guid>
					<title><![CDATA[OTOBO 11.1 (Beta) &#8211; – Available Now]]></title>
					<link>https://otobo.io/forums/topic/otobo-11-1-beta-available-now/</link>
					<pubDate>Fri, 26 Jun 2026 08:47:59 +0000</pubDate>
					<dc:creator>Pia Cebic</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 0</p>
						<p>OTOBO 11.1 is packed with quality-of-life improvements and delivers real value in modeling, integration &amp; system connectivity, and administration.</p>
<p>What&#8217;s new in OTOBO 11.1 (Beta):</p>
<div  class='avia-iframe-wrap'>
<blockquote class="wp-embedded-content" data-secret="DCV6d1VydM"><p><a href="https://otobo.io/en/otobo-11-1-beta/">OTOBO 11.1 Beta</a></p></blockquote>
<p><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" style="position: absolute; visibility: hidden;" title="&#8220;OTOBO 11.1 Beta&#8221; &#8212; OTOBO" src="https://otobo.io/en/otobo-11-1-beta/embed/#?secret=xjrtcQXjAo#?secret=DCV6d1VydM" data-secret="DCV6d1VydM" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></div>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/cmdb-ubersicht-spalten-anpassen-ggf-auch-im-customeruser-dashboard/</guid>
					<title><![CDATA[CMDB Übersicht Spalten anpassen, ggf. auch im CustomerUser Dashboard]]></title>
					<link>https://otobo.io/forums/topic/cmdb-ubersicht-spalten-anpassen-ggf-auch-im-customeruser-dashboard/</link>
					<pubDate>Mon, 22 Jun 2026 21:33:37 +0000</pubDate>
					<dc:creator>Sascha Behnsen</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 0</p>
						<p>Guten Abend zusammen,</p>
<p>gibt es die Möglichkeit, die Übersicht der Spalten der CMDB anzupassen? Bzw. zusätzliche Spalten (Kunde, Standort, etc.) einzublenden?</p>
<p>Was ich dazu finden konnte, zeigt keine Auswirkungen und ich bin mir auch nicht sicher, ob das korrekt ist. Beim alten OTRS gab es dazu diverse mehr Settings bezüglich der &#8222;ShowColumns&#8220;. Muss das irgendwie gesondert freigeschaltet werden oder geht das über .tt files?</p>
<p>LinkObject::ITSMConfigItem::ShowColumns<br />
LinkObject::ITSMConfigItem::ShowColumnsByClass</p>
<p>Vielen Dank schon einmal!</p>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/customeruser-backend-via-oidc-moeglich/</guid>
					<title><![CDATA[CustomerUser Backend via OIDC möglich?]]></title>
					<link>https://otobo.io/forums/topic/customeruser-backend-via-oidc-moeglich/</link>
					<pubDate>Mon, 22 Jun 2026 09:06:50 +0000</pubDate>
					<dc:creator>Sascha Behnsen</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 13</p>
						<p>Hallo zusammen!</p>
<p>Wir haben unser OTOBO 11 Docker via OpenIDConnect an Entra angebunden. Agent und Customer Login. Das hat soweit mittels Hilfe aus dem FAQ und Google Suche auch geklappt :-)</p>
<p>Derzeit haben wir aber die Customeruser noch via LDAP Sync (genau wie ehem. unser OTRS) an unser lokales AD angebunden und hier ein &#8222;wildes&#8220; Mapping mit zig zusätzlichen Feldern.<br />
Also via Module =&gt; &#8218;Kernel::System::CustomerUser::LDAP&#8216;,</p>
<p>Hier stellt sich mir die Frage und ich habe dazu nichts im Forum oder der Defaults.pm gefunden:<br />
Kann man das auch über Entra beziehen, so dass kein lokales AD mehr nötig ist? Die Felder / ExtensionAttibutes haben wir soweit bereits ins Entra gesynct.</p>
<p>Bei OTRS scheint es zu geben:<br />
Kernel::System::CustomerUser::OIDC</p>
<p>Bei OTOBO habe ich dazu &#8211; wie gesagt &#8211; nichts gefunden. Vielleicht hat ja jemand sowas schon mal probiert oder es ist in Planung?</p>
<p>Danke und VG,<br />
Sascha</p>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/ticket-benachrichtigungen-an-kundenbenutzer-wird-doppelt-ausgefuehrt/</guid>
					<title><![CDATA[<span class="dashicons dashicons-lock" style="font-size:90%;vertical-align:middle;"></span> Ticket-Benachrichtigungen an Kundenbenutzer wird doppelt ausgeführt]]></title>
					<link>https://otobo.io/forums/topic/ticket-benachrichtigungen-an-kundenbenutzer-wird-doppelt-ausgefuehrt/</link>
					<pubDate>Tue, 16 Jun 2026 14:22:09 +0000</pubDate>
					<dc:creator>Sascha Behnsen</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 5</p>
						<p>Hallo zusammen,</p>
<p>wir haben eine nagelneue OTOBO 11 Docker aufgesetzt und wollen damit unser OTRS 6 ablösen.</p>
<p>Funktioniert soweit auch alles prima. Jetzt habe ich die Idee gehabt, via Ticket-Benachrichtigungen auch die Kundenbenutzer zu informieren, wenn wir ein neues Ticket einem Bearbeiter zuweisen (TicketOwner). So nach dem Motto: xy ist jetzt zuständig und bearbeitet das Ticket in Kürze weiter.</p>
<p>Das ist quasi eine Kopie der vorhandenen &#8222;Ticket owner update notification&#8220; nur mit der Änderung &#8222;Senden an&#8220;: &#8222;Kundenbenutzer des Tickets&#8220;. Und abweichender Text natürlich.</p>
<p>Problem:<br />
Das wird immer direkt 2x ausgeführt, wenn man ein unzugeordnetes und neues Ticket aus der Raw Queue mittels &#8222;Priorität&#8220; Button entsprechend einer anderen Queue und gleichzeitig auch einem Besitzer neu zuweist. Wenn die Queue erst im Nachgang manuell geändert wird, dann passiert nichts. Wie erwartet und auch konfiguriert&#8230;</p>
<p>Scheinbar wird das durch das gleichzeite Ändern der Queue doppelt getriggert. Können wir das irgendwie verhindern oder müssen wir unseren &#8222;Flow&#8220; anpassen?</p>
<p>Vielen Dank schon einmal und VG<br />
Sascha</p>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/add-button-textbausteine/</guid>
					<title><![CDATA[Add Button &#8211; Textbausteine]]></title>
					<link>https://otobo.io/forums/topic/add-button-textbausteine/</link>
					<pubDate>Fri, 12 Jun 2026 15:19:12 +0000</pubDate>
					<dc:creator>marcel-graf</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 0</p>
						<p>Folgend ein Beispiel, wie man einen Textbaustein Button in die AgentTicketCompose Oberfäche einbindet.</p>
<p><img decoding="async" src="https://otobo.io/wp-content/uploads/hm_bbpui/41698/zhwx4slmf7t4kutmyuefobj9ajps0mnt.png" alt="" /></p>
<p>In der Otobo Console folgendes durchführen:</p>
<p><strong>#&#8212; sicherstellen, das der Pfad existiert&#8212;</strong></p>
<p>mkdir -p /opt/otobo/Custom/Kernel/Output/HTML/Templates/Standard/</p>
<p><strong>#&#8212;die Datei in den Pfad kopieren &#8212;</strong></p>
<p>cp /opt/otobo/Kernel/Output/HTML/Templates/Standard/AgentTicketCompose.tt /opt/otobo/Custom/Kernel/Output/HTML/Templates/Standard/</p>
<p><strong>#&#8211;die Datei zum bearbeiten öffnen&#8211;</strong></p>
<p>nano /opt/otobo/Custom/Kernel/Output/HTML/Templates/Standard/AgentTicketCompose.tt</p>
<p>nach Zeile 343 ( &lt;!&#8211; OutputFilterHook_NoTicketOptionsFallback &#8211;&gt;) folgenden Code Einfügen</p>
<p>#&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>&lt;!&#8211; Beginn Ihrer Textbausteine im OTOBO-Layout &#8211;&gt;</p>
<div class="Row Row_Spacing">
&lt;label style=&#8220;font-size: 12px;&#8220;&gt;Textbausteine:&lt;/label&gt;</p>
<div class="Field">
<p>&lt;select class=&#8220;Button&#8220;<br />
style=&#8220;padding: 2px 5px; font-size: 11px; vertical-align: middle; cursor: pointer; display: inline-block; width: 180px; height: 21px; border: 1px solid #ccc; box-shadow: none; background: #fff;&#8220;<br />
onchange=&#8220;event.stopPropagation();<br />
if(!this.value) return;</p>
<p>// 1. In Zwischenablage kopieren (Als Fallback)<br />
const tempInput = document.createElement(&#8218;textarea&#8216;);<br />
tempInput.value = this.value;<br />
document.body.appendChild(tempInput);<br />
tempInput.select();<br />
document.execCommand(&#8218;copy&#8216;);<br />
document.body.removeChild(tempInput);</p>
<p>// 2. Text in den Editor einfügen (Der Textbaustein wird eingefügt und 2 Zeilenumbrüche werden angehängt)<br />
const htmlContent = this.value.replace(/\n/g, &#8218;&lt;br&gt;&#8216;) + &#8218;&lt;br&gt;&lt;br&gt;&#8216;;</p>
<p>// Fall A: OTOBO nutzt den alten CKEditor 4<br />
if (typeof CKEDITOR !== &#8218;undefined&#8216; &amp;&amp; CKEDITOR.instances) {<br />
const activeEditor = CKEDITOR.currentInstance || Object.values(CKEDITOR.instances);<br />
if (activeEditor) {<br />
activeEditor.focus();<br />
activeEditor.insertHtml(htmlContent);<br />
}<br />
}<br />
// Fall B: OTOBO 11 nutzt den neuen CKEditor 5<br />
else {<br />
// Findet das Eingabefeld des CKEditor 5 im aktuellen Formular<br />
const editable = document.querySelector(&#8218;.ck-editor__editable&#8216;);<br />
if (editable &amp;&amp; editable.ckeditorInstance) {<br />
const editorInstance = editable.ckeditorInstance;<br />
editorInstance.focus();</p>
<p>// Fügt den HTML-Inhalt an der Cursorposition ein<br />
const viewFragment = editorInstance.data.processor.toView(htmlContent);<br />
const modelFragment = editorInstance.data.toModel(viewFragment);<br />
editorInstance.model.insertContent(modelFragment);<br />
}<br />
}</p>
<p>// Dropdown zurücksetzen<br />
this.selectedIndex = 0;&#8220;&gt;<br />
&lt;option value=&#8220;&#8220; selected disabled&gt;📝 bitte auswählen&#8230;&lt;/option&gt;<br />
&lt;option value=&#8220;Hallo zusammen,</p>
<p>vielen Dank für Ihre Nachricht.</p>
<p>Mit freundlichen Grüßen&#8220;&gt;Begrüßung Standard&lt;/option&gt;<br />
&lt;option value=&#8220;Wir haben Ihr Ticket erhalten und prüfen den Vorfall aktuell in unserer Fachabteilung. Wir melden uns schnellstmöglich wieder bei Ihnen.&#8220;&gt;Zwischenbescheid&lt;/option&gt;<br />
&lt;/select&gt;</p>
</div>
</div>
<p>&lt;!&#8211; Ende Ihrer Textbausteine &#8211;&gt;</p>
<p>#&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>#&#8212;hier beginnt der vorhandene Code&#8212;<br />
&lt;label class=&#8220;Mandatory&#8220; for=&#8220;RichText&#8220;&gt;<span class="Marker">*</span>[% Translate(&#8222;Text&#8220;) | html %]:&lt;/label&gt;</p>
<p>#&#8212;Datei speichern und den Cache löschen</p>
<p>bin/otobo.Console.pl Maint::Loader::CacheCleanup</p>
<p>Wie immer vor Änderungen am System ein Backup machen.</p>
<p>Gruß Marcel</p>
<p>&nbsp;</p>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/benachrichtigung-ticket-wurde-mir-entzogen-moglich/</guid>
					<title><![CDATA[Benachrichtigung &#8222;Ticket wurde mir entzogen&#8220; möglich?]]></title>
					<link>https://otobo.io/forums/topic/benachrichtigung-ticket-wurde-mir-entzogen-moglich/</link>
					<pubDate>Fri, 12 Jun 2026 13:00:37 +0000</pubDate>
					<dc:creator>Lars Berger</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 9</p>
						<p>Hallo zusammen,</p>
<p>ich hätte gerne eine Benachrichtigung, wenn mir ein Ticket entzogen wird.</p>
<p>Ich bin der Besitzer von Ticket XY, ein anderer Agent wechselt den Besitzer auf sich oder auf einen anderen Agenten.</p>
<p>Ich möchte quasi als letzter Besitzer benachrichtigt werden, wenn mir ein Ticket genommen wird.</p>
<p>Gibt es diese Möglichkeit?</p>
<p>Gruß Lars</p>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/customer-dashboard/</guid>
					<title><![CDATA[<span class="dashicons dashicons-lock" style="font-size:90%;vertical-align:middle;"></span> Customer Dashboard]]></title>
					<link>https://otobo.io/forums/topic/customer-dashboard/</link>
					<pubDate>Thu, 11 Jun 2026 12:57:57 +0000</pubDate>
					<dc:creator>Kevin Puhl</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 0</p>
						<p>Moin,</p>
<p>ich möchte im Customer-Dashboard die Richtext-Infokachel sowie das Ankündigungs- bzw. Laufband anpassen.</p>
<p>Leider konnte ich bislang nicht nachvollziehen, über welche Einstellungen diese Inhalte in der Admin-Oberfläche konfiguriert werden können.</p>
<p>Laut OTOBO-Dokumentation sollte Folgendes möglich sein:</p>
<p>Richtext-Infokachel<br />
Diese Infokachel unterstützt Richtext und wird direkt über die Admin-Oberfläche konfiguriert. Unterschiedliche Bereiche können eigene Abschnitte innerhalb der Kachel pflegen. Außerdem gibt es ein zusätzliches Laufband für aktuelle Meldungen, das im gesamten Kundenbereich angezeigt wird.<br />
In der Systemkonfiguration konnte ich jedoch keine entsprechende Möglichkeit zur inhaltlichen Anpassung finden.</p>
<p>Daher meine Frage: Über welche konkreten Einstellungen oder Komponenten (z. B. Systemkonfiguration, Dashboard-Tiles oder Templates) werden diese Inhalte tatsächlich gesteuert?</p>
<p>Vielen Dank vorab für die Unterstützung.</p>
<p>Viele Grüße</p>
						]]>
					</description>

					
					
					
				</item>

				
				<item>
					<guid>https://otobo.io/forums/topic/add-button-kundenbenutzer-anrufen-cti-anruf-button/</guid>
					<title><![CDATA[Add Button &#8211; Kundenbenutzer anrufen (CTI-Anruf-Button)]]></title>
					<link>https://otobo.io/forums/topic/add-button-kundenbenutzer-anrufen-cti-anruf-button/</link>
					<pubDate>Thu, 11 Jun 2026 12:19:10 +0000</pubDate>
					<dc:creator>marcel-graf</dc:creator>

					
					<description>
						<![CDATA[
						<p>Antworten: 1</p>
						<p>als Erweiterung zu dem Thema &#8222;<a href="https://otobo.io/forums/topic/add-button-zum-kopieren-der-ticketnummer/#post-41647">Add Button zum kopieren der Ticketnummer</a>&#8222;, haben wir jetzt noch eine Button &#8220; Kundenbenutzer anrufen&#8220; eingefügt, mit dem man den Kundenbenutzer anrufen kann.</p>
<p><img decoding="async" src="https://otobo.io/wp-content/uploads/hm_bbpui/41670/sol4n38dpe0gxmovme382017jbok4vcv.png" alt="" /></p>
<p>Vorraussetzung:</p>
<p>-Telefonnumer in den Stammdaten vom Kundenbenutzer gepflegt</p>
<p>-Telefonanalge unterstützt die Funktion, dass man per URL Aufruf einen Call absetzen kann.</p>
<p>Folgender Code wird in der Datei &#8222;AgentTicketZoom.tt&#8220; in den &lt;h1&gt; Tag eingefügt, siehe dazu Post &#8222;Add Button zum kopieren der Ticketnummer&#8220;.</p>
<p>&lt;!&#8211; 2. CTI-Anruf-Button (Einfache Anführungszeichen und kurzer CSS-Pfad) &#8211;&gt;<br />
&lt;button type=&#8220;button&#8220;<br />
class=&#8220;Button&#8220;<br />
style=&#8220;margin-left: 10px; padding: 2px 8px; font-size: 11px; vertical-align: middle; cursor: pointer; display: inline-block; background-color: #d9e1f2; border-color: #8ea9db;&#8220;<br />
onclick=&#8220;event.stopPropagation();</p>
<p>let customerPhone = &#8220;;</p>
<p>// Wir starten direkt in der Kunden-Box und holen ALLE Absätze<br />
const elements = document.querySelectorAll(&#8218;#Async_0200-CustomerInformation p.Value.FixedValueSmall&#8216;);</p>
<p>for (let el of elements) {<br />
const rawText = el.textContent.trim();<br />
// Wenn der Absatz eine Zahl enthält und KEIN @-Zeichen (E-Mail) ist, haben wir die Telefonnummer<br />
if (/[0-9]/.test(rawText) &amp;&amp; !rawText.includes(&#8218;@&#8216;)) {<br />
customerPhone = rawText;<br />
break;<br />
}<br />
}</p>
<p>// Bereinigt die Rufnummer für Ihren AutoIt-Client<br />
customerPhone = customerPhone.replace(/[^0-9+]/g, &#8220;);</p>
<p>// Sicherheitsprüfung, falls kein Feld zutrifft<br />
if (!customerPhone || customerPhone.length &lt; 3) {<br />
this.textContent = &#8218;Keine Nummer!&#8216;;<br />
setTimeout(() =&gt; this.textContent = &#8218;Kunden anrufen&#8216;, 2000);<br />
return;<br />
}</p>
<p>// Die CTI-URL für Ihren CTI-Client<br />
const ctiUrl = &#8218;<a href="http://localhost:4444/acc-client/cti?cmd=dial&#038;param=&#038;#8216" rel="nofollow">http://localhost:4444/acc-client/cti?cmd=dial&#038;param=&#038;#8216</a>; + encodeURIComponent(customerPhone);</p>
<p>// HTTP-Aufruf im Hintergrund abfeuern (InetRead)<br />
fetch(ctiUrl, { mode: &#8217;no-cors&#8216; })<br />
.then(() =&gt; {<br />
this.textContent = &#8218;Wähle: &#8218; + customerPhone;<br />
})<br />
.catch(err =&gt; {<br />
console.error(&#8218;CTI Fehler:&#8216;, err);<br />
this.textContent = &#8218;Fehler!&#8216;;<br />
});</p>
<p>setTimeout(() =&gt; this.textContent = &#8218;Kunden anrufen&#8216;, 2500);&#8220;&gt;<br />
Kunden anrufen<br />
&lt;/button&gt;</p>
<p>Gruß Marcel</p>
<p>&nbsp;</p>
						]]>
					</description>

					
					
					
				</item>

							
		
	</channel>
	</rss>

