Ses ve video dosyaları için konuşmadan metne API

Önceden kaydedilmiş ses veya video yükleyin ve otomatik dil algılama özelliğiyle 75 kaynak dilde her bölüm için konuşmacı etiketleri ve zaman damgaları içeren bir döküm elde edin. Aynı proje, bunu 135'ten fazla dil ve bölge seçeneğine, altyazılara ve seslendirmeye çevirir.
Konuşmacı tanıma
75 kaynak dil
REST + Python SDK
upload, transcribe, read
OAuth 2.0
# 1. upload an audio or video file by link
curl -X POST https://api.rask.ai/api/library/v1/media/link \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{"link": "https://example.com/interview.mp3", "name": "interview"}'

# 2. create the project - speech recognition starts automatically
#    src_lang is optional: leave it out and the language is detected
curl -X POST https://api.rask.ai/v2/projects \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d "{\"video_id\": \"$MEDIA_ID\", \"dst_lang\": \"es-mx\"}"
GET /v2/projects/{project_id}/transcription
segments
# Read the transcript: one object per segment
curl -s https://api.rask.ai/v2/projects/$ID/transcription -H "Authorization: Bearer $TOKEN" \
  | jq '.segments[] | {speaker, start, end, text: .src.text}'
Küresel ekipler tarafından tercih ediliyor
Yetenekler

Konuşmadan metne API'sinin döndürdüğü her şey

Konuşma tanıma, her Rask projesinin ilk aşamasıdır. Döküm; düzenlemeye, çeviriye, altyazı eklemeye ve aynı projede seslendirmeye hazır konuşmacı etiketleri ve zaman damgalarıyla bölümler halinde gelir.

Ses dosyalarını ve videoları metne dönüştürün

Önceden kaydedilmiş ses veya video yükleyin ya da bir bağlantı paylaşın; API, konuşmayı bölüm bölüm yazılı metne dönüştürür.

Konuşmacı tanıma

Farklı konuşmacılar otomatik olarak algılanır ve her bölüm SPEAKER_00 gibi bir konuşmacı etiketi taşır. Biliyorsanız konuşmacı sayısını girin veya etiketi daha sonra düzeltin.

Her bölüm için zaman damgaları

Her bölüm, bir kayıtta altyazı, arama ve gezinme için hazır HH:MM:SS,mmm formatında bir başlangıç ve bitiş zamanına sahiptir.

75 kaynak dil

75 kaynak dilde çok dilli destek. Kaynak dili boş bırakın, otomatik olarak algılansın veya iki harfli bir kodla ayarlayın.

Aynı bölümde çeviri

Her bölüm, kaynak metni ve 135'ten fazla dil ile bölge seçeneğinden herhangi birindeki çevirisini barındırır; böylece döküm ve çeviri satır satır uyumlu kalır.

.srt ve .vtt formatında altyazılar

Tamamlanan her proje, döküm bölümleriyle senkronize edilmiş hedef dilde altyazı dosyaları içerir. Altyazılar için ikinci bir sağlayıcıya gerek yoktur.

Çeviride alan adıyla ilgili terimler

Bir sözlük; döküm çevrildiğinde veya bilerek orijinal dilde bırakıldığında ürün adlarının, özel isimlerin ve alana özel kelime dağarcığının tutarlı kalmasını sağlar.

API üzerinden dökümü düzenleyin

Bir kelimeyi düzeltin, zaman damgasını ayarlayın, konuşmacıyı yeniden atayın, bir bölüm ekleyin veya silin. İnceleyenler baştan başlamak yerine son dökümü düzeltir.

Sınır olmadan büyüyün

Oran sınırı, eşzamanlılık kotası veya anahtar başına kısıtlama yoktur. Tüm ses ve video arşivinizde toplu döküm işlemlerini aynı anda çalıştırın.
İş başında görün

Bir dökümün beş dil versiyonuna dönüşmesini izleyin

Orijinal arka plan sesi bozulmadan İngilizce, Fransızca, Almanca, Portekizce ve İspanyolca olarak dökümü alınmış, çevrilmiş ve seslendirilmiş aynı klip.
EN flag
En
FR flag
Fr
DE flag
De
PT flag
Pt
ES flag
Es
İş Akışı

Ses dosyasından döküme giden yolda üç istek

Proje oluşturulduğunda konuşma tanıma başlar, ardından aynı anda çeviri ve seslendirme yapılır. Metni düzenledikten sonra /generate uç noktasını (endpoint) kullanın.
1

Ses veya video yükleyin

Çok parça (multipart) form verisi olarak bir ses veya video dosyası gönderin ya da YouTube, Google Drive, S3, Vimeo veya herhangi bir doğrudan bağlantı (URL) üzerinden paylaşım yapın. Herhangi bir ödeme yapmadan önce bir medya kimliği ve dosya meta verileri alırsınız.

POST /api/library/v1/media/link
2

Projeyi oluşturun

Medya kimliğini video_id olarak ve hedef bir dille birlikte iletin. Biliyorsanız kaynak dili veya konuşmacı sayısını ekleyin. Tanıma işlemi hemen başlar.

POST /v2/projects
3

Metni okuyun

Çevrilen medya işlenmeye devam ederken, bölümleri hazır olur olmaz metni okuyun. Proje tamamlandığında altyazı ve medya dosyalarını indirin.

GET /v2/projects/{id}/transcription
Tanıma işlemi, canlı ses yerine önceden kaydedilmiş tam dosyalar üzerinde çalışır. İşlem süresi dosya uzunluğuna, konuşmacı sayısına ve hedef dile göre değişiklik gösterir.
Sizin için tasarlandı

Listede olmayan bir dil veya biçim mi arıyorsunuz? Ekibimizle görüşün

Listenin dışında bir kaynak dil, platformunuzun beklediği bir metin biçimi, daha yüksek işlem hacmi veya kendi teslimat yönteminiz: Ekibimiz entegrasyonunuzun ihtiyaç duyduğu özellikleri ve mevcut seçenekleri inceler.

Diller ve sesler

Genel katalogda yer almayan bir dille mi ilgileniyorsunuz? Gereksinimleriniz ve mevcut seçenekler hakkında ekibimizle konuşun.

Teslimat ve entegrasyon

Webhook’lar, kendi kuyruğunuza aktarım, doğrudan S3’ünüze teslimat, özel uç noktalar. İş akışınızın nasıl beslenmesini beklediğinizi bize bildirin.

Hacim ve işleme kapasitesi

Parti büyüklükleri, işlem başına hedef diller ve işleme önceliği, sabit ürün sınırları değil, sözleşme şartlarıdır.

Güvenlik ve barındırma

Veri konumu, SSO ve SAML, saklama kuralları ve güvenlik incelemesi desteği kurumsal süreçlerin bir parçası olarak yürütülür.
Kullanım örnekleri

Videolar için kimler konuşmadan metne dönüştürme API'si kullanır?

İçinde video barındıran platformlar

Öğrenim yönetim sistemleri (LMS) ve müşteri eğitimi platformları, içerik üretici ve video platformları, webinarlar ve sanal etkinlik araçları, video barındırma ve iş akışı SaaS çözümleri, dijital benimseme platformları, canlı alışveriş. Kaydedilmiş videoların metin dökümlerini, altyazılarını ve çevrilmiş versiyonlarını ürününüzün bir özelliği olarak ekleyin.

Yerelleştirme ve prodüksiyon ajansları

Konuşmacı etiketlerine sahip metni inceleyenleriniz için ilk taslak olarak kullanın, API aracılığıyla bölümleri düzeltin ve aynı projeden altyazılar, çeviriler ve seslendirilmiş sürümler sunun.

Şirket içi kesintisiz video üretimi

Uluslararası perakende ve e-ticaret, küresel franchise'lar, medya yayıncıları, şirket içi eğitim kurumları. Kaydedilmiş eğitimleri, webinarları ve röportajları metne dökün, ardından her pazar için altyazı ve dil seçeneklerini yayınlayın.
Müşteri hikayeleri

Gerçek ekipler, ölçülebilir sonuçlar

Şirketlerin Rask ile videoları nasıl yerelleştirdiğini kendi rakamlarıyla görün.
ok
ok
Kod

Konuşmadan metne dönüştürme API kod örnekleri

Her dilde eksiksiz bir örnek: bir ses veya video dosyası yükleyin, projeyi oluşturun, bekleyin ve ardından konuşmacılar ile zaman damgalarını içeren metin bölümlerini okuyun.
# pip install git+ssh://[email protected]/braskai/rask-sdk.git@main
import asyncio
from rask_sdk import clients, enums, schemas

async def main():
    client = clients.RaskSDKClient(client_id=CLIENT_ID, client_secret=CLIENT_SECRET)

    media = await client.create_media_link(data=schemas.MediaCreateLink(link="https://example.com/interview.mp3"))
    while media.status is enums.MediaStatus.PROCESSING:
        await asyncio.sleep(5)
        media = await client.get_media(media_id=media.id)

    # src_lang omitted: the source language is detected automatically
    job = await client.create_project(data=schemas.ProjectCreate(video_id=media.id, dst_lang="es-mx"))
    while job.status is not enums.ProjectStatus.MERGING_DONE:
        await asyncio.sleep(10)
        job = await client.get_project(project_id=job.id)

    transcript = await client.get_project_transcription(project_id=job.id)
    for seg in transcript.segments:
        print(seg.start, seg.end, seg.speaker, seg.src.text)

asyncio.run(main())
github.com/braskai/rask-sdk
async, typed models
import time, requests

AUTH = "https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token"
API  = "https://api.rask.ai"
token = requests.post(AUTH, auth=(CLIENT_ID, CLIENT_SECRET),
                      data={"grant_type": "client_credentials"}).json()["access_token"]
h = {"Authorization": f"Bearer {token}"}

with open("interview.mp3", "rb") as f:
    media = requests.post(f"{API}/api/library/v1/media", headers=h,
                          params={"kind": "audio"}, files={"data": f}).json()
while media["status"] == "processing":
    time.sleep(5)
    media = requests.get(f"{API}/api/library/v1/media/{media['id']}", headers=h).json()

pid = requests.post(f"{API}/v2/projects", headers=h, json={
    "video_id": media["id"], "dst_lang": "es-mx", "num_speakers": 2}).json()["id"]
while requests.get(f"{API}/v2/projects/{pid}", headers=h).json()["status"] != "merging_done":
    time.sleep(10)

# write the source transcript as an .srt file
segments = requests.get(f"{API}/v2/projects/{pid}/transcription", headers=h).json()["segments"]
with open("interview_en.srt", "w") as out:
    for i, s in enumerate(segments, 1):
        out.write(f"{i}\n{s['start']} --> {s['end']}\n{s['speaker']}: {s['src']['text']}\n\n")
requests + polling
no SDK required
// no dependencies, Node 18+ global fetch
const API = 'https://api.rask.ai';
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
const auth = await fetch('https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token', {
  method: 'POST',
  headers: { Authorization: 'Basic ' + btoa(`${CLIENT_ID}:${CLIENT_SECRET}`) },
  body: new URLSearchParams({ grant_type: 'client_credentials' }),
}).then((r) => r.json());
const h = { Authorization: `Bearer ${auth.access_token}`, 'Content-Type': 'application/json' };
const call = (method, path, body) => fetch(API + path, { method, headers: h, body: body && JSON.stringify(body) }).then((r) => r.json());

let media = await call('POST', '/api/library/v1/media/link', { link: 'https://example.com/webinar.mp4' });
while (media.status === 'processing') { await sleep(5000); media = await call('GET', `/api/library/v1/media/${media.id}`); }

let p = await call('POST', '/v2/projects', { video_id: media.id, src_lang: 'en', dst_lang: 'de-de' });
while (p.status !== 'merging_done') { await sleep(10000); p = await call('GET', `/v2/projects/${p.id}`); }

const { segments } = await call('GET', `/v2/projects/${p.id}/transcription`);
segments.forEach((s) => console.log(`[${s.start}] ${s.speaker}: ${s.src.text}`));
console.log(p.translation_vtt_path);   // German subtitles for your player
fetch, Node 18+
plain HTTP
# 1. token (valid 1 hour - cache and reuse it)
TOKEN=$(curl -s -X POST https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token \
  -u "$CLIENT_ID:$CLIENT_SECRET" -d "grant_type=client_credentials" | jq -r .access_token)

# 2. upload a local audio file
MEDIA_ID=$(curl -s -X POST "https://api.rask.ai/api/library/v1/media?kind=audio" \
  -H "Authorization: Bearer $TOKEN" -F "data=@podcast_episode.mp3" | jq -r .id)

# 3. create the project once the media status is ready
ID=$(curl -s -X POST https://api.rask.ai/v2/projects \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d "{\"video_id\": \"$MEDIA_ID\", \"dst_lang\": \"fr-fr\"}" | jq -r .id)

# 4. when status is merging_done, read the transcript with speaker labels
curl -s https://api.rask.ai/v2/projects/$ID/transcription -H "Authorization: Bearer $TOKEN" \
  | jq -r '.segments[] | "\(.start) \(.speaker): \(.src.text)"'
local file upload
audio file, multipart
<?php
use GuzzleHttp\Client;

$http = new Client(['base_uri' => 'https://api.rask.ai']);
$json = fn($r) => json_decode($r->getBody(), true);
$auth = $json((new Client)->post('https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token',
    ['auth' => [$clientId, $clientSecret], 'form_params' => ['grant_type' => 'client_credentials']]));
$h = ['Authorization' => 'Bearer ' . $auth['access_token']];

$media = $json($http->post('/api/library/v1/media/link', ['headers' => $h, 'json' => [
    'link' => 'https://example.com/interview.mp3']]));
while ($media['status'] === 'processing') {
    sleep(5);
    $media = $json($http->get("/api/library/v1/media/{$media['id']}", ['headers' => $h]));
}

$p = $json($http->post('/v2/projects', ['headers' => $h, 'json' => [
    'video_id' => $media['id'], 'dst_lang' => 'es-mx']]));
while ($p['status'] !== 'merging_done') {
    sleep(10);
    $p = $json($http->get("/v2/projects/{$p['id']}", ['headers' => $h]));
}

$t = $json($http->get("/v2/projects/{$p['id']}/transcription", ['headers' => $h]));
foreach ($t['segments'] as $s) {
    echo $s['start'], ' ', $s['speaker'], ': ', $s['src']['text'], PHP_EOL;
}
Guzzle 7
plain HTTP
Resmi SDK Python'dır. Node, PHP ve cURL sekmeleri, aynı uç noktaları kullanan düz HTTP örnekleridir.
İlerleme

Bir metne dönüştürme projesi ilerleme durumunu nasıl raporlar?

Metne dönüştürme, belgelenmiş durumlara sahip bir projenin ilk aşamasıdır; böylece uzun kayıtlardaki gerçek ilerlemeyi görebilirsiniz. Yalnızca üç grup üzerinde işlem yapmanız gerekir.

Başarılı, burada durun

merging_done
Son medya ve altyazı dosyaları hazır. Metin, bölümleri hazır olur olmaz daha erken bir aşamada okunabilir.

Devam ediyor, sorgulamaya devam edin

created
uploading
transcription_started
separate_background_started
determine_speakers_started
translation_started
voiceover_started
merging_started
Eşleşenlerle birlikte _done durumlar. Bunlar, aşamalı bir ilerleme arayüzüne kolayca uyarlanır.

Başarısız, durun ve rapor edin

failed
upload_failed
transcription_failed
translation_failed
voiceover_failed
merging_failed
no_audio
no_words
forbidden_link
no_audio, no_words ve forbidden_link doğrudan kendi kullanıcınıza gösterebileceğiniz kadar anlaşılırdır.
Two speakers
GET /v2/projects/{id}/transcription
{"segments": [
  {"speaker": "SPEAKER_00", "start": "00:00:00,320", "end": "00:00:07,316", "status": "done",
   "src": {"text": "Thanks for joining us. Let's start with the new release.", "lang": "en"},
   "dst": {"text": "Gracias por acompañarnos. Empecemos con la nueva versión.", "lang": "es-mx"}},
  {"speaker": "SPEAKER_01", "start": "00:00:07,640", "end": "00:00:11,900", "status": "done",
   "src": {"text": "Sure. The biggest change is the reporting view.", "lang": "en"},
   "dst": {"text": "Claro. El cambio más grande es la vista de reportes.", "lang": "es-mx"}}
]}

Veya sorgulamayı tamamen atlayın

Bizi bir webhook uç noktasına yönlendirin; her durum değişikliği bir POST isteği olarak gelsin, böylece kuyruğunuz her değişimi anında işleme alsın. Webhook teslimi, kurumsal entegrasyon sürecinin bir parçasıdır.
Belgeleri okuyun
preserveAspectRatio="xMidYMid meet" aria-hidden="true" role="img">
Çıktı

Metin bölümleri, altyazılar ve çevrilmiş medya

Metni, dönüştürme uç noktasından JSON bölümleri olarak okuyun. Tamamlanan proje ayrıca SRT ve VTT formatında hedef dilde altyazı dosyaları, çevrilmiş video ve uygun planlarda çevrilmiş konuşmayı ayrı bir WAV parçası olarak sunar.
Alan
Biçim
Nedir?
segments
JSON
Metin: her bölüm için kaynak metin, çeviri, konuşmacı etiketi, başlangıç ve bitiş zamanı
voiceover
WAV
Yalnızca çevrilmiş konuşma, arka plan sesi olmadan (uygun planlarda)
translated_audio
WAV
Orijinal arka plan sesiyle birleştirilmiş çevrilmiş konuşma
translation_srt_path
.srt
Hedef dilde, bölümlere göre zamanlanmış altyazılar
translation_vtt_path
.vtt
Web oynatıcıları için WebVTT ile aynı altyazılar
translated_video
MP4
Seslendirmeli çevrilmiş video
Kontrol

Metni bölüm bölüm düzenleyin

Konuşma tanıma, size ilk taslağı sunar. Bölüm başına tek bir istekte bulunarak bir kelimeyi, zaman damgasını veya konuşmacı etiketini düzeltin, ardından çevrilen sürümü yeniden oluşturun. Yeniden oluşturma işlemi, çalışma başına en az bir dakika olmak üzere değiştirilen bölümler üzerinden ücretlendirilir.

Bölüm düzeyinde düzenleme

Bölüm düzeyinde düzenleme
Her proje, metnini erişilebilir bölümler halinde sunar; bu sayede nihai metindeki bir düzeltme tek bir yama isteğiyle yapılır.
Metni ve bölümlerini alın
Kaynak metni güncelleyin ve yeniden çevirelim
Kendi ifadelerinizi kullanmak için çevrilmiş metni doğrudan düzenleyin
Zaman damgalarını ayarlayın, bölüm ekleyin veya silin
Herhangi bir konuşmacıya atanmış sesi değiştirin

Terminoloji sözlükleri

Terminoloji sözlükleri
Metin çevrildiğinde bir sözlük, marka adlarının, özel isimlerin ve sektör terimlerinin her sürümde aynı kalmasını veya bilinçli olarak orijinal dilde kalmasını sağlar.

Bir sözlük tek bir dil çiftini kapsar ve o hedef dilin tüm bölgesel varyantlarında geçerlidir, böylece tek bir İspanyolca sözlük es-mx ve es-es benzer şekilde hizmet eder. Proje kayıtları sözlük_sürümü, böylece daha sonra yapılan düzenlemeler tamamlanan çalışmayı habersiz değiştirmez.
Girdi

Desteklenen dosya biçimleri

Podcast'ler, röportajlar ve kaydedilmiş aramalar gibi ses dosyalarını veya desteklenen herhangi bir formatta video dosyalarını dönüştürün ya da bir URL gönderin. Desteklenmeyen bir dosya gönderildiğinde API, herhangi bir dakika ücretlendirilmeden önce bunu reddeder.

Video

7 biçim
.mp4
.mov
.mkv
.avi
.webm
.m4v
.3gp

Ses

4 biçim
.mp3
.wav
.flac
.m4a

Harcama yapmadan önce üstveri

Medya uç noktası; süreyi, dosya boyutunu, video codec bileşenini, kare hızını, çözünürlüğü, ses codec bileşenini, örnekleme hızını ve kanal düzenini döndürür. Projeler ses veya video dakikası üzerinden ücretlendirildiği için dosyayı önceden doğrulayın ve maliyeti tahmin edin.
Güvenlik ve uyumluluk

Ses ve konuşma verileri için kurumsal düzeyde güvenlik

Brask Inc, SOC 2 Type II sertifikasına sahiptir, GDPR kapsamında faaliyet gösterir ve Güven Merkezi'nde canlı kontrol durumunu yayınlar; bu sayede kayıtlar ve metinler denetlenen kontroller altında işlenir.

Sertifikalar

SOC 2 Type II
GDPR
CAI ve C2PA üyesi

Şifreleme

Aktarım sırasında TLS 1.2
Bekleme durumunda AES-256
SSE-S3 yönetilen anahtarlar
En az 12 ayda bir anahtar değişimi

İçeriğiniz

Kapalı yapay zeka ortamı
Genel modelleri eğitmek için asla kullanılmaz
Tam dışa aktarma, sağlayıcıya bağımlılık yok

Erişim

SSO ve SAML
Rol tabanlı erişim kontrolü
OAuth 2.0 istemci kimlik bilgileri

Kurumsal

Veri konumu seçenekleri
Özel SLA'lar
Özel hesap yöneticisi

Ses hakları

Kullanım haklarına sahip sentetik sesler
Onaya dayalı ses klonlama
Yapay zeka güvenlik kontrolleri, insan denetimi
Karşılaştırma

Rask API ve konuşmadan metne dönüştürme API'si ile kendi altyapınız

Konuşmadan metne dönüştürme API'si, sesi metne dönüştürür. Bu metnin altyazılara, çevirilere ve dublajlı sürümlere dönüştürülmesi gerektiğinde geriye kalan kısım altyapı çalışmasıdır. Aynı sonucun iki farklı yolla elde edilmiş hali aşağıdadır.
İhtiyacınız olanlar
Rask API
Parçalardan oluşturulmuş
Konuşmacı etiketleri içeren bir metin
Dahil olanlar
Çoğu konuşmadan metne dönüştürme API'sinde bulunur
Zaman damgaları
Bölüm başına
Birçok konuşmadan metne dönüştürme API'sinde kelime başına
Metnin çevirisi
Aynı proje, 135'ten fazla dil ve bölge seçeneği
Ayrı bir çeviri API'si
.srt ve .vtt formatında altyazılar
Hedef dilde dahil edilmiştir
Kendi zamanlama verilerinizden oluşturulmuştur
Dublajlı ses ve video
Dahil olanlar
Bir TTS sağlayıcısı ve kendi ses mikslemeniz
Bir bölümü düzeltme
Tek bir yama isteği, ardından yeniden oluşturma
Kendi kopyalarınızı düzenleyin ve yeniden senkronize edin
İstek sınırları
Yok
Sağlayıcınızın zorunlu kıldığı her neyse
Canlı sesin gerçek zamanlı olarak metne dönüştürülmesi
Akış tabanlı bir konuşmadan metne dönüştürme API'si kullanın
Bunun için tasarlandı
En düşük fiyatla yalnızca döküm
Özel bir sesten metne API'si daha ucuza mal olur
Ses saati başına fiyatlandırılır
Sıkça Sorulan Sorular

Sesten metne API: sık sorulan sorular

Aradığınızı bulamadınız mı? Satış departmanıyla iletişime geçin.

Rask'ın sesten metne API'si var mı?

Hangi dillerin dökümünü çıkarabilir?

Video olmadan ses dosyalarının dökümünü çıkarabilir miyim?

Konuşmacı ayrıştırmasını destekliyor mu?

API, kelime düzeyinde zaman damgaları döndürüyor mu?

Gerçek zamanlı dökümü destekliyor mu?

Döküm ne kadar doğru?

Özel kelime dağarcığı veya sektörel terimler ekleyebilir miyim?

Transkripti SRT dosyası olarak alabilir miyim?

Kendi dökümümü getirebilir miyim?

Döküm nasıl ücretlendirilir?

Ücretsiz bir katman var mı?

API erişimini ve API anahtarını nasıl alabilirim?

Tek bir öğleden sonra dublaja başlayın

İlk talebinizi bugün oluşturun; toplu alım koşullarına veya başka hiç kimsenin bulamadığı bir dille ilgileniyorsanız bizimle iletişime geçin.