Uber App: Kurulum
lb-phone için Uber tarzı yolculuk uygulamasını birkaç dakikada sunucunda çalışır hâle getir.
Başlamadan önce
OneSync'in açık olduğundan ve sunucu artifact'inin güncel olduğundan emin ol. Script framework ve bildirim kaynağını kendisi tespit eder, veritabanı tablolarını ilk başlatmada kendisi oluşturur.
Gereksinimler
| Kaynak | Gerekli | Not |
|---|---|---|
| lb-phone | Evet | Uygulama telefona özel uygulama olarak eklenir |
| ox_lib | Evet | Callback'ler ve diller |
| oxmysql | Evet | Profiller, yolculuklar, cüzdanlar ve yorumlar SQL'de tutulur |
| qbx_core / qb-core / es_extended | Evet | Biri yeterli, otomatik seçilir |
| ox_lib / okokNotify / ps-ui | İsteğe bağlı | Oyun içi bildirimler, config'teki Notifications ayarına bak |
Sürücü fotoğrafları lb-phone kamerasıyla çekilir veya galerisinden seçilir; bu yüzden lb-phone'un medya yükleme ayarı yapılmış olmalı.
İndirme bağlantıları ve başlatma sırası için Bağımlılıklar sayfasına bak.
Kurulum adımları
Kaynağı indir
En güncel sürümü portal.cfx.re'den indir. Bkz. Satın alımı indir.
Klasör adını değiştirme
Klasörün adını hype-uber-app olarak bırak. Tüm export'lar bu isim üzerinden çağrılır.
Veritabanı
Çoğu durumda bir şey yapmana gerek yok. Script her başlatmada sql/install.sql dosyasını çalıştırır ve eksik tabloları
oluşturur:
| Tablo | İçerik |
|---|---|
uber_profiles | Müşteri ve sürücü profilleri |
uber_trips | Rota, ücret ve durumuyla her yolculuk |
uber_trip_events | Her yolculuğun durum değişiklikleri |
uber_wallets | Sürücü bakiyeleri ve toplamları |
uber_transactions | Her ücret, bahşiş, iade ve para çekme işlemi |
uber_reviews | Puanlar, yorumlar ve bahşişler |
Konsolda Could not create the database tables yazıyorsa veritabanı kullanıcının CREATE yetkisi olmayabilir.
sql/install.sql dosyasını bir kez elle çalıştır. MySQL 5.7+ veya MariaDB 10.2+ gerekir.
Kaynağı başlat
server.cfg dosyasına oxmysql, ox_lib, framework'ün ve lb-phone'dan sonra ekle.
ensure oxmysql
ensure ox_lib
ensure qbx_core # veya qb-core / es_extended
ensure lb-phone
# HypeScripts
ensure hype-uber-appTemel ayarları yap
config/config.lua dosyasını aç ve en azından App, BaseFare, PricePerMeter, Payment ve Wallet ayarlarını
kontrol et. Tüm seçenekler için Ayarlar sayfasına bak.
Başlatma sırası önemli
hype-uber-app framework'ünden önce başlarsa konsolda No supported framework found yazar ve hiçbir şey çalışmaz.
lb-phone sonradan yeniden başlarsa uygulama telefona kendiliğinden tekrar eklenir.
Kontrol et
Config'te Debug = true yap ve sunucuyu başlat. Konsolda şu satırları ara:
[DEBUG:SERVER] [INFO] Framework detected: qbx_core
[DEBUG:SERVER] [SUCCESS] Database tables are ready
[DEBUG:SERVER] [SUCCESS] hype-uber-app is ready (qbx_core)
[DEBUG:CLIENT] [SUCCESS] lb-phone app added (hype-uber)Telefonu aç. Uygulamayı App Store'dan yükle (App.defaultApp = true ise ana ekranda hazır gelir).
Bir karakterle sürücü olarak kayıt ol ve çevrim içi ol. İkinci bir karakterle müşteri olarak kayıt ol, haritadan bir hedef seç ve talep gönder. Sürücüye bildirim gelir ve talebi kabul edebilir.
Müşteriye git, müşterinin gördüğü 4 haneli kodu gir, hedefe sür ve yolculuğu bitir. Ücret sürücünün cüzdanına geçer.
Her şey çalışıyorsa Debug = false yapmayı unutma.
Nasıl çalışır
- Kayıt: oyuncular müşteri mi sürücü mü olacaklarını seçer. Diğer rol daha sonra profilden eklenebilir.
- Talep: müşteri haritadan hedef seçer. Ücret gerçek yol mesafesinden hesaplanır ve müşteri en düşük ücretin üstünde teklif verebilir.
- Kabul: çevrim içi sürücüler açık talepleri teklif ve mesafeyle birlikte görür. Kabul edince GPS alış noktasına ayarlanır.
- Başlangıç kodu: araç alış noktasına gelince müşteri Aracım geldi butonuna basar. 4 haneli bir kod çıkar ve müşteri bunu sürücüye söyler. Yolculuk sadece doğru kodla başlar ve ücret o anda tahsil edilir.
- Bitiş: sürücü hedefin yakınında yolculuğu bitirir. Sunucu rotayı kontrol eder ve ücreti sürücünün cüzdanına öder.
- Değerlendirme: müşteri sürücüyü puanlar, isterse yorum ve bahşiş bırakır.
Yolculuk durumları
| Durum | Anlamı |
|---|---|
requested | Sürücü bekleniyor |
accepted | Bir sürücü talebi kabul etti |
driver_arriving | Sürücü alış noktasına geliyor |
arrived | Sürücü alış noktasında |
in_progress | Kod girildi, yolculuk sürüyor |
completed | Yolculuk bitti ve ücret ödendi |
cancelled | Müşteri, sürücü veya sistem tarafından iptal edildi |
expired | Zamanında hiçbir sürücü kabul etmedi |