2016-09-21 95 views
1

發送電子郵件我當前使用低於更新的OTRS票通過調用鏈接/otrs/nph-genericinterface.pl/Webservice/GenericTicketConnectorREST/Ticket通過OTRS API

它的偉大工程,但我怎麼能得到它在更新票時也向客戶發送電子郵件?

var body = JSON.stringify ({ 
    "Ticket":{ 
     "StateID":params.state}, 
     "Article":{ 
      "ArticleTypeID":params.noteType, 
      "Subject":params.subject, 
      "Body":params.bodyText, 
      "ContentType":params.contentType 
     } 
    } 
); 

//Build the full URL for our webservice query. 
var LoginURL = authenticate.URL + "/" + 
TicketID + 
"?UserLogin=" + authenticate.UserLogin + 
"&Password=" + authenticate.Password; 

//Perform the actual work. As well as the URL of the webservoce 
var client = new apiclient.ApiClient({ serverid: this.serverid }); 
var resp = client.invoke("formutils", "httpRequest", { 
    "url": LoginURL, 
    "method": "POST", 
    "headers": { 
    "ContentType":"application/json"}, 
    "body": body 
}); 

回答

3

如果更新通過Web服務API票,默認情況下,這將不會觸發發送電子郵件給客戶,甚至如果你設置了文章類型爲「電子郵件外部」。

如果你想做到這一點,最好的方法是創建一個新的通知(之前OTRS 5這將是一個「基於事件的通知」),如下所述:http://otrs.github.io/doc/manual/admin/stable/en/html/administration.html#adminarea-ticket-notifications

可以匹配上ArticleCreate事件,通過Web Service創建票據的用戶,以及其他屬性。

https://github.com/OTRS/otrs/blob/6c87d2b1370b917629a99df7e080b8f87f051581/Kernel/GenericInterface/Operation/Ticket/TicketUpdate.pm#L1936調用內部API ArticleCreate()從不發送電子郵件,而ArticleSend()

有由Znuny發表的擴展,你可以安裝你的OTRS系統暴露這一功能到Web服務以及上:https://github.com/znuny/Znuny4OTRS-GIArticleSend

+0

我沒有創造這個票。我正在更新票證,所以票證本身已經存在。還有什麼需要設置觸發電子郵件? –

+0

你是對的 - 我沒有給予足夠的關注。但它仍然是一個類似的問題,票據更新的Web服務調用內部API'ArticleCreate()',您需要'ArticleSend()'發送郵件給客戶。 – MichielB