Ben bir ağ geçidine gönderilen SMS mesajlarınızı alacaktır bir web sitesi geliştiriyorum. Geçidi aşağıdaki biçimde istekleri ile, bir API üzerinden erişilir:
http://www.smsgateway.com/?login=myusername&password=mypassword&lasttime=1236164238
O zaman iade edilir sonra alınan tek mesajları - Ben mesajları indirilen son kez izlemek için yaşıyorum dikkat edin.
Sorun sunucuları arasında yaklaşık 5 dakikalık bir zaman farkı var olduğunu! Buradaki budur:
-> Kullanıcı SMS gönderir; gateway sunucu 11:00 adresinden damgaları (gerçek zamanlı 10:55 diyelim)
-> Benim sunucu itibaren 10,56 gönderilen tüm iletileri istekleri - Yukarıdaki mesajı alır ve veritabanına ekler
-> Benim sunucu itibaren 10,58 gönderilen tüm iletileri istekleri - Yukarıdaki mesajı alır ve 11:00 de timestamped olduğundan, tekrar ekler
-> Benim sunucu saat 11.00 'de bir başka isteği gönderir - mesajı alır ve bir kez daha veritabanına ekler
Yani benim sorunum bir orijinal mesajı 3 kez alınıyor olmasıdır.
Benim sunucunun saatini değiştirme yapmak mümkün değil, ama uzak sunucular.
Nasıl mesaj veritabanında zaten olup olmadığını görmek için kontrol olmadan bu işleyebilir?