Talep Ayarları
Destek alanının genel ayarlarını, e-posta yapılandırmasını ve özel durumları yöneten altı uç.
Genel Bakış
Bu altı uç destek alanının nasıl çalışacağını belirler. İkisi genel ayarları tutar, ikisi e-postadan talep almayı yapılandırır, ikisi de kuruluma özel durumları yönetir.
Genel ayarların içinde iki engelleme anahtarı vardır: hizmeti olmayanlar ve doğrulanmamış hesaplar. İkisi de müşterinin talep açmasını keser; destek kutusu beklenmedik biçimde sessizse ilk bakılacak yer burasıdır.
Özel durumlar standart durumların üzerine oturur. "Parça bekleniyor" gibi bir durum kendi rengiyle ve adıyla görünür, ama iş akışı bakımından hangi standart durumdan türetildiyse öyle davranır.
Referans
Destek Ayarlarını Getirme
Destek alanının genel ayarlarını döndürür.
curl 'https://panel.ornek.com/api/v1/admin/tickets/settings' \
-H "Authorization: Bearer $API_KEY"const res = await fetch('https://panel.ornek.com/api/v1/admin/tickets/settings', {
headers: { Authorization: `Bearer ${apiKey}` },
});
const body = await res.json();$ch = curl_init('https://panel.ornek.com/api/v1/admin/tickets/settings');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . $apiKey],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);// Iki engelleme ayari MUSTERININ talep acmasini keser; destek gelmiyorsa once bunlara bakin.
$s = Api::Tickets()->GetTicketSettings()['data'];Destek Ayarlarını Yazma
Genel destek ayarlarını değiştirir.
curl -X PUT 'https://panel.ornek.com/api/v1/admin/tickets/settings' \
-H "Authorization: Bearer $API_KEY" \
-H 'Content-Type: application/json' \
-d '{"listing_count":25,"refresh_time":60,"ticket_claiming":true}'const res = await fetch('https://panel.ornek.com/api/v1/admin/tickets/settings', {
method: 'PUT',
headers: {
Authorization: `Bearer ${apiKey}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
listing_count: 25,
refresh_time: 60,
ticket_claiming: true,
}),
});
const body = await res.json();$ch = curl_init('https://panel.ornek.com/api/v1/admin/tickets/settings');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'listing_count' => 25,
'refresh_time' => 60,
'ticket_claiming' => true,
]),
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);// Aralik disi bir deger REDDEDILMEZ, sinira cekilir; donen degeri okuyup dogrulayin.
$now = Api::Tickets()->UpdateTicketSettings(['refresh_time' => 1])['data'];
// $now['refresh_time'] === 5Posta Ayarlarını Getirme
E-postadan talep almanın yapılandırmasını döndürür.
curl 'https://panel.ornek.com/api/v1/admin/tickets/pipe-settings' \
-H "Authorization: Bearer $API_KEY"const res = await fetch('https://panel.ornek.com/api/v1/admin/tickets/pipe-settings', {
headers: { Authorization: `Bearer ${apiKey}` },
});
const body = await res.json();$ch = curl_init('https://panel.ornek.com/api/v1/admin/tickets/pipe-settings');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . $apiKey],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);// Burasi YALNIZCA yapilandirmadir; posta kutusu yetkilendirmesi bu uctan gecmez.
$pipe = Api::Tickets()->GetTicketPipeSettings()['data'];Posta Ayarlarını Yazma
E-postadan talep almanın yapılandırmasını değiştirir.
curl -X PUT 'https://panel.ornek.com/api/v1/admin/tickets/pipe-settings' \
-H "Authorization: Bearer $API_KEY" \
-H 'Content-Type: application/json' \
-d '{"enabled":true,"method":1,"spam_control":true,"prefix":"REF"}'const res = await fetch('https://panel.ornek.com/api/v1/admin/tickets/pipe-settings', {
method: 'PUT',
headers: {
Authorization: `Bearer ${apiKey}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
enabled: true,
method: 1,
spam_control: true,
prefix: 'REF',
}),
});
const body = await res.json();$ch = curl_init('https://panel.ornek.com/api/v1/admin/tickets/pipe-settings');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'enabled' => true,
'method' => 1,
'spam_control' => true,
'prefix' => 'REF',
]),
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);// Onek DEGISTIRMEK eski konularla gelen yanitlari talebine baglayamaz hale getirir.
Api::Tickets()->UpdateTicketPipeSettings(['prefix' => 'REF']);Özel Durumları Listeleme
Kurulumun kendi tanımladığı talep durumlarını döndürür.
open, waiting, process, replied, solved.curl 'https://panel.ornek.com/api/v1/admin/tickets/custom-statuses' \
-H "Authorization: Bearer $API_KEY"const res = await fetch('https://panel.ornek.com/api/v1/admin/tickets/custom-statuses', {
headers: { Authorization: `Bearer ${apiKey}` },
});
const body = await res.json();$ch = curl_init('https://panel.ornek.com/api/v1/admin/tickets/custom-statuses');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . $apiKey],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);// Ozel durum standart durumun UZERINE oturur: is akisi tabanina gore isler.
$custom = Api::Tickets()->GetTicketCustomStatuses()['data'];Özel Durumları Yazma
Özel durumların tamamını gönderdiğiniz listeyle değiştirir.
open, waiting, process, replied, solved. Tanınmayan bir değer işlemde durumuna düşer.curl -X PUT 'https://panel.ornek.com/api/v1/admin/tickets/custom-statuses' \
-H "Authorization: Bearer $API_KEY" \
-H 'Content-Type: application/json' \
-d '{"statuses":[{"type":"process","color":"#3399ff","langs":{"tr":"Parca bekleniyor"}}]}'const res = await fetch('https://panel.ornek.com/api/v1/admin/tickets/custom-statuses', {
method: 'PUT',
headers: {
Authorization: `Bearer ${apiKey}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
statuses: [
{
type: 'process',
color: '#3399ff',
langs: { en: 'Awaiting parts', tr: 'Parca bekleniyor' },
},
],
}),
});
const body = await res.json();$ch = curl_init('https://panel.ornek.com/api/v1/admin/tickets/custom-statuses');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'statuses' => [[
'type' => 'process',
'color' => '#3399ff',
'langs' => ['en' => 'Awaiting parts'],
]],
]),
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);// Tek durum eklemek icin bile MEVCUT listeyi okuyup sonuna ekleyin; yazma tam degisimdir.
$all = Api::Tickets()->GetTicketCustomStatuses()['data'];
$all[] = ['type' => 'waiting', 'color' => '#999999', 'langs' => ['en' => 'On hold']];
Api::Tickets()->UpdateTicketCustomStatuses(['statuses' => $all]);Tuzaklar
Yazma ucu gönderdiğiniz listeyle eskisinin tamamını değiştirir: mevcut durumlar silinir, gönderdikleriniz yeniden eklenir. Tek bir durum eklemek için sadece onu göndermek diğerlerini siler. Önce mevcut listeyi okuyun, sonuna ekleyin ve tümünü geri gönderin.
Tam değişim eski kayıtları silip yenilerini eklediği için özel durumlar yeni numaralar alır. Bir talebe atanmış özel durum numarasını kendi tarafınızda saklıyorsanız o numara artık başka bir durumu gösterebilir. Numaraları saklamak yerine her seferinde listeden çözün.
Hizmetsiz müşteri ve doğrulama anahtarları açıkken müşteri talep hiç açamaz. Panelde bir hata görünmez, destek kutusu boş kalır ve bunu bir arıza sanmak kolaydır. Bir kurulumda talep gelmiyorsa önce bu iki alanı okuyun.
Gelen bir e-postanın hangi talebe ait olduğu, konu satırındaki referans önekinden anlaşılır. Öneki değiştirdiğinizde eski konu satırıyla gelen yanıtlar talebini bulamaz ve yeni bir talep olarak düşer. Zaten yazışılan talepler varken öneke dokunmayın.
Sayfa başına kayıt ve tazeleme süresi belirli aralıklara çekilir. Bir saniyelik tazeleme istemek hata vermez; ayar sessizce en düşük değere oturur. Gönderdiğiniz değerin yazıldığını varsaymayın, dönen yanıttaki değeri okuyun.
İlgili Makaleler
Geri bildiriminiz için teşekkürler!
Yukarıda bulamadığınız her şey için destek ekibimiz her zaman yanınızda.