> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Uygulama içi genel bakış

> OneSignal Uygulama içi Mesajları ile başlayın: mobil kullanıcılarınızı etkili bir şekilde etkileşime geçirmek için nasıl kurulum yapılır, tasarlanır, tetiklenir ve test edilir.

<Frame caption="Uygulama içi mesaj örnekleri">
  <img src="https://mintcdn.com/onesignal/yt4lRKoquAlWvRvF/images/iam/iam_marketing.jpg?fit=max&auto=format&n=yt4lRKoquAlWvRvF&q=85&s=4e09e43dc57956f4c33ad761f403aea5" width="1280" height="720" data-path="images/iam/iam_marketing.jpg" />
</Frame>

Uygulama içi mesajlar (IAM), mobil uygulamanızda görüntülenen özelleştirilebilir, hedeflenmiş mesajlardır. Şunları yapmanızı sağlar:

* Push bildirimlerine abone olma veya konumlarını güncelleme gibi kullanıcı eylemlerini isteme.
* Hedeflenen kullanıcılara yeni veya az kullanılan özellikleri tanıtma.
* Uygulama güncellemesi yayınlamadan gerçek zamanlı duyurular ve haberler görüntüleme.
* Anketler ve karusel oluşturma.
* Onboarding ve eğitici içerikle yardımcı olma.

***

## Uygulama içi kurulum

Uygulama içi Mesajları kullanmak için uygulamanızda OneSignal SDK'nın kurulu olması gerekir. Tamamlandığında, kod yazmadan OneSignal dashboard'undan uygulama içi mesajlar oluşturabilir ve gönderebilirsiniz. SDK'mız ayrıca şunlar gibi gelişmiş kullanım senaryoları için metodlara sahiptir:

* Mesajı belirli zamanlarda tetikleme
* Tıklama işleme ve deep linking
* Mesajı duraklatma
* Yaşam döngüsü yönetimi ve daha fazlası!

<Columns cols={2}>
  <Card title="Mobil SDK Kurulumu" href="./mobile-sdk-setup" arrow={true}>
    OneSignal'i mobil uygulama kod tabanınıza ekleyin.
  </Card>

  <Card title="Uygulama içi Mesaj SDK metodları" href="./mobile-sdk-reference#in-app-messages" arrow={true}>
    Geliştiriciler: Tetikleyici, tıklama işleyici ve yaşam döngüsü API'lerine erişin.
  </Card>

  <Card title="Uygulama içi tetikleyiciler" href="./iam-triggers" arrow={true}>
    Kullanıcı davranışına veya uygulama etkinliğine göre mesajların ne zaman görüneceğini kontrol edin.
  </Card>

  <Card title="Uygulama içi tıklama eylemleri" href="./iam-click-actions" arrow={true}>
    Kullanıcılar mesajınızla etkileşime girdiğinde ne olacağını tanımlayın.
  </Card>
</Columns>

***

## Uygulama içi mesajlar gönder

OneSignal dashboard'undan ve Journey'ler içinden uygulama içi mesajlar gönderebilirsiniz.

<Frame>
  <iframe width="560" height="315" src="https://www.youtube.com/embed/TSkqp4e-ya0?si=vbNStROmopkSWxWd" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen />
</Frame>

<Columns cols={2}>
  <Card title="Kontrol Paneli" icon="window-maximize" href="#send-from-the-dashboard">
    OneSignal kontrol panelinden uygulama içi mesajlar oluşturun ve gönderin.
  </Card>

  <Card title="Journeys" icon="route" href="./journeys-overview">
    Otomatik, çok adımlı ve çok kanallı akışlar oluşturun.
  </Card>
</Columns>

### Kontrol panelinden gönder

<Steps>
  <Step title="Mesaj kanalını seçin" icon="window-maximize">
    **Oluştur...** seçeneğini belirleyin ve mesaj kanalınızı seçin. Önceki mesajları görüntülemek için **Mesajlar** veya **Şablonlar** bölümüne de gidebilirsiniz.

    <Frame caption="OneSignal kontrol panelinde yeni bir mesaj oluşturun.">
      <img src="https://mintcdn.com/onesignal/UDk6E5NjA3sdGdRN/images/dashboard/create-message.png?fit=max&auto=format&n=UDk6E5NjA3sdGdRN&q=85&s=97504cf71555ac4aeb263a36ad2d28b3" alt="OneSignal dashboard showing create message options" width="2128" height="1374" data-path="images/dashboard/create-message.png" />
    </Frame>
  </Step>

  <Step title="Bir oluşturma yöntemi seçin" icon="pencil">
    * [Blok Editörü](./design-your-in-app-message) veya [HTML Editörü](./design-your-in-app-message-with-html) ile sıfırdan başlayın
    * Önceden oluşturulmuş bir [şablon](./templates) kullanın
  </Step>

  <Step title="Ad ve etiket belirleyin" icon="tag">
    İzleme ve raporlama için dahili meta veri ekleyin. API karşılığı: `name`
  </Step>

  <Step title="Kitlenizi seçin" icon="users">
    Mesajı alacak kullanıcıları seçin. Belirli grupları hedeflemek için [segmentleri](./segmentation) dahil edebilir veya hariç tutabilirsiniz. Segment belirlenmemişse varsayılan olarak tüm "Abone Olan Kullanıcılar" seçilir.

    <Frame caption="Kontrol panelinde ad, etiket ve kitle segmenti seçimi.">
      <img src="https://mintcdn.com/onesignal/ciRrThfP6xMpI7GY/images/dashboard/message-name-label-audience.png?fit=max&auto=format&n=ciRrThfP6xMpI7GY&q=85&s=1f41b0e42d31211b1c1badf87ba84056" alt="Dashboard fields for message name, label, and audience segment selection" width="1650" height="518" data-path="images/dashboard/message-name-label-audience.png" />
    </Frame>

    <Note>
      Uygulama içi mesajlar, push bildirimi onay durumundan bağımsız olarak segmentteki tüm [mobil aboneliklere](./subscriptions) iletilir. Ancak mesajınız bir push istemi [tıklama eylemi](#click-actions) içeriyorsa, zaten abone olan (onay vermiş) mobil aboneliklere gösterilmez.
    </Note>
  </Step>
</Steps>

### Mesaj tasarımı

Görsel sürükle-bırak editörümüzü veya daha fazla kontrol için HTML editörümüzü kullanın.

<Frame caption="Düzenleme ekranı">
  <img src="https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/b7df349-Screenshot_2022-12-10_at_12.52.59_PM.png?fit=max&auto=format&n=56ctKxZSV4m5VEkn&q=85&s=4930228c3107db798dadc1bf69b4b0d6" width="2134" height="1736" data-path="images/docs/b7df349-Screenshot_2022-12-10_at_12.52.59_PM.png" />
</Frame>

<Columns cols={2}>
  <Card title="Sürükle-bırak ile tasarla" href="./design-your-in-app-message" arrow={true}>
    Mesajları hızlıca oluşturmak için görsel editörümüzü kullanın.
  </Card>

  <Card title="HTML ile tasarla" href="./design-your-in-app-message-with-html" arrow={true}>
    Geliştiricilerin mesajları özelleştirmesi için tam kontrol.
  </Card>

  <Card title="Önceden oluşturulmuş HTML şablonları" href="./in-app-html-templates" arrow={true}>
    Test edilmiş düzenler ve kampanyalardan başlayın.
  </Card>

  <Card title="HTML için uygulama içi JavaScript API'leri" href="./in-app-message-api" arrow={true}>
    HTML mesajlarınıza OneSignal'in tıklama eylemlerini ekleyin.
  </Card>

  <Card title="Mesaj Kişiselleştirme" href="./message-personalization" arrow={true}>
    Her kullanıcı için mesajları kişiselleştirmek üzere dinamik içerik ekleyin.
  </Card>

  <Card title="Çok Dilli Mesajlaşma" href="./multi-language-messaging" arrow={true}>
    İçeriğinizi global kitleler için yerelleştirin.
  </Card>
</Columns>

### Tıklama eylemleri

Kullanıcılar mesajınızdaki öğelere tıkladığında ne olacağını özelleştirin.

<Frame caption="Tıklama eylemi seçenekleri">
  <img src="https://mintcdn.com/onesignal/yt4lRKoquAlWvRvF/images/iam/click_action_dropdown.png?fit=max&auto=format&n=yt4lRKoquAlWvRvF&q=85&s=4edea63fce3704ec2c343eacfc77f248" width="518" height="525" data-path="images/iam/click_action_dropdown.png" />
</Frame>

<Columns cols={2}>
  <Card title="Tıklama Eylemleri" href="./iam-click-actions" arrow={true}>
    Kullanıcılar mesajınızdaki öğelere tıkladığında ne olacağını özelleştirin.
  </Card>

  <Card title="Olay Akışları" href="./event-streams" arrow={true}>
    Mesajla etkileşimleri takip edin.
  </Card>

  <Card title="SDK Tıklama İşleyicisi" href="./mobile-sdk-reference#addclicklistener-in-app" arrow={true}>
    Mobil SDK'mızla tıklama olaylarına tepki verin.
  </Card>

  <Card title="Deep Linking" href="./deep-linking" arrow={true}>
    Tıklamada kullanıcıları yönlendirin.
  </Card>
</Columns>

### Tetikleyiciler

Uygulama oturumları sırasında mesajların ne zaman görüneceğini tanımlayın.

<Frame caption="Tetikleyici kurulumu">
  <img src="https://mintcdn.com/onesignal/jFWn5xzleD8du3j6/images/docs/5578ae6-image.png?fit=max&auto=format&n=jFWn5xzleD8du3j6&q=85&s=d70aa26e6fa87244d4fa8f4527d9b449" width="1766" height="884" data-path="images/docs/5578ae6-image.png" />
</Frame>

Dört tetikleyici türü:

<Columns col={2}>
  <Card title="Uygulama açılışında">
    Kullanıcı uygulamayı başlattığında tetiklenir.
  </Card>

  <Card title="Oturum süresi">
    Uygulama açıldıktan X saniye sonra gecikme.
  </Card>

  <Card title="Son mesajdan beri">
    Son uygulama içi mesajdan X süre sonra gecikme.
  </Card>

  <Card title="Özel tetikleyiciler" href="./iam-triggers" arrow={true}>
    SDK `addTrigger(s)` ile kontrol edilir.
  </Card>
</Columns>

#### Bu mesaj ne zaman kapanmalı?

Mesajlar şu şekilde kapanabilir:

* Kullanıcı etkileşiminde (tıklama, kaydırma)
* Belirli bir süreden sonra (otomatik kapatma)

<Frame caption="90 saniye sonra otomatik kapatma">
  <img src="https://mintcdn.com/onesignal/tc0EvmtSSX56SX0c/images/docs/8dcc001876557819348b804906ed63aee17d83bce300e63e91cc11c54eface2f-Screenshot_2025-04-08_at_2.00.07_PM.png?fit=max&auto=format&n=tc0EvmtSSX56SX0c&q=85&s=59d61042bc7d3e1855e4c90f9a83e562" width="1342" height="530" data-path="images/docs/8dcc001876557819348b804906ed63aee17d83bce300e63e91cc11c54eface2f-Screenshot_2025-04-08_at_2.00.07_PM.png" />
</Frame>

### Zamanlama ve sıklık

* **Göstermeye Başla**: Mesajın uygun hale geldiği zaman
* **Göstermeyi Durdur**: Bitiş tarihi/saati ayarlayın veya "Sonsuza dek göster"

#### Bu mesajı ne sıklıkla göstermek istiyorsunuz?

* **Yalnızca bir kez** (varsayılan)
* **Her seferinde** tetikleyiciler karşılandığında
* **Birden çok kez** özel tekrar mantığı ile:

Örnekler:

* **2 kez** göster, **1 saat** aralıkla
* **12 kez** göster, **30 gün** aralıkla

<Frame caption="Örnek, mesajı her 30 günde bir toplam 12 kez gösterecektir.">
  <img src="https://mintcdn.com/onesignal/Z6xkXGfmy814If53/images/docs/e66d013-Screenshot_2022-12-10_at_1.27.10_PM.png?fit=max&auto=format&n=Z6xkXGfmy814If53&q=85&s=0cfe8f5e92ea5d02aa5ae3c659b5538c" width="2100" height="756" data-path="images/docs/e66d013-Screenshot_2022-12-10_at_1.27.10_PM.png" />
</Frame>

***

## Uygulama içi mesajlar nasıl gösterilir

Uygulama içi mesajlar aktif olarak push edilmez. Bunun yerine, uygulama başlangıcında kitleye göre çekilir. Ardından tetikleyici mantığına göre görüntülenir.

<Frame caption="Uygulama içi mesaj görüntüleme mantığı akışı">
  <img src="https://mintcdn.com/onesignal/Z6xkXGfmy814If53/images/docs/e1ce302cd1350e6c9e5616937a8068329fe61619884cd62889cd1772fd29999d-1c688b0-lifecycle-of-an-in-app.png?fit=max&auto=format&n=Z6xkXGfmy814If53&q=85&s=7a7552973b2746cd2ffa36137e743675" width="2036" height="815" data-path="images/docs/e1ce302cd1350e6c9e5616937a8068329fe61619884cd62889cd1772fd29999d-1c688b0-lifecycle-of-an-in-app.png" />
</Frame>

Mesaj şu durumlarda görüntülenir:

1. Kullanıcı **yeni bir oturum** başlamadan *önce* kitle kriterlerini karşılar.

* **Yeni bir oturum**, kullanıcı uygulamanızı en az 30 saniye arka planda veya kapalı kaldıktan sonra açtığında başlar.
* Kullanıcılar mesaj yayına girdiğinde veya aynı oturum sırasında segment(ler)e girdiğinde uygulamayı açık tutuyorsa, mesajı görebilmek için uygulamayı en az 30 saniye odak dışı bırakmaları (kapatma veya arka plana alma) gerekir.

2. Tetikleyici koşulları karşılanır.
3. Zamanlanmış zaman ve sıklık geçerlidir.

Segment kriterleri oturum ortasında değişirse, kullanıcıların mesajı görmek için uygulamayı yeniden açması gerekir.

### Test etme

Test ederken, aşağıdakileri yapmanız önerilir:

<Steps>
  <Step title="Uygulamanıza ayrıntılı kayıt ekleme">
    Daha detaylı kayıtlar almak için uygulamanıza [`setLogLevel` metodunu `Verbose`'a](./mobile-sdk-reference#setloglevel) ekleyin.
  </Step>

  <Step title="Aboneliğinizin segment'te olduğundan emin olun">
    Yukarıda [Uygulama içi mesajlar nasıl gösterilir](#how-in-app-messages-are-shown) bölümünde açıklandığı gibi, kullanıcı **yeni bir oturum başlamadan önce** kitle kriterlerini karşılamalıdır.

    * Cihazınızın Abonelik ID'sini bilmiyorsanız [Cihazları Bul ve Test Kullanıcıları Ayarla](./test-users) bölümüne bakın.
    * Cihazınızın Aboneliğinin dahil edilen segment(ler)de olduğundan ve kullanılıyorsa hariç tutulan segment(ler)de olmadığından emin olun.
    * **İpucu**: Cihazınızı test Aboneliği olarak ekleyebilir ve **Test Kullanıcıları** filtresini içerecek şekilde segment'i oluşturabilir veya güncelleyebilirsiniz.
  </Step>

  <Step title="Uygulamanın en az 30 saniye kapalı veya odak dışı olduğundan emin olun">
    Bu, yeni bir oturum oluşturmak ve mesaj için uygun olmak üzere uygulamayı açtığınızdan emin olmanızı sağlayacaktır.
  </Step>

  <Step title="Tetikleyici koşullarını kontrol edin">
    Mesajın gösterilmesi için [tetikleyicileri](#triggers) karşıladığınızdan emin olun.
  </Step>

  <Step title="Zamanlamayı ve sıklığı kontrol edin">
    * "Göstermeye başla" ve "Göstermeyi durdur" tarihlerinin doğru ayarlandığından emin olun.
    * Test ederken ["Bu mesajı ne sıklıkla göstermek istiyorsunuz?"](#schedule-%26-frequency) ayarını "Tetikleyici koşulları her karşılandığında" olarak ayarlayın.
  </Step>

  <Step title="Mesajı güncelleyin ve aktif olduğundan emin olun">
    * Mesaj aktif olduğunda, cihazınızda uygulamayı açabilirsiniz.
    * Tetikleyici koşullarınıza göre mesajın görüntülendiğini görmelisiniz.
  </Step>
</Steps>

#### Test ve Önizleme düğmesi

**Test ve Önizleme** düğmesini kullanmak, seçtiğiniz test cihazınıza bir push bildirimi gönderecektir. Uygulamayı açmak için push'a tıkladığınızda, uygulama içi mesaj görüntülenecektir. Bu özelliği kullanmak için şunları yapmalısınız:

* Cihazınızın bir [Test Kullanıcısı](./test-users) olduğundan emin olun.
* Push bildirimleri **yalnızca test amaçları için gönderilir**. Mesaj yayına girdiğinde push gönderilmeyecektir.
* Uygulamayı açabilir ve "test mesajı" gönderebilirsiniz. Uygulama içi mesaj görüntülenecektir.
* Etiket İkamesi test Uygulama içi Mesajları için çalışmaz.
* Mesajı görmüyorsanız, [test adımlarını](#testing) takip ettiğinizden emin olun.
* Test Uygulama içi Mesajı almak için cihazınızın push'a abone olması gerekir. Test IAM'ler bir push bildirimi tarafından tetiklenir, bu nedenle aboneliğinizin geçersiz bir APNs belirteci varsa veya push'a abone değilseniz, test çalışmayacaktır.

<Info>
  Need help?

  Chat with our Support team or email `support@onesignal.com`

  Please include:

  * Details of the issue you're experiencing and steps to reproduce if available
  * Your OneSignal App ID
  * The External ID or Subscription ID if applicable
  * The URL to the message you tested in the OneSignal Dashboard if applicable
  * Any relevant [logs or error messages](/docs/en/capturing-a-debug-log)

  We're happy to help!
</Info>

***

## Eğitimler ve kullanım senaryoları

<Columns cols={2}>
  <Card title="Uygulama içi mesajı kişiselleştir" href="./personalization-properties-and-tags" arrow={true}>
    Etiketlerle uygulama içi mesajınızı kişiselleştirmek için adım adım kılavuz.
  </Card>

  <Card title="Eski uygulama sürümlerini hedefle" href="./app-version-update" arrow={true}>
    Kullanıcılardan uygulamalarını güncellemelerini isteyin.
  </Card>

  <Card title="Uygulama mağazası değerlendirme istemleri" href="./example-app-store-review" arrow={true}>
    Zamanında değerlendirme istekleriyle puanlarınızı artırın.
  </Card>

  <Card title="Kullanıcı anketleri oluştur" href="./example-create-a-survey" arrow={true}>
    Uygulamanızın içinde geri bildirim toplayın.
  </Card>

  <Card title="Push izni istemleri" href="./prompt-for-push-permissions" arrow={true}>
    Push katılım oranlarını iyileştirin.
  </Card>

  <Card title="Konum izni istemleri" href="./location-opt-in-prompt" arrow={true}>
    Kullanıcılardan konum takibini etkinleştirmelerini isteyin.
  </Card>

  <Card title="Bir eğitim oluştur" href="./example-create-a-tutorial" arrow={true}>
    Kullanıcıların uygulamanızın yeni özelliklerini anlamalarına yardımcı olmak için bir eğitim kurun!
  </Card>
</Columns>

***

## Analitik

Mesaj performansını ve etkileşimi takip edin.

<Columns cols={2}>
  <Card title="Uygulama içi mesaj raporları" icon="chart-line" href="./in-app-message-reports">
    Uygulama içi mesajlar için gösterim, tıklama, kapatma ve dönüşüm metrikleri.
  </Card>

  <Card title="Analitik genel bakışı" icon="chart-bar" href="./analytics-overview">
    OneSignal'da mevcut tüm analitik seçenekleri.
  </Card>

  <Card title="Olay Akışları" icon="signal-stream" href="./event-streams">
    Push olaylarını veri ambarınıza veya BI araçlarınıza gerçek zamanlı olarak aktarın.
  </Card>
</Columns>

***

## SSS

### Uygulama içi mesajlar push bildirimi izni gerektiriyor mu?

Hayır. Uygulama içi mesajlar, push katılım durumundan bağımsız olarak hedef Segmentteki tüm mobil Aboneliklere iletilir. Aktif bir oturum sırasında uygulama içinde görüntülenir.

### Uygulama içi mesajım neden görünmüyor?

En yaygın neden, kullanıcının oturumunun yenilenmemiş olmasıdır. Kullanıcı, yeni bir oturum başlatmak için uygulamayı en az 30 saniye kapatmalı veya arka plana almalı ve ardından yeniden açmalıdır. Kullanıcının hedef Segmentte olduğunu ve tetikleyici koşulların karşılandığını da doğrulayın. Tam kontrol listesi için [Test etme](#testing) bölümüne bakın.

### API aracılığıyla uygulama içi mesaj gönderebilir miyim?

Uygulama içi mesajları OneSignal panosu içinde oluşturmanız gerekir.

Uygulama içi mesajı [Journeys](./journeys-overview) içine ekleyebilir ve kullanıcıyı API'den tetiklenen [Özel Etkinlikler](./custom-events) aracılığıyla Journey'e dahil edebilirsiniz.

### Uygulama içi mesajlar push bildirimlerinden nasıl farklıdır?

Uygulama içi mesajlar, kullanıcı uygulamayı aktif olarak kullanırken uygulama içinde görüntülenir. Push bildirimleri, cihazın bildirim tepsisinde görünür ve uygulama kapalıyken bile kullanıcılara ulaşabilir. Uygulama içi mesajlar push izni gerektirmez ve sunucudan gönderilmek yerine oturum başlangıcında çekilir.

### Web'de uygulama içi mesaj kullanabilir miyim?

Hayır. Uygulama içi mesajlar yalnızca OneSignal mobil SDK'sı yüklü mobil uygulamalar için kullanılabilir. Web için bunun yerine [web push bildirimleri](./web-push-setup) kullanmayı düşünün.
