تنفيذ GAE XMPP خدمة خارجي مكون موجود XMPP server (على سبيل المثالejabberd أو OpenFire)

StackOverflow https://stackoverflow.com/questions/1641959

سؤال

هل لي أن أعرف ما إدماج تقنية أن الناس تستخدم لتنفيذ الخارجية عنصر إلى القائمة XMPP server (على سبيل المثالejabberd أو OpenFire) .يتم ذلك من خلال إرسال xmpp رسالة إلى مستخدم آخر@externaldomain مباشرة أو باستخدام آلية مثل urlfetch?

هل كانت مفيدة؟

المحلول

Google app engine (جي إن) لا يدعم XMPP فقط العميل.

مع XMPP جي جافا العميل الميزة يمكنك:

إرسال رسالة

JID jid = new JID("youraccount@jabber.org");
Message msg = new MessageBuilder()
    .withRecipientJids(jid)
    .withBody("Hello i'm a fancy GAE app, how are you?")
    .build();                    
XMPPService xmpp = XMPPServiceFactory.getXMPPService();
if (xmpp.getPresence(jid).isAvailable()) {
   SendResponse status = xmpp.sendMessage(msg);               
}

تتلقى رسالة

public class XMPPReceiverServlet extends HttpServlet {
  public void doPost(HttpServletRequest req, HttpServletResponse res)
          throws IOException {
    XMPPService xmpp = XMPPServiceFactory.getXMPPService();
    Message message = xmpp.parseMessage(req);    
    JID fromJid = message.getFromJid();
    String body = message.getBody();
    //Save to Big Table
  }
}

تذكر أن JIDs يمكن أن يكون مجرد yourappid@appspot.com أو foo@yourappid.appspotchat.com لأن جوجل المجالات غير معتمدة حتى الآن.

على سبيل المثال ، يمكن صياغة لعبة جي إن التطبيق مع صفحة بسيطة مع:

  1. نموذج html لإرسال النص
  2. Html الجدول الذي عرض قائمة الرسائل المستلمة المخزنة على الطاولة الكبيرة.

لاختبار التطبيق الخاص بك:

  1. إنشاء حساب على jabber.org
  2. تحميل صفعة
  3. في محاولة لإرسال رسالة من صفعة yourappid@appspot.com
  4. في محاولة لإرسال رسالة من جي إن التطبيق youraccount@jabber.org

في حال لديك شخصية خادم XMPP (openfire) وتشغيلها ، ببساطة تخطي الخطوة 1 استخدام حساب المجال الخاص بك تلقي رسالة من الهوى جي إن التطبيق.

إلقاء نظرة على XMPP تسليم الرسالة لفهم كيف يعمل هذا.

نصائح أخرى

ومحرك التطبيقات تدعم مجموعة فرعية محدودة جدا من XMPP. في الأساس، يمكنك إرسال رسائل (من خلال API)، ويمكنك الحصول على رسائل (أنها تأتي في مثل طلبات HTTP).

جافا API
بيثون API

هل يمكن أن ركب عنصر خارجي على الخادم XMPP الموجودة لديك، لإرسال واستقبال الرسائل مع رمز محرك التطبيق الخاص بك. سيكون هذا المكون لتتبع كل ما هو كنت ترغب في إرسال واستقبال من التطبيق الخاص بك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top