Ana içeriğe geç

Google Maps Node

Google Maps node'u, SkyStudio workflow'larında Google Maps Platform ile entegrasyon sağlar. Adres/koordinat dönüştürme, mesafe hesaplama, yakın yer arama, yön tarifi alma ve statik harita görseli oluşturma gibi işlemleri otomatikleştirebilirsiniz.


Bağlantı Kurulumu ve Yönetimi

Google Maps node'unu kullanabilmek için bir Google Maps API anahtarı gereklidir.

API Anahtarı Alma

  1. Google Cloud Console adresine gidin.
  2. Bir proje oluşturun veya mevcut bir projeyi seçin.
  3. APIs & Services → Library bölümünden aşağıdaki API'leri etkinleştirin:
    • Maps JavaScript API
    • Geocoding API
    • Places API
    • Directions API
    • Distance Matrix API
    • Maps Static API
  4. APIs & Services → Credentials bölümünden Create Credentials → API Key seçin.
  5. Oluşturulan API anahtarını kopyalayın.

SkyStudio'ya Bağlantı Ekleme

  1. SkyStudio'nun sol menüsünden Uygulama Bağlantıları bölümüne gidin.
  2. Yeni Bağlantı Ekle butonuna tıklayın.
  3. Sağlayıcı olarak Google Maps seçin.
  4. API anahtarınızı ilgili alana yapıştırın ve kaydedin.

Bağlantıyı Node'a Atama

Google Maps node'unu canvas'a ekledikten sonra sağ paneldeki Uygulama Bağlantıları açılır menüsünden oluşturduğunuz bağlantıyı seçin.

Not: Her operasyon için aynı bağlantı kullanılır. Farklı projeler için farklı API anahtarıyla birden fazla bağlantı tanımlayabilirsiniz.


Operasyonlar

Google Maps node'u 9 operasyon sunmaktadır:

OperasyonKategoriAçıklama
Adres → KoordinatÖne ÇıkanMetin adresini enlem/boylam koordinatlarına çevirir
Mesafe & SüreÖne Çıkanİki nokta arasındaki mesafe ve seyahat süresini hesaplar
Yakındaki YerlerÖne ÇıkanBelirli koordinat etrafındaki yerleri arar
Yer AraÖne ÇıkanMetin sorgusuyla yer ve adres arar
Harita AI AsistanÖne ÇıkanDoğal dil sorgusuyla harita verilerini sorgular
Koordinat → AdresStandartEnlem/boylam koordinatını metin adresine çevirir
Yön TarifiStandartİki nokta arasında adım adım yol tarifi verir
Yer DetayıStandartPlace ID ile bir yerin detaylı bilgilerini getirir
Harita GörseliStandartBelirtilen konumu statik görsel olarak döndürür

Adres → Koordinat

Bir metin adresini enlem (latitude) ve boylam (longitude) koordinat değerlerine dönüştürür. Geocoding işlemi olarak da bilinir.

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
AddressEvetKoordinata çevrilecek adres metni (örn. Taksim Meydanı, İstanbul)
LanguageHayırSonuçların döneceği dil kodu (örn. tr, en)

Örnek Çıktı

{
"lat": 41.0369,
"lng": 28.9850,
"formatted_address": "Taksim Meydanı, Beyoğlu/İstanbul, Türkiye"
}

Mesafe & Süre

Bir veya birden fazla başlangıç noktasından bir veya birden fazla varış noktasına olan mesafeyi ve tahmini seyahat süresini hesaplar (Distance Matrix).

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
OriginsEvetBaşlangıç noktası veya noktaları (adres ya da enlem,boylam formatında)
DestinationsEvetVarış noktası veya noktaları (adres ya da enlem,boylam formatında)
Travel ModeHayırUlaşım türü: driving (araç), walking (yürüyüş), bicycling (bisiklet), transit (toplu taşıma)
LanguageHayırSonuçların döneceği dil kodu

Origins / Destinations Formatı

Tek nokta: Kadıköy, İstanbul

Birden fazla nokta: Kadıköy, İstanbul|Beşiktaş, İstanbul


Yakındaki Yerler

Verilen koordinat noktası etrafında belirtilen yarıçap içindeki yerleri listeler. Restoran, eczane, ATM gibi kategoriye göre filtreleme yapılabilir.

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
LatitudeEvetMerkez noktanın enlem değeri (örn. 41.0082)
LongitudeEvetMerkez noktanın boylam değeri (örn. 28.9784)
Radius (meters)EvetArama yarıçapı (metre cinsinden, maks. 50000)
Place TypeHayırYer kategorisi (örn. restaurant, pharmacy, atm, hospital)
KeywordHayırSonuçları filtreleyen anahtar kelime (örn. kahve, pizza)
LanguageHayırSonuçların döneceği dil kodu

Place Type Örnekleri

restaurant, cafe, hospital, pharmacy, bank, atm, gas_station, hotel, supermarket, school, park


Yer Ara

Metin tabanlı arama sorgusuyla Google Maps'te yer ve adres arar. Kullanıcı girişine dayalı yer arama senaryolarında kullanılır.

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
Search QueryEvetArama metni (örn. İstanbul Havalimanı, Antalya otelleri)
LanguageHayırSonuçların döneceği dil kodu

Örnek Çıktı

{
"results": [
{
"place_id": "ChIJLU7jZClu0xQRIOd2kzuSCZU",
"name": "İstanbul Havalimanı",
"formatted_address": "Tayakadın, 34283 Arnavutköy/İstanbul",
"geometry": {
"location": { "lat": 41.2608, "lng": 28.7418 }
},
"rating": 4.3
}
]
}

Harita AI Asistan

Doğal dil sorgusuyla Google Maps verilerini sorgular. Karmaşık arama ve filtreleme işlemlerini sade bir soru formatıyla gerçekleştirir.

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
QueryEvetDoğal dil sorgusu
System PromptHayırAI asistanının davranışını özelleştiren sistem talimatı

Kullanım Örneği

Query: "Kadıköy'e en yakın 3 eczaneyi bul"

System Prompt: "Sadece 24 saat açık olan yerleri listele ve adreslerini Türkçe ver."


Koordinat → Adres

Enlem/boylam koordinatlarını okunabilir metin adresine dönüştürür. Ters geocoding (reverse geocoding) işlemidir.

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
LatitudeEvetEnlem değeri (örn. 41.0082)
LongitudeEvetBoylam değeri (örn. 28.9784)
LanguageHayırSonuçların döneceği dil kodu

Örnek Çıktı

{
"formatted_address": "Sultanahmet, Fatih/İstanbul 34122, Türkiye",
"address_components": [
{ "long_name": "Sultanahmet", "types": ["neighborhood"] },
{ "long_name": "Fatih", "types": ["sublocality"] },
{ "long_name": "İstanbul", "types": ["locality"] }
]
}

Yön Tarifi

İki nokta arasında adım adım yol tarifi üretir. Ara duraklar (waypoints) eklenebilir; farklı ulaşım modları desteklenir.

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
OriginEvetBaşlangıç noktası (adres veya enlem,boylam)
DestinationEvetVarış noktası (adres veya enlem,boylam)
WaypointsHayırRota üzerindeki ara duraklar (boru | ile ayrılmış)
Travel ModeHayırUlaşım türü: driving, walking, bicycling, transit
LanguageHayırTalimatların döneceği dil kodu

Waypoints Kullanımı

Üsküdar, İstanbul|Bostancı, İstanbul

Her waypoint bir ara durak oluşturur; rota sırayla tüm noktalardan geçer.


Yer Detayı

Bir yerin Place ID'sini kullanarak o yere ait detaylı bilgileri getirir: telefon numarası, çalışma saatleri, web sitesi, fotoğraflar, yorumlar ve daha fazlası.

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
Place IDEvetYerin Google Maps Place ID'si (örn. ChIJLU7jZClu0xQRIOd2kzuSCZU)
FieldsHayırGetirilecek alanlar (virgülle ayrılmış, örn. name,rating,opening_hours,formatted_phone_number)
LanguageHayırSonuçların döneceği dil kodu

Place ID Nasıl Bulunur?

"Yer Ara" operasyonunun çıktısındaki place_id alanı doğrudan kullanılabilir. Google Maps web arayüzünde de bir yeri sağ tıklayarak Place ID kopyalanabilir.

Fields Örnekleri

name, rating, formatted_address, formatted_phone_number, website, opening_hours, photos, reviews, price_level, geometry


Harita Görseli

Belirtilen konumu merkez alarak statik bir harita görseli (PNG) oluşturur. Workflow çıktılarına veya raporlara harita eklemek için kullanılır.

Parametreler

ParametreZorunluAçıklama
ConnectionEvetKullanılacak Google Maps API bağlantısı
CenterEvetHaritanın merkez noktası (adres veya enlem,boylam)
Zoom (1-20)HayırZoom seviyesi: 1 = dünya, 10 = şehir, 15 = sokak, 20 = bina (varsayılan: 13)
Width (px)HayırGörsel genişliği piksel cinsinden (varsayılan: 600)
Height (px)HayırGörsel yüksekliği piksel cinsinden (varsayılan: 400)
Map TypeHayırHarita türü: roadmap (yol), satellite (uydu), terrain (arazi), hybrid (karma)
MarkersHayırHaritaya eklenecek işaretçiler (adres veya enlem,boylam)

Zoom Rehberi

DeğerGörünüm
1-3Kıta / Dünya
4-6Ülke
7-10Şehir
11-13İlçe
14-16Sokak
17-20Bina / Detay

Hızlı Başlangıç Örnekleri

Örnek 1: Teslimat Adresi Doğrulama

Kullanıcının girdiği adresi koordinata çevirip haritada göster:

Metin Girişi → Adres → Koordinat → Harita Görseli → Metin Çıktısı

Adres → Koordinat ayarları:

  • Address: {{input.text}}
  • Language: tr

Harita Görseli ayarları:

  • Center: {{geocode.lat}},{{geocode.lng}}
  • Zoom: 15
  • Map Type: roadmap
  • Markers: {{geocode.lat}},{{geocode.lng}}

Örnek 2: Yakın Eczane Bulucu

Kullanıcının konumuna göre yakındaki eczaneleri listeleyen chatbot:

Metin Girişi (konum) → Adres → Koordinat → Yakındaki Yerler → LLM (listele) → Metin Çıktısı

Yakındaki Yerler ayarları:

  • Latitude: {{geocode.lat}}
  • Longitude: {{geocode.lng}}
  • Radius (meters): 1000
  • Place Type: pharmacy
  • Language: tr

Örnek 3: Saha Ekibi Yön Tarifi

Müşteri adresine saha ekibinin güzergahını hesaplayan workflow:

HTTP Çağrısı (CRM'den adres al) → Yön Tarifi → LLM (özetle) → Slack Mesajı

Yön Tarifi ayarları:

  • Origin: {{crm.depot_address}}
  • Destination: {{crm.customer_address}}
  • Travel Mode: driving
  • Language: tr

Örnek 4: Doğal Dil Harita Asistanı

Kullanıcının sorularını doğal dilde yanıtlayan harita chatbot'u:

Metin Girişi → Harita AI Asistan → Metin Çıktısı

Harita AI Asistan ayarları:

  • Query: {{input.text}}
  • System Prompt: "Türkçe yanıt ver. Adres ve mesafe bilgilerini her zaman dahil et."

Sık Karşılaşılan Hatalar

HataOlası NedenÇözüm
REQUEST_DENIEDAPI anahtarı geçersiz veya eksik izinAPI anahtarını kontrol edin; gerekli API'lerin Cloud Console'da etkin olduğunu doğrulayın
ZERO_RESULTSAdres veya yer bulunamadıArama sorgusunu veya adresi daha açık yazın
OVER_QUERY_LIMITAPI kota aşıldıGoogle Cloud Console'da kota limitlerini artırın veya istek sıklığını azaltın
INVALID_REQUESTEksik zorunlu parametreOrigin/Destination veya Latitude/Longitude alanlarının dolu olduğunu kontrol edin
NOT_FOUNDPlace ID bulunamadıPlace ID'nin güncel ve geçerli olduğunu "Yer Ara" ile doğrulayın
MAX_WAYPOINTS_EXCEEDEDÇok fazla ara durakWaypoints sayısını 8 veya altına indirin

Notlar

  • Language alanı için ISO 639-1 dil kodları kullanılır: Türkçe için tr, İngilizce için en, Almanca için de.
  • Radius (Yakındaki Yerler) maksimum 50.000 metre olabilir; daha büyük değerler otomatik kırpılır.
  • Harita Görseli operasyonu görsel URL'si yerine doğrudan PNG binary döndürebilir; workflow'da "Dosya Çıktısı" node'u ile kaydetmek mümkündür.
  • Google Maps API'si istek başına ücretlendirme modeli kullanır. Yüksek hacimli workflow'larda maliyet optimizasyonu için sonuçları önbelleğe almayı (cache) düşünün.
  • Place ID zamanla değişebilir; uzun süreli saklama yerine her seferinde "Yer Ara" ile güncel ID almak önerilir.