TikFinity-Üçüncü-Taraf-Arabirimi

TikFinity, üçüncü taraf araçları entegre etme yeteneği sunar. Kullanıcılar Eylemler ve Etkinlikler aracılığıyla "Üçüncü taraf Eylemi" seçeneğini seçebilirler. Kullanıcı daha sonra iki açılır menüden üçüncü taraf aracının bir eylemini seçebilir. Böyle bir araç yazmak istiyorsan, araç port 8832'de bir API sunmalıdır. TikFinity, veri sorgulamak veya eylemleri tetiklemek için bu API'ye erişecektir.

API

Aracın aşağıdaki uç noktaları sunması gerekir:

Uygulama Bilgisi

TikFinity'de gösterilecek uygulamanız hakkında bilgi döndürür.

GET http://127.0.0.1:8832/api/app/info

JSON Yanıtı:


{
  "data":{
    "author":"@zerodytrash",
    "name":"AwesomeApp",
    "version":"1.0"
   }
}

Kategorileri Al

Uygulamanın desteklediği kategorilerin bir listesini (Dizi) döndürür.

GET http://127.0.0.1:8832/api/features/categories

JSON Yanıtı:


{
    "data": [
        {
            "categoryId": "smart_device_control",
            "categoryName": "Control Smart Devices"
        },
        {
            "categoryId": "serial_port_control",
            "categoryName": "Control Serial Port"
        },
        ...
     ]
}

Eylemleri Al

Seçilen kategorinin eylemlerinin bir listesini döndürür.

GET http://127.0.0.1:8832/api/features/actions?categoryId=smart_device_control

JSON Yanıtı:


{
    "data": [
        {
            "actionId": "turn_lights_off",
            "actionName": "Turn Lights Off"
        },
        {
            "actionId": "turn_lights_on",
            "actionName": "Turn Lights On"
        },
        ...
    ]
}

Eylemi Çalıştır

Kullanıcı tarafından seçilen eylemi yürütür.

POST http://127.0.0.1:8832/api/features/actions/exec

JSON Gövdesi:


{
  "categoryId":"smart_device_control",
  "actionId":"turn_lights_on",
  "context":{
    "triggerTypeId": 3,
    "userId": "123456789",
    "username": "Tesuser",
    "coins": 12
  }
}

JSON Yanıtı:


{
  "data":[]
}

Kaynaklar arası kaynak paylaşımı

TikFinity bir web uygulaması olduğu için, API'nin başlıkları ayarlayarak ve preflight SEÇENEKLER isteklerine yanıt vererek erişime açıkça izin vermesi gerekir. Aksi takdirde erişim başarısız olur. Lütfen tüm yanıtlar için aşağıdaki başlıkları döndür:


Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: *
Access-Control-Allow-Methods: *

Tetikleyici Bilgisi

POST /api/features/actions/exec isteği, etkinliği neyin tetiklediğini belirlemek için kullanılabilen bağlam içinde triggerTypeId özniteliğini içerir. İşte olası tetikleyici nedenlerinin bir listesi:


1 = Share
2 = Command
3 = Gift (min coins value)
4 = Gift (specific gift)
6 = Join
7 = Likes (taps)
9 = Follow
10 = Subscribe
11 = Chat (any message)
12 = Emote
13 = First User Activity

Hata İşleme

Uygulamanız istekleri işlerken bir hatayla karşılaşırsa veya kullanıcıyı bir şey hakkında uyarlamak istersen, yanıta yalnızca "message" özniteliğini ekle. TikFinity UI daha sonra bir mesaj gösterecek.

Örnek Yanıt:


{
  "message": "An error occurred while processing your request."
}

Destek

Herhangi bir sorunuz veya sorunuz varsa, lütfen TikFinity Discord'da bizimle iletişime geçin.