Einstieg
OTOBO Python SDK installieren und das erste Ticket über die GenericInterface REST API erstellen.
Einstieg — OTOBO Python SDK
Webservice erforderlich.
pip install otoboallein reicht nicht. Zuerst GenericInterface REST einrichten — siehe Webservice einrichten.
pip install otobo
from otobo import OTOBOClient, BasicAuth, ClientConfig, TicketCreate, TicketOperation
Voraussetzungen
- OTOBO mit aktivem GenericInterface und konfiguriertem REST-Webservice
- Agent-Login mit Webservice-Berechtigung
- Python 3.11+
Ohne Webservice: Webservice einrichten — otobo-cli setup-system auf dem OTOBO-Host.
OTOBO-Begriffe
| OTOBO-Begriff | Bedeutung für dieses SDK |
|---|---|
| Webservice | Benannte REST-Schnittstelle; ClientConfig.webservice_name muss übereinstimmen |
| Operation | Eine Ticket-Aktion; Eintrag in operation_url_map |
| Agent-Login | Benutzer für BasicAuth |
| Queue | Ticket-Eingang; z. B. IdName(name="Raw") |
| Dynamic Field | Benutzerdefiniertes Feld; als dict[str, str] übergeben |
Konfiguration
config = ClientConfig(
base_url="https://your-otobo-server",
webservice_name="PythonClientWebService",
operation_url_map={
TicketOperation.CREATE: "ticket-create",
TicketOperation.GET: "ticket-get",
TicketOperation.SEARCH: "ticket-search",
TicketOperation.UPDATE: "ticket-update",
},
)
client = OTOBOClient(config)
client.login(BasicAuth(user_login="agent1", password="secret"))
Ticket anlegen
import asyncio
from otobo import Article, IdName, TicketCreate
async def main() -> None:
ticket = TicketCreate(
title="Neue Anfrage",
queue=IdName(name="Raw"),
article=Article(subject="Hallo", body="Tickettext"),
)
async with client:
created = await client.create_ticket(ticket)
print(created.id)
asyncio.run(main())
