• 13-04-2016, 12:27:39
    #1
    Arkadaşlar merhaba

    Yazmış olduğumuz bir android uygulamamız var. WCF Service kullanuyoruz. Veritabanı bir host altında. Uygulamaya bildirim göndermek istiyoruz. Fakat nasıl yapacağımızı bulamadık. Bu bildirim otomatik yada manuel olarak gönderilecek. Yani tablodaki verilerin belli şartları sağlaması durumunda yada kullanıcı kendi gönderecek.

    Android bildirim servisleri var. Onları inceledim fakat nasıl tetikleyeceğimizi bulamadık. windows service gibi birşey olsa sürekli tetikletiriz diye düşündük ama hosting sunucusunda çalıştıramayız bunu.

    Bu konuda önerisi olan var mıdır ?

    Cevaplarınız için şimdiden teşekkür ederim
  • 13-04-2016, 13:32:56
    #2
    wcf in normalde duplex kanalli endpointleri var ama sanirim android desteklemiyor (ios icin yapiyordum sonradan ogrendim haliyle calismadi)

    android icin google cloud messaging (gcm)i kullanabilirsin. .Net tarafinda http tabanli istek yollayabilirsin.

    yapman gereken 2 tane sey olacak.

    1. .net tarafinda bu servisi tetiklemen.. bunun icin buraya bakabilirsin

    http://www.codeproject.com/Tips/4343...h-Notification

    2. bu sefer de android icin belli bir app key uzerinden kendini sisteme register edip (subscribe gibi dusun) daha sonra cevap beklemek

    http://www.intertech.com/Blog/push-n...messaging-gcm/

    her telefon'un almasini istemiyorsan da data na ozel bir deger koyarsin, login olmus kullanicinin username i mesela.. ona gore datadaki o deger ile telefondan login olmus kullanicinin username leri tutuyorsa onda islem yaptirirsin.

    2. verdigim linkte key nasil olusturulur o da anlatiliyor.


    ek olarak buralara da bakabilirsin

    http://labs.distriqt.com/post/1223

    http://www.androidhive.info/2016/02/...hat-app-part-1 (burada 3 part bir demo uygulama var php ve android ile yapilmis. php tarafini .net sekline cevirirsen bu tarz bi sey kullanabilirsin)


    kolay gelsin
  • 13-04-2016, 13:48:34
    #3
    Onesignal bakmanızı öneririm.
  • 13-04-2016, 14:41:20
    #4
    Aslına bakarsan o örneklere baktım. Henüz deneyemedik fakat benim aklıma yatmayan birşey var.

    Mesela : Android GCM Push Notification kullanarak kullanıcıya mesaj gönderebiliyoruz sanırım. Gerekli key leri alarak. Ama bu manuel bir tetikleme sonucunda atılabilir gibime geliyor. SendNotification diye bir method var. Ben bunu çağırınca bildirim gidecek. Ama ben bu methodu otomatik bazı şartlar oluştuğunda da çağırmak istiyorum. Bunu nasıl yapacağımı bulamadım.
  • 13-04-2016, 19:35:00
    #5
    sartlar kendi kendine olmaz hocam..

    birileri veri girecek ve o zaman sartlarin olusup olmasidigini kontrol ettirip yollatacaksin. Yani soyle;

    stok oldugunu dusunelim, bir urun satildiginda stogundan 1 dusecek ve bunla ilgili wcf tarafinda StoktanDus diye bir metodun var. Stok durumu 5 oldugunda da bildirim gondermek istiyorsun. O halde

    StoktanDus metodunu cagirdiktan sonra BildirimIcinStokKontrol diye bir metodunu cagirip orada stok durumunun 5 olup olmadigina bakacaksin. 5 i se bildirim yollatacaksin.
    Sonucta StoktanDus metodu cagrilmadikca stoktan sayi dusmeyecegine gore senin de bagli olman gereken metod StoktanDus metodu olur.
  • 13-04-2016, 21:51:05
    #6
    wcf servislerde scheduled job tarzı bir işlem yaptıramaz mıyız ?

    yani kullanıcının istediği bu işlemin otomatik olması. kesin olmaz dersek konuşur iptal ederiz ama bir yolu olabilir gibime geliyor
  • 13-04-2016, 23:16:27
    #7
    mumkun degildir hocam senin istedigin tarzda..


    ancak boyle egzanterik cozumler bulabilirsin

    http://stackoverflow.com/questions/7...auto-scheduled
    http://stackoverflow.com/questions/7...eduled-service

    eger bir vps kullaniliyorsa gorev yoneticisi bir exeyi calistirabilir ve o exe de servisin ilgili kismini calistirabilir. Boylece cok fazla kaynak harcanmamis olabilir.

    Tavsiyem benim yazdigim sekilde olmasi hocam.. tam olarak istenilen ne bilmiyorum, neden otomatik calisma geregi duyulsun ki? gunluk bir seyse timer ile yapilabilir ama bana gore uygun yontem degil.


    bir de soyle servisler var

    https://www.setcronjob.com/

    belirli zamanlarda servisini aktif ettirmek icin kullanabilirsin. ucreti de fazla degil..

    kolay gelsin


    edit:

    ucretsiz hizmet veren de var ama ne kadar saglikli olur, ihtiyaci karsilar mi bilemem

    https://www.easycron.com/

    not: bu arada sanirim sadece restful servisler icin gecerli, bakman lazim soap kullaniyorsan