2016-11-11 28 views
7

Son zamanlarda kendim için bir bot yapmaya çalışıyordum. Botum'u yerel olarak test etmek için ngrok kullanıyorum, ancak AWS'ye konuşlandırdığımda, bazen ara sıra yakalanan hatayı görmeye başladım ve sunucumdan Facebook'a hiçbir webhook isteği göndermemeye başladım. Neyin yanlış gidebileceği hakkında hiçbir fikrim yok. Sunucuya tcpflow ile gidip gelen isteği kontrol ettim, fakat şans yok, Facebook'un bu isteği sunucuma göndermemesi gibi görünüyor. Bu, bot konuşma akışımın belirli bir noktasında gerçekleşen gerçekten garip bir sorundur. Çalışmak için her zaman cevabımı veya geri bildirimimi tekrarlamam gerekiyor.Facebook messenger chatbot "Bağlantınızı kontrol edin ve tekrar deneyin."

Bazı temel sunucu bilgileri (bu konularda bilmiyorum):

  1. Durumu bölge: ap-güneydoğu-1b
  2. Tür:
  3. CPU kullanımı t2.micro (o anda) : 4%

Eğer kimse benim gizemi çözebilirse çok memnun olurum. Teşekkürler.

Bilginize, ben Facebook'a bu bildirdin: https://developers.facebook.com/bugs/1825253057751227

connection error example

+0

Sadece bu hatayı inceledim, Bundan farklı mı: http://android.stackexchange.com/a/100886 – C2486

+0

Aws örneğinizde statik bir ip kullanıyor musunuz? VPC? –

+0

AWS için elastik bir IP kullanıyorum. Aslında bunu Facebook’a bildirdim ve bunun geçerli bir hata olduğunu ve düzeltmek için atanan kişileri olduğunu kabul ettiler, ancak henüz düzeltilmemiş olsa da – Roy

cevap

0

Kişisel webhook sunucu üzerinde geçerli https çalışmak zorundadır (değil kendinden imzalı).

Benim tavsiyem - cloudflare service kullanarak, sunucuyu webhook için https ekleyin (serbest `s) veya hata arada ise, ben Micro adresinin örnek büyüklüğü kadar hareketli öneriyoruz letsencrypt

+0

Ben aslında bir ama aynı problemle karşılaşan bir letsencrypt kullanıyorum :( – Roy

+0

Istemciler tarafından Curl veya postMaster gibi istemciler tarafından istekleri test edebilir misiniz.Bu sınama tarafından aws istekleri görüyor musunuz? –

+0

Evet, hata bazen normal, ben AWS'deki talebi görebildi, sadece bazen hata meydana geldi – Roy

0

kullanarak ücretsiz geçerli bir sertifika almak En az Orta veya Büyük, ve bir Dedicated örneği yapın. Letsencrypt istemcisini çalıştırmak için gereken kaynaklar, bot trafiğiniz ve gürültülü komşularla birleştirildiğinde paylaşılan bir mikro örneğin üstesinden gelebilir.

İlgili konular