2014-06-11 91 views
1

我沒有任何問題通過SOAP通用接口在OTRS 3.2服務器中使用php和java訪問票證及其文章信息。但在xml響應中我沒有關於文件附件的信息。OTRS - 通過SOAP獲取文章附件

首先,根據此API文檔(http://otrs.github.io/doc/api/otrs/3.2/Kernel/GenericInterface/Operation/Ticket/TicketGet.pm.html),我使用了TicketGet函數,並將參數DynamicFields,Extended,AllArticles和Attachments設置爲1來獲取票證,但我沒有得到任何關於文章的信息。

接下來,根據這個API(http://otrs.github.io/doc/api/otrs/3.2/Kernel/System/Ticket/Article.pm.html),我使用函數ArticleIndex獲取Id的票據文章,然後ArticleGet獲取具有附件的文章。我通過郵件正文獲取文章信息,但在回覆中沒有附件。

函數調用有問題嗎?也許我錯過了一些參數。 或者也許有一個糟糕的OTRS配置。在Admin-> System config-> Framework和Ticket選項中,有很多事情要改變。

感謝

回答

4

OTRS Appliance 1.0.8只是測試用OTRS幫助臺3.3.8,一切都對我很好。我可以使用TicketGet方法獲取文章和附件。

請參閱以下article描述如何設置OTRS Web服務設置。 OTRS Web服務設置完成

後,我送通過了SoapUI以下SOAP請求OTRS票連接器終點(在我的情況http://192.168.112.34/otrs/nph-genericinterface.pl/Webservice/GenericTicketConnector):

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> 
    <soapenv:Body> 
     <TicketGet> 
     <UserLogin>[email protected]</UserLogin> 
     <Password>root</Password> 
     <TicketID>965</TicketID> 
     <AllArticles>1</AllArticles> 
     <Attachments>1</Attachments> 
    </TicketGet> 
    </soapenv:Body> 
</soapenv:Envelope> 

並獲得響應以下:

<soap:Envelope soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <soap:Body> 
    <TicketGetResponse xmlns="http://www.otrs.org/TicketConnector/"> 
     <Ticket> 
     <Age>160723</Age> 
     <ArchiveFlag>n</ArchiveFlag> 
     <Article> 
      <ArticleID>3260</ArticleID> 
      <ArticleType>webrequest</ArticleType> 
      ... 
      <Attachment> 
      <Content> 
       W0dlbmVyYWxdDQpTZXJ2ZXI9Mg0KQ3JlYXRlVGFibGU9MA0KW0Rlc3RdDQpTYXZlVG9GaWxlPTEN 
       ... 
       aXNoXQ0KTG9hZEludG9FZGl0b3I9MA0KQ2xvc2VBZnRlckNvbXBsaXRlPTANCg== 
      </Content> 
      <ContentAlternative/> 
      <ContentID/> 
      <ContentType>text/plain</ContentType> 
      <Filename>1.smt</Filename> 
      <Filesize>673 Bytes</Filesize> 
      <FilesizeRaw>673</FilesizeRaw> 
      </Attachment> 
      <Attachment> 
      <Content> 
       REVDTEFSRSBAUkMgaW50DQpERUNMQVJFIEBMb2dnZWRVc2VySUQgaW50DQpERUNMQVJFIEBVc2Vy 
       ... 
       Y2hhbmdlc1htbA0KICAsQEJhc2VDb250cmFjdHNYbWwNCkdPDQoNCg== 
      </Content> 
      <ContentAlternative/> 
      <ContentID/> 
      <ContentType>application/octet-stream</ContentType> 
      <Filename>3.sql</Filename> 
      <Filesize>610 Bytes</Filesize> 
      <FilesizeRaw>610</FilesizeRaw> 
      </Attachment> 
      <AttachmentIDOfHTMLBody>3</AttachmentIDOfHTMLBody> 
      <Body>sdfghhfghg</Body> 
     ... 
     </Article> 
     ... 
     </Ticket> 
    </TicketGetResponse> 
    </soap:Body> 
</soap:Envelope> 

正如你所看到的,我得到了票的最初文章,裏面有2個附件。

希望這有助於或不要猶豫,以提供反饋意見。

+1

@ user1151816:如果我的回答很有幫助,您能接受它並且/或者讚不絕口嗎?一年多的時間已經過去了,因爲沒有給出任何反饋/接受,這個線程看起來已經被放棄了,因爲更多的讀者。謝謝。 –