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.
Aracın aşağıdaki uç noktaları sunması gerekir:
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"
}
}
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"
},
...
]
}
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"
},
...
]
}
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":[]
}
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: *
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
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."
}
Herhangi bir sorunuz veya sorunuz varsa, lütfen TikFinity Discord'da bizimle iletişime geçin.