Uygulama Tanımlayıcısı

Uygulama tanımlayıcısı, Crowdin uygulamalarının temel yapı taşlarından biridir. Uygulama tanımlayıcısı, uygulamanın çalışmak veya genişletmek istediği modüllerinin yanı sıra uygulamanın genel bilgilerini içeren bir JSON dosyasıdır (örneğin, crowdin.json). Uygulamanın nasıl çalışacağını, hangi kaynakların kullanılacağını, vb. açıklar. Aşağıda bir örnek görebilirsiniz.​

Uygulama Tanımlayıcısı Yapısı

{
   "identifier": "uygulama-tanımlayıcım",
   "name": "Uygulamam",
   "description": "Uygulama açıklaması",
   "logo": "/assets/logos/uyg-logo.png",
   "baseUrl": "http://ornek.com",
   "authentication": {
       "type": "authorization_code",
       "clientId": "istemci-kimliğiniz"
   },
   "events": {
       "installed": "/hooks/installed"
   },
   "scopes": [
       "project"
   ],
   "modules": {
       "integrations": [
           {
               "key": "modül-anahtarım",
               "name": "Modül Adı",
               "description": "Modül açıklaması",
               "logo": "/assets/logos/modul-logo.png",
               "url": "/page/integration"
           }
       ]
   }
}
identifier

Tür: dizgi (^[a-zA-Z0-9-._]+$)

Zorunlu: evet

Açıklama: Uygulamayı tanımlamak için benzersiz bir anahtar. Bu tanımlayıcı şöyle olmak zorundadır: <= 255 characters.

name

Tür: dizgi

Zorunlu: evet

Açıklama: Uygulamanın okunabilir adı.

baseUrl

Tür: dizgi (uri)

Zorunlu: evet

Açıklama: Uygulama örneğine geri gönderilen tüm iletişimler için kullanılan uzak uygulamanın temel URL’si.
Uygulama bir çalışma alanına yüklendikten sonra, uygulamanın baseUrl’si, uygulama önceden kaldırılmadan değiştirilemez.

Bu önemlidir: Uygulamanızı herkese açık hale getirmeden önce baseUrl’nizi akıllıca seçin.
Tüm verilerin bulut örneklerimiz ve uygulamanız arasında güvenli bir şekilde gönderilmesini sağlamak için baseUrl, https:// ile başlamak zorundadır.

Not: Her uygulamanın benzersiz bir baseUrl’si olmak zorunda. Eğer aynı anamakineden birden fazla uygulama sunmak istiyorsanız,
baseUrl’ye bir yol öneki eklemeyi düşünün.

authentication

Tür: Kimlik Doğrulama

Zorunlu: evet

Açıklama: Anamakine uygulaması ile Crowdin uygulaması arasındaki istekleri imzalarken kullanılacak kimlik doğrulama türünü belirtir.

description

Tür: dizgi

Açıklama: Uygulamanın ne yaptığının okunabilir açıklaması.
Açıklama Crowdin kullanıcı arayüzünde görünür olacaktır.

logo

Tür: dizgi (relativeUri)

Açıklama: Crowdin kullanıcı arayüzünde görüntülenecek olan uygulamanın temel URL’sine ait resim URL’si.

events

Tür: Olaylar

Açıklama: Uygulamanın, uygulama olay bildirimlerine kaydolmasını sağlar.

scopes

Tür: [dizgi, … ]

Açıklama: Bu uygulama tarafından talep edilen kapsamlar grubu.

{
  "scopes": [
    "project",
    "tm"
  ]
}
modules

Tür: nesne

Açıklama: Bu uygulamanın sağladığı modüllerin listesi.

Kimlik Doğrulama

​ Anamakine uygulamasından Crowdin uygulamasına istekleri imzalarken kullanılacak kimlik doğrulama türünü belirtir. Crowdin Uygulamaları iki tür kimlik doğrulamayı destekler:

  • OAuth uygulaması kullanma (authorization_code değeri)
  • OAuth uygulaması olmadan (none değeri)

Crowdin uygulamanızın herhangi bir zamanda Crowdin API’sine erişmesinin gerektiği durumda, authorization_code kullanılması önerilir, diğer durumlarda none kullanmakta serbestsiniz. Kimlik doğrulama türü none, authorization_code’un yanı sıra Crowdin API’sine erişim verir, ancak sadece Crowdin uygulaması, kullanıcı tarafında yürütüldüğünde, örneğin iframe açıldığında.

Örnek:

{
   "authentication": {
       "type": "authorization_code",
       "clientId": "istemci-kimliğiniz"
   }
}

​ Özellikler:

type

Tür: dizgi

Varsayılanı: none

İzin verilen değerler: none, authorization_code

Açıklama: Kullanılacak kimlik doğrulama türü.

clientId

Tür: dizgi

Açıklama: authorization_code türü aracılığıyla yetkilendirme için OAuth istemci kimliği.

Modüller

Modüller, uygulamaların Crowdin’i genişletme ve onunla etkileşime girme şeklidir. Modülleri kullanarak uygulamanız aşağıdaki şeyleri yapabilir:

  • Crowdin kullanıcı arayüzünü genişletin.
  • Harici hizmetlerle bütünleştirmeler oluşturun.

Modüller hakkında daha fazlasını okuyun.

Olaylar

Bir uygulamanın, çalışma alanında gerçekleşen olaylar için geri çağrıları kaydetmesine izin verin. Bir olay tetiklendiğinde, olay için kaydedilen uygun URL’ye bir POST isteği yapılacaktır. Installed geri çağrısı, bir uygulamanın kurulum işleminin ayrılmaz bir parçasıdır, oysa geri kalan olaylar aslında web kancalarıdır. Bu nesnedeki her özellik, uygulamanın temel URL’sine ait bir URL’dir.

Örnek:

{
   "events": {
       "installed": "/hook/installed",
       "uninstall": "/hook/uninstall"
   }
}

​ Özellikler:

installed

Tür: dizgi

Açıklama: Bir kullanıcı uygulamayı Crowdin’e yükledikten sonra bir uygulamaya gönderilen olay.

Bu olay authorization_code kullanırsanız gereklidir. Kimlik Doğrulaması hakkında daha fazlasını okuyun.

uninstall

Tür: dizgi

Açıklama: Crowdin’den uygulamayı kaldırılmadan önce bir uygulamaya gönderilen olay.

Olaylar yükü

Installed olayı

Installed olayı, kullanıcı uygulamayı Crowdin’e yüklediğinde Crowdin’den uzak Crowdin uygulamasına gönderilir. Installed olayı, Crowdin Uygulamasının yüklü olduğu Crowdin çalışma alanı hakkında bilgileri, uygulamanın authorization_code’nun yanı sıra uygulamanın kendisi hakkındaki bilgileri içerir. authorization_code alınır alınmaz, uygulamayı erişim ve yenileme belirteçlerini kullanarak yetkilendirmek gerekir.

Installed Olayı Akışı hakkında daha fazlasını okuyun.

Yük örneği​: ​

{
   "appId": "uygulama-tanımlayıcım",
   "clientId": "istemci-kimliğiniz",
   "userId": 1,
   "organizationId": 1,
   "domain": null,
   "baseUrl": "https://crowdin.com",
   "code": "def.....608bdad9c625bd2eedf1fd6"
}

Özellikler:

appId

Tür: dizgi

Açıklama: Uygulama tanımlayıcı dosyasında bildirilen uygulamanın tanımlayıcısı.

clientId

Tür: dizgi

Açıklama: Uygulama tanımlayıcı dosyasında bildirilen OAuth istemci tanımlayıcısı.

userId

Tür: tamsayı

Açıklama: Uygulamayı Crowdin’e yükleyen kullanıcının sayısal tanımlayıcısı.

organizationId

Tür: tamsayı

Açıklama: Uygulamanın yüklendiği kuruluşun sayısal tanımlayıcısı.

domain

Tür: dizgi

Açıklama: Uygulamanın yüklendiği kuruluşun adı. Crowdin için etki alanı değeri her zaman null’dur

baseUrl

Tür: dizgi

Açıklama: Uygulamanın yüklendiği kuruluşun baseUrl’si. Crowdin için baseUrl değeri her zaman "https://crowdin.com"dur

code

Tür: dizgi

Açıklama: Crowdin uygulamanızın yetkilendirilmesi için kullanılan kod.

Uninstall olayı

Uninstall olayı, kullanıcı uygulamayı Crowdin’den kaldırdığında Crowdin’den uzak Crowdin uygulamasına gönderilir. Uninstall olayı, installed olayı gibi, Crowdin Uygulamasının yüklü olduğu Crowdin çalışma alanı ve uygulamanın kendisi hakkındaki bilgileri içerir. Uninstall olayını aldıktan sonra, uygulamanın kaldırıldığı Crowdin çalışma alanı ile ilgili tüm verileri bulmak ve kaldırmak gerekir.

Yük örneği​: ​

{
   "appId": "uygulama-tanımlayıcım",
   "clientId": "istemci-kimliğiniz",
   "organizationId": 1,
   "domain": null,
   "baseUrl": "https://crowdin.com"
}

Özellikler:

appId

Tür: dizgi

Açıklama: Uygulama tanımlayıcı dosyasında bildirilen uygulamanın tanımlayıcısı.

clientId

Tür: dizgi

Açıklama: Uygulama tanımlayıcı dosyasında bildirilen OAuth istemci tanımlayıcısı.

organizationId

Tür: tamsayı

Açıklama: Uygulamanın kaldırıldığı kuruluşun sayısal tanımlayıcısı.

domain

Tür: dizgi

Açıklama: Uygulamanın kaldırıldığı kuruluşun adı. Crowdin için etki alanı değeri her zaman null’dur

baseUrl

Tür: dizgi

Açıklama: Uygulamanın kaldırıldığı kuruluşun baseUrl’si. Crowdin için baseUrl değeri her zaman "https://crowdin.com"dur

Bu makale yararlı oldu mu?