Kayıtlar

Haziran, 2017 tarihine ait yayınlar gösteriliyor

Cisco CVP “Wav” dosyaları için 404 Hatası

Resim
IVR işlemleri ile uğraşıyorsanız, ININ, Genesys, Cisco Genel olarak birçok kısmı birbirine benzetebilirsiniz. Ancak yine de Her sistemin kendine has bir yoğurt yeme şekli mevcut. Şahsen Ağırlıklı Genesys GVP platformu ile uğraşan birisi olarak ister istemez bazı alışkanlıklarım mevcut, Cisco CVP geliştirmeleri esnasında da bu alışkanlıklarım algımı ister istemez etkiliyor. Örnek olarak GVP de var olmayan bir anons okunmadan geçer ve sistemin tamamen patlamasına yol açmaz. Ancak CVP de durum biraz farklı, Akışları Cisco firmasın’dan devir alınca bu durum beni oldukça rahatsız etti, http 404 hatası alınan bir WAV dosyası için son derece rahatsız bir “ I am sory, we have some difficulties…. ” Şeklindeki anons sonrası tüm akışın patlaması ve Akışın kesilmesi benim için oldukça rahatsız ediciydi. İncelediğimde sorunun aslında, yapılan istek sonrası Cisco CVP platformundaki WAV okunan sınıfın içinde cevabın dikkate alınmadan oynatılmaya çalışılması olduğunu ve 404 hatası alı...

JSON objesinde Fonksiyon/Method Kuullanımı

Resim
Javascript kullanıcılarının obje mantığı ve veri alış verişi için çok kullandığı bir nesnedir, JSON. Ayrıca Restfull servislerle de entegrasyon amacıyla önemli rol oynamaya başlamıştır. Günümüz teknolojisinde oldukça güzel bir yapı olarak düşünülebilir. JSON ile çokta bilinmeyen bir özellik mevcut, Nesne içerisinde Fonksiyon/Method tanımlanabiliyor. Böylece mevcut 1-2 alana göre dinamik sonuç üretilebilir, hatta inputa göre farklı response üretilebilir. Örnek olarak bu noktada, hacim hesaplayan bir fonksiyon yapılabilir, nesnenin özellikleri kullanarak dinamik sağlanabilir, hatta kaç tane obje kullanılacağı input alınarak mevcut oranlarla hesap makinası property si eklenmiş olabilir.

İzleme sistemi, isAlive/Monitoring servisleri

Resim
Büyük bir kurumda ya da karmaşık bir sistemin içinde çalışıyorsanız, izleme sistemlerinin ihtiyacını hissetmişsinizdir. Başka bir değişle baskısına maruz kalmış olmanızda olası. Belirtmekte fayda var bu tarz işleri gönülden desteklesem de, sadece Uygulama geliştirme tarafında kalıyorsa, şahsen samimiyetine inanamıyorum. Ancak programcı gözüyle ne yapabiliriz dersek çeşitli “Trace tool” ları mevcut. Fakat bu gün aslında birazda bireysel gayretle neler yapılabilir bundan bahsetmek istiyorum. Öncelikle, bu çabaları 2 ana başlıkta ele almak istiyorum; 1- (Monitoring service)  Uygulamanızda bağlantı kurduğumuz farklı yapılar ve hizmetin devamlılığı adına kritik rol oynayan bir kaç kod parçacığı mevcut. Bu adımların her biri için başarı durumlarını, hizmetin ayakta olup olmadığını ve bağlantı bacaklarının durumları ile bağlantı performanslarını sürekli ve anlık olarak takip edebilmeniz için geliştirilen bir servis olarak düşünülebilir. Başka bir değiş ile network katmanındak...

Tersine Mühendisliğe Önlem

Resim
Daha önce bahsettiğimiz gibi, tersine mühendislik diye bir kavram mevcut. Biz konuyu faydalı bir noktadan ele almaya çalışmıştık. Ancak tabiki söz konusu ticari ve piyasada dolanan bir kod ise, izinsiz kullanım ve lisans ihlali konuları düşünüldüğünde risk teşkil eden bir durum da oluşuyor. Decompile yani asseymbly dilinden istenen dile çevrimi, derlenmiş paketin içeriğine göre yapılır. temel olarak bu işlemin tamamen önlenmesi söz konusu olmasada basit toollar aracılığı ile herkezin yapamayacağı hale getirmek ve belirli ölçüde önlem almak mümkün. obfuscating yada obfuscator olacak şekilde yaptığınız bir arama ile gerekli yazılımlara ulaşabilirsiniz. kabaca 1-2 tanesini vermek gerekirse: JAVA --------- http://java-source.net/open-source/obfuscators/proguard - Open source https://www.yworks.com/products/yguard - Open source NET ------- Smart Assembly - Ücretli http://aveloy.com/products/DotRefiner.aspx - Open source https://obfuscar.codeplex.com/  - Open sou...

ASP.NET MVC 5 Rol bazlı yetki kontrolü

Resim
IdentityRole sınıfı ASP.NET için kimlik doğrulama altyapısını (Authentication) sağlar. Ancak ciddi bir sıkıntımız var zira sayfalarımız için rol kontrolünü (Authorization) direk kullanmak mümkün değil. Bu noktada aşağıdaki adımları izlemeniz yeterli. Ayrıca orjinal makaleyi ingilizce olarak incelemek isteyenler için orjinal linki vermekte fayda var : http://www.dotnetcurry.com/aspnet-mvc/1102/aspnet-mvc-role-based-security 1- (Model) AccountViewModels.cs classı login, register gibi yetki kontrolü için kullanılan modelleri barındırıyor. bu nedenle register adımında yer almayan rol tanımını bu class içindeki register adımında kullanılan RegisterViewModel modeline yetki bilgisini taşıyacak alanı ekleyerek başlıyoruz. public string Name { get; set; } bu kısım aynı zamanda proje code first olduğu için veri tabanı oluşturulurken ilgili kolonun oluşturulmasını sağlayacak. NOT : bu yapıyı Aktif olarak kullanabilmek için Asp.net in tablolarında rol definitionlarının olm...