Privacy Policy

Sohbet — last updated 17 September 2026

Türkçe için tıklayın →

We have no account system and we hold no copy of your practice conversations. Transcripts and evaluations live on your iPhone and nowhere else.

Two things leave the device while you play: your voice, to be turned into text and to give the character a voice, and the conversation text, so a model can write the character's next line and score how you did.

The conversation text passes through our server and is not kept — with two narrow exceptions, both described in section 2: a request that fails is kept for 7 days so we can fix the fault, and, only if you switch it on yourself, a small sample of successful conversations is kept for 90 days to improve the app. Neither carries anything that points back to you.

If the app crashes or freezes, iOS's own diagnostic summary is sent to us so we can fix the fault. It is written by iOS, not by the app: a call stack and system details, with nothing you wrote and nothing that identifies you.

We also count what happens in the app — that an introduction was finished, that a conversation ended and in which score band. These are counts, not content: nothing you wrote or said is in them, and they are not used to follow you across other apps.

1. Who we are

Sohbet is published by Mustafa Utku Bayık. For anything at all, write to support@jobbar.ai.

2. What happens to what

Your voice

In voice mode, microphone audio is sent as you speak, over an encrypted connection, to Soniox, our speech provider, which converts it to text. The app never writes audio to a file — not on your device and not on our servers. What Soniox does with audio in transit is governed by their own terms.

Without a subscription the app falls back to Apple's own speech recognition. When your iPhone supports offline recognition this happens entirely on the device; when it does not, iOS sends the audio to Apple under Apple's terms, not ours.

The character's voice

To speak the character's line, the app sends that line of text to Soniox, which returns audio. Nothing of yours is in that request.

The conversation

To write the character's reply and to produce your evaluation, the app sends the conversation so far to our server, which passes it to Google (Gemini, on Google Cloud Vertex AI) and streams the answer back. In the ordinary case the text is held only in memory for the length of the request and then gone.

The two cases where we keep the text

A request that fails. When a request errors, that request is written to our database with the error, and deleted automatically after 7 days. We cannot fix a fault we cannot see. This does not depend on any setting, because the record carries no identifier: your subscription record, your transaction and the conversation identifier are never written to it.

A sample, only if you allow it. In Settings there is a switch, “Sohbetlerimden örnek alınabilir”, which is off unless you turn it on. While it is on, roughly one in twenty successful conversations is kept for 90 days and used to improve the prompts and the evaluation. The same stripping applies: no subscription record, no transaction, no conversation identifier. Turn the switch off and nothing further is kept.

Both are stored in Google Cloud Firestore in the European Union and are removed by an automatic expiry rule, not by hand.

Transcripts, scores and progress

Your transcripts, evaluations, coach report, streak and unlocked scenarios are stored only on your device, in the app's private storage. We have no server that holds them and no way to read them.

Subscription

Payment is handled entirely by Apple. We never see your card, your Apple Account password or your billing address. To confirm a subscription is active, the app sends Apple's signed transaction record to our server. That record contains the product, the transaction identifier and the expiry date — no payment details and no name. We verify it and discard it.

Crash and hang reports

When the app crashes or freezes, iOS itself writes a diagnostic summary and hands it to the app the next time you open it. The app sends that summary to our server, where it is kept for 90 days and then removed automatically. Without it we only learn about a crash if someone writes to us.

What the summary contains is decided by Apple, not by us: the call stack (which piece of code was running, as binary names and memory offsets), the app version, the iOS version, the device model, the processor architecture, the crash signal or exception code, the termination reason, and for a freeze, how long it lasted. It carries nothing you wrote and nothing that identifies you — no name, no account, no device identifier, no advertising identifier.

We do not forward the summary as it arrives. The app copies out a fixed list of fields and drops everything else, so a field Apple adds in a future version of iOS is not sent until we look at it and add it deliberately. One field is excluded on purpose: the exception message, which is the only place an app's own text could end up. Your transcripts and evaluations are stored by the app in a database that these reports never touch. Our server applies the same list a second time, because this is the one request we accept without checking a subscription — a crash report matters most from someone who has not subscribed.

This is a report, not an alarm: iOS delivers these summaries at most once a day, and only when you open the app again. We use them to fix faults, and for nothing else.

Usage measurement

To see which parts of the app work and where people give up, the app records a small set of events through Firebase Analytics (Google Analytics for Firebase). An event is a name and a few short or numeric values — for example: the introduction was finished; the subscription screen was shown; a conversation started, in text or voice mode; a conversation ended, with which of the sixteen scenarios and in which score band (such as 60–79); a call to an outside service succeeded or failed, and what kind of error it was.

No content goes into an event. Not a line of your conversation, not a word of your evaluation, not your invite code, not your score as an exact number — only the band it falls in. Scenario names are safe to send because there are sixteen of them and they are the same for everyone; a scenario generated for you is recorded only as “generated”.

Firebase gives each installation a random identifier so repeated events can be counted as one device rather than many. It is not your Apple Account, your name or your email, we cannot turn it into any of those, and deleting the app ends it. The advertising identifier (IDFA) is never touched: the app deliberately links the variant of the library that cannot read it. That is why Sohbet never shows you the “Allow tracking?” prompt — there is nothing to allow.

These counts are held by Google Analytics and expire automatically; under any setting Google Analytics permits, no longer than 14 months. They are stored apart from everything in the two sections above and cannot be joined to a crash report or to a kept conversation.

Turning it off: you can switch usage analytics off at any time with the “Send usage statistics” switch in Settings; while it is off, no events are sent.

Server logs

Our server functions run in the European Union (Google Cloud, europe-west1). They log technical events — that a voice key was issued, that a subscription failed verification, and errors. Conversation content never reaches these logs.

3. Summary table

DataWhere it goesHow long
Your voiceSoniox, live while you speakNever stored by us
Character's line (text)Soniox, to be spokenNever stored by us
Conversation textGoogle (Gemini) via our serverNot kept (see two rows below)
… if the request failedOur database (EU), no identifier7 days, then automatic
… if you switched sampling onOur database (EU), no identifier, ~1 in 2090 days, then automatic
Transcripts, scores, progressYour device onlyUntil you delete it
Subscription receiptApple → our server, to verifyNot stored
Crash / hang reportOur database (EU), no identifier90 days, then automatic
Usage events (counts)Google Analytics, no identity, no IDFAAt most 14 months, then automatic
Technical logsGoogle Cloud (EU)30 days

4. What we do not do

5. Children

Sohbet is not directed at children under 13 and we do not knowingly collect anything from them. The app asks for no personal details from anyone.

6. Legal basis (GDPR)

7. International transfers

Our server runs in the EU. Soniox, Google and Apple may process data outside your country, including in the United States, under the safeguards those companies publish — Standard Contractual Clauses and, where applicable, the EU–US Data Privacy Framework.

8. Your rights

You can delete every conversation from Settings → Reset data, which removes the transcripts, evaluations, streak and unlocked scenarios from your device permanently. Deleting the app removes all of it at once.

The server-side records described in section 2 — a failed request, a sample you allowed, a crash or hang report — are the exception, and they work differently: they carry no identifier, so we cannot find “yours” among them and neither can anyone else. They are not deleted on request because they cannot be traced to a person; they expire on their own, after 7 days or 90 days. Turning the sampling switch off stops any further samples from being kept.

Under the GDPR you also have the right to access, correct, export or restrict processing of your personal data, and to complain to your national data protection authority. Since we store no personal data about you, in practice there is nothing for us to hand over.

9. Changes

If this policy changes in a way that affects what leaves your device, we will update the date at the top and describe the change here.

17 September 2026 — the app now counts a small set of usage events through Firebase Analytics: which screens are reached and how conversations end, as counts only. No conversation text and no identity; the advertising identifier is not used. See “Usage measurement” in section 2.

17 September 2026 — the app now sends iOS's own crash and hang summaries to our server, where they are kept for 90 days. They contain no conversation text and nothing that identifies you; see “Crash and hang reports” in section 2 for what is sent and what is deliberately left out.

26 August 2026 — added the two cases where conversation text is kept on the server: failed requests for 7 days, and, with your consent, a sample of successful conversations for 90 days. Neither carries an identifier. Before this date nothing was kept.


Gizlilik Politikası

Sohbet — son güncelleme 17 Eylül 2026

Hesap sistemimiz yok ve pratik sohbetlerinizin bizde kopyası yok. Transkriptler ve değerlendirmeler yalnızca iPhone'unuzda duruyor.

Oynarken cihazdan çıkan iki şey var: yazıya çevrilmesi ve karaktere ses verilmesi için sesiniz, ve karakterin bir sonraki repliğini yazacak ve sizi değerlendirecek modele gidecek sohbet metni.

Sohbet metni sunucumuzdan geçiyor ve saklanmıyor — iki dar istisnayla, ikisi de 2. bölümde anlatılıyor: hata veren bir istek, arızayı düzeltebilmek için 7 gün tutuluyor; ve yalnızca siz açarsanız, başarılı sohbetlerden küçük bir örneklem uygulamayı geliştirmek için 90 gün tutuluyor. İkisi de size geri işaret eden hiçbir şey taşımıyor.

Uygulama çökerse ya da donarsa, iOS'un kendi tuttuğu tanı özeti arızayı düzeltebilmemiz için bize gönderiliyor. Özeti uygulama değil iOS yazıyor: bir çağrı yığını ve sistem bilgileri — sizin yazdığınız hiçbir şey ve sizi tanımlayan hiçbir şey yok.

Ayrıca uygulamada ne olduğunu sayıyoruz — tanıtımın bitirildiğini, bir sohbetin bittiğini ve hangi puan bandında bittiğini. Bunlar sayaç, içerik değil: söylediğiniz ya da yazdığınız hiçbir şey içlerinde yok ve sizi başka uygulamalarda izlemek için kullanılmıyorlar.

1. Kimiz

Sohbet'i Mustafa Utku Bayık yayımlıyor. Her konu için: support@jobbar.ai.

2. Neye ne oluyor

Sesiniz

Sesli modda mikrofon sesi, siz konuşurken, şifreli bir bağlantı üzerinden konuşma sağlayıcımız Soniox'a gidiyor ve yazıya çevriliyor. Uygulama sesi hiçbir zaman dosyaya yazmıyor — ne cihazınızda ne sunucumuzda. Soniox'un aktarım sırasındaki sesle ne yaptığı kendi koşullarına tabi.

Abonelik yokken uygulama Apple'ın kendi konuşma tanımasına düşüyor. iPhone'unuz çevrimdışı tanımayı destekliyorsa bu tamamen cihazda oluyor; desteklemiyorsa iOS sesi bizim değil Apple'ın koşulları altında Apple'a gönderiyor.

Karakterin sesi

Karakterin repliğini seslendirmek için uygulama o metni Soniox'a gönderiyor ve sesi alıyor. Bu istekte size ait hiçbir şey yok.

Sohbet

Karakterin cevabını yazmak ve değerlendirmenizi üretmek için uygulama o ana kadarki sohbeti sunucumuza gönderiyor; sunucu bunu Google'a (Gemini, Google Cloud Vertex AI) iletiyor ve cevabı geri akıtıyor. Olağan durumda metin yalnızca isteğin sürdüğü kadar bellekte kalıyor, sonra kayboluyor.

Metni sakladığımız iki durum

Hata veren istek. Bir istek hata verdiğinde, o istek hatasıyla birlikte veritabanımıza yazılıyor ve 7 gün sonra kendiliğinden siliniyor. Göremediğimiz bir arızayı düzeltemiyoruz. Bu bir ayara bağlı değil, çünkü kayıt kimlik taşımıyor: abonelik belgeniz, işlem numaranız ve sohbet kimliğiniz o kayda hiç yazılmıyor.

Örneklem, yalnızca izin verirseniz. Ayarlar'da “Sohbetlerimden örnek alınabilir” anahtarı var ve siz açmadıkça kapalı. Açıkken başarılı sohbetlerin yaklaşık yirmide biri 90 gün tutuluyor ve istemleri ile değerlendirmeyi iyileştirmek için kullanılıyor. Aynı temizleme geçerli: abonelik belgesi yok, işlem numarası yok, sohbet kimliği yok. Anahtarı kapatırsanız bundan sonrası için hiçbir şey tutulmuyor.

İkisi de Avrupa Birliği'ndeki Google Cloud Firestore'da duruyor ve elle değil, otomatik bir süre dolumu kuralıyla siliniyor.

Transkriptler, puanlar ve ilerleme

Transkriptleriniz, değerlendirmeleriniz, koç raporunuz, seriniz ve açtığınız senaryolar yalnızca cihazınızda, uygulamanın özel alanında saklanıyor. Bunları tutan bir sunucumuz da, okuma imkânımız da yok.

Abonelik

Ödemeyi tamamen Apple yürütüyor. Kartınızı, Apple hesap parolanızı ya da fatura adresinizi hiçbir zaman görmüyoruz. Aboneliğin etkin olduğunu doğrulamak için uygulama Apple'ın imzaladığı işlem belgesini sunucumuza gönderiyor. Bu belgede ürün, işlem numarası ve bitiş tarihi var — ödeme bilgisi ve isim yok. Doğruluyoruz ve atıyoruz.

Çökme ve donma raporları

Uygulama çöktüğünde ya da donduğunda iOS bir tanı özeti yazıyor ve bunu uygulamaya bir sonraki açılışta veriyor. Uygulama o özeti sunucumuza gönderiyor; kayıt 90 gün tutulup kendiliğinden siliniyor. Bu olmadan bir çökmeyi ancak biri bize yazarsa öğreniyoruz.

Özetin içinde ne olacağına biz değil Apple karar veriyor: çağrı yığını (hangi kod parçası çalışıyordu — ikili adları ve bellek ofsetleri olarak), uygulama sürümü, iOS sürümü, cihaz modeli, işlemci mimarisi, çökme sinyali ya da istisna kodu, sonlanma sebebi, ve donma durumunda ne kadar sürdüğü. Sizin yazdığınız hiçbir şeyi ve sizi tanımlayan hiçbir şeyi taşımıyor — isim yok, hesap yok, cihaz kimliği yok, reklam kimliği yok.

Özeti geldiği gibi iletmiyoruz. Uygulama sabit bir alan listesini kopyalıyor, gerisini atıyor; yani Apple'ın ileride ekleyeceği bir alan, biz bakıp bilerek eklemedikçe gönderilmiyor. Bir alan bilerek dışarıda: uygulamanın kendi metninin düşebileceği tek yer olan istisna mesajı. Transkriptleriniz ve değerlendirmeleriniz uygulamanın bu raporların hiç dokunmadığı bir veritabanında duruyor. Sunucumuz aynı listeyi ikinci kez uyguluyor, çünkü abonelik aramadan kabul ettiğimiz tek istek bu — bir çökme raporu en çok abone olmamış birinden değerli.

Bu bir alarm değil bir rapor: iOS bu özetleri günde en fazla bir kez, ve yalnızca uygulamayı yeniden açtığınızda teslim ediyor. Arızaları düzeltmek için kullanıyoruz, başka hiçbir şey için değil.

Kullanım ölçümü

Uygulamanın hangi parçalarının işe yaradığını ve insanların nerede bıraktığını görmek için uygulama, Firebase Analytics (Google Analytics for Firebase) üzerinden küçük bir olay kümesi kaydediyor. Bir olay, bir ad ve birkaç kısa ya da sayısal değerden ibaret — örneğin: tanıtım bitirildi; abonelik ekranı görüldü; bir sohbet başladı, metinle mi sesle mi; bir sohbet bitti, on altı senaryodan hangisiyle ve hangi puan bandında (60–79 gibi); dış bir servise yapılan çağrı başarılı oldu mu, olmadıysa hatanın türü neydi.

Olaya hiçbir içerik girmiyor. Sohbetinizden tek satır, değerlendirmenizden tek kelime, davet kodunuz, puanınızın kesin rakamı — hiçbiri. Yalnızca düştüğü bant. Senaryo adlarını göndermek güvenli, çünkü on altı tane ve herkeste aynı; size özel üretilmiş bir senaryo yalnızca “üretilen” olarak yazılıyor.

Firebase her kuruluma rastgele bir kimlik veriyor ki tekrar eden olaylar tek cihaz sayılsın, çok cihaz değil. Bu sizin Apple hesabınız, adınız ya da e-postanız değil; bunlardan birine çeviremiyoruz; uygulamayı silmek onu bitiriyor. Reklam kimliğine (IDFA) hiç dokunulmuyor: uygulama, kütüphanenin onu okuyamayan varyantını bilerek bağlıyor. Sohbet'in size hiçbir zaman “izlenmene izin veriyor musun?” penceresini göstermemesinin sebebi bu — izin verilecek bir şey yok.

Bu sayaçlar Google Analytics'te tutuluyor ve kendiliğinden düşüyor; Google Analytics'in izin verdiği hiçbir ayarda 14 aydan uzun kalmıyorlar. Yukarıdaki iki bölümde anlatılan her şeyden ayrı duruyorlar ve ne bir çökme raporuyla ne de saklanmış bir sohbetle birleştirilebiliyorlar.

Kapatmak: kullanım ölçümünü istediğin zaman Ayarlar'daki „Kullanım istatistiği gönder” anahtarıyla kapatabilirsin; kapalıyken hiçbir olay gönderilmez.

Sunucu günlükleri

Sunucu fonksiyonlarımız Avrupa Birliği'nde çalışıyor (Google Cloud, europe-west1). Teknik olayları günlüğe yazıyorlar — bir ses anahtarının verildiğini, bir aboneliğin doğrulanamadığını ve hataları. Sohbet içeriği bu günlüklere hiç ulaşmıyor.

3. Özet tablo

VeriNereye gidiyorNe kadar kalıyor
SesinizSoniox, siz konuşurken canlıBizde hiç saklanmıyor
Karakterin repliği (metin)Soniox, seslendirilmek üzereBizde hiç saklanmıyor
Sohbet metniSunucumuz üzerinden Google (Gemini)Tutulmuyor (alttaki iki satıra bakın)
… istek hata verdiyseVeritabanımız (AB), kimliksiz7 gün, sonra otomatik
… örneklemeyi açtıysanızVeritabanımız (AB), kimliksiz, ~yirmide bir90 gün, sonra otomatik
Transkript, puan, ilerlemeYalnızca cihazınızSiz silene kadar
Abonelik belgesiApple → sunucumuz, doğrulama içinSaklanmıyor
Çökme / donma raporuVeritabanımız (AB), kimliksiz90 gün, sonra otomatik
Kullanım olayları (sayaçlar)Google Analytics, kimliksiz, IDFA yokEn fazla 14 ay, sonra otomatik
Teknik günlüklerGoogle Cloud (AB)30 gün

4. Yapmadıklarımız

5. Çocuklar

Sohbet 13 yaş altındaki çocuklara yönelik değil ve onlardan bilerek hiçbir şey toplamıyoruz. Uygulama kimseden kişisel bilgi istemiyor.

6. Hukuki dayanak (GDPR/KVKK)

7. Uluslararası aktarım

Sunucumuz AB'de çalışıyor. Soniox, Google ve Apple veriyi ülkenizin dışında — Amerika Birleşik Devletleri dahil — bu şirketlerin yayımladığı güvenceler altında işleyebilir: Standart Sözleşme Maddeleri ve geçerli olduğu yerde AB–ABD Veri Gizliliği Çerçevesi.

8. Haklarınız

Ayarlar → Verileri sıfırla ile bütün sohbetleri silebilirsiniz; bu, transkriptleri, değerlendirmeleri, seriyi ve açılmış senaryoları cihazınızdan kalıcı olarak kaldırır. Uygulamayı silmek hepsini bir anda kaldırır.

2. bölümde anlatılan sunucu kayıtları — hata veren bir istek, izin verdiyseniz bir örneklem, bir çökme ya da donma raporu — bunun istisnası ve farklı çalışıyor: kimlik taşımadıkları için aralarında “sizinkini” ne biz bulabiliyoruz ne başkası. Talep üzerine silinmiyorlar, çünkü bir kişiye bağlanamıyorlar; 7 gün ya da 90 gün sonra kendiliğinden düşüyorlar. Örnekleme anahtarını kapatmak, bundan sonrası için örneklem tutulmamasını sağlıyor.

GDPR ve KVKK kapsamında ayrıca kişisel verilerinize erişme, düzeltme, taşıma ve işlenmesini sınırlama, ve ulusal veri koruma otoritesine şikâyette bulunma hakkınız var. Hakkınızda kişisel veri saklamadığımız için pratikte teslim edebileceğimiz bir şey bulunmuyor.

9. Değişiklikler

Bu politika, cihazınızdan neyin çıktığını etkileyecek şekilde değişirse üstteki tarihi güncelleyip değişikliği burada anlatacağız.

17 Eylül 2026 — uygulama artık Firebase Analytics üzerinden küçük bir kullanım olayı kümesi sayıyor: hangi ekranlara gelindiği ve sohbetlerin nasıl bittiği, yalnızca sayaç olarak. Sohbet metni yok, kimlik yok; reklam kimliği kullanılmıyor. 2. bölümdeki “Kullanım ölçümü”ne bakın.

17 Eylül 2026 — uygulama artık iOS'un kendi çökme ve donma özetlerini sunucumuza gönderiyor; kayıtlar 90 gün tutuluyor. İçlerinde sohbet metni ve sizi tanımlayan hiçbir şey yok; neyin gönderildiği ve neyin bilerek dışarıda bırakıldığı için 2. bölümdeki “Çökme ve donma raporları”na bakın.

26 Ağustos 2026 — sohbet metninin sunucuda tutulduğu iki durum eklendi: hata veren istekler 7 gün, ve rızanızla başarılı sohbetlerden bir örneklem 90 gün. İkisi de kimlik taşımıyor. Bu tarihten önce hiçbir şey tutulmuyordu.