1

誰かがOTRS用の良いJavaクライアントを知っていますか、それとも自分のクライアントを書くための情報ページをいくつか教えてもらえますか? 私は OTRS をまったく初めて使用しますが、OTRS のほとんどの作業を Java REST クライアントで行うための外部インターフェース (Web サービス) があると聞いていました。

誰かがいくつかの情報ページをリンクできますか? おそらく、OTRS を使用して REST WS を作成する方法の例と、その使用方法のいくつかのカールの例がありますか?

すでに見つかったリンク:

  1. https://github.com/gtudan/OTRS-Client --> メンテナンスレベルが低い
  2. https://www.otrs.com/otrs-help-desk-software-unterstuetzt-jetzt-rest/?lang=de
  3. http://otrs.github.io/doc/manual/admin/stable/en/html/genericinterface.htmls
  4. ...

この yaml ファイルを使用して Web サービスを作成しました。

---
Debugger:
  DebugThreshold: debug
  TestMode: '0'
Description: The description of WS
FrameworkVersion: 4.0.5
Provider:
  Operation:
    TicketGet:
      Description: ''
      MappingInbound:
        Type: Simple
      MappingOutbound:
        Type: Simple
      Type: Ticket::TicketGet
  Transport:
    Config:
      KeepAlive: ''
      MaxLength: '20000000'
      RouteOperationMapping:
        TicketGet:
          Route: /Ticket/:TicketID
    Type: HTTP::REST
RemoteSystem: ''
Requester:
  Transport:
    Type: ''

次に、WS にカールしようとします。

curl -i -H "Content-Type: application/json" -d {UserLogin:"user",Password="userpass",Ticket={Title="test"}} http://localhost/otrs/nph-genericinterface.pl/Webservice/Test/Ticket/1

しかし、うまくいきません。

4

1 に答える 1

5

まず、Web サービスにどのように名前を付けるかが重要です。「テスト」を選択します。この yml をインポートするか、独自の WS を作成し、config yml をエクスポートして、以下のように変更します。変更を保存して、このファイルを再インポートします。

---
Debugger:
  DebugThreshold: debug
  TestMode: '0'
Description: Is used by me
FrameworkVersion: 4.0.5
Provider:
  Operation:
    TicketGet:
      Description: ''
      MappingInbound:
        Type: Simple
      MappingOutbound:
        Type: Simple
      Type: Ticket::TicketGet
    TicketUpdate:
      Description: ''
      MappingInbound:
        Type: Simple
      MappingOutbound:
        Type: Simple
      Type: Ticket::TicketUpdate
  Transport:
    Config:
      KeepAlive: ''
      MaxLength: '20000000'
      RouteOperationMapping:
        TicketGet:
          Route: /TicketGet/:TicketID
        TicketUpdate:
          RequestMethod:
          - POST
          Route: /TicketUpdate/:TicketID
    Type: HTTP::REST
RemoteSystem: ''
Requester:
  Transport:
    Type: ''

次に、チケット ID 1 のチケットが存在し、「最初のタイトル」などのタイトルがあることを確認します。

次に、このカールを使用します。

curl -X POST -i -H "content-type: application/json" -d '{"UserLogin": "user", "Ticket": {"Title": "changeme"}, "Password": "userpass"}' "http://localhost/otrs/nph-genericinterface.pl/Webservice/Test/TicketUpdate/1"

WS に「Test123xy」のような名前を付ける場合は、curl URL の名前を変更します

".../Webservice/Test/..." 

".../Webservice/Test123xy/..."

今ではうまくいきます。

于 2015-02-24T12:31:22.597 に答える