मेरे पास Ejabberd है और परीक्षण उपयोगकर्ताओं के साथ चल रहा है, और यह ठीक काम कर रहा है। मैं एक ऐसा मॉड्यूल जो संदेशों को बीच में रोकने और उन्हें संशोधित कर सकते हैं लिखना चाहते हैं इस प्रकार है:Ejabberd में संदेश कैसे फ़िल्टर करें
- अवरोधन "संदेश"
- एक php फ़ाइल
- करने के लिए उन्हें भेज एक ही php फ़ाइल से परिणाम प्राप्त (तत्काल)
- संदेश छंद संशोधित करें और इसे नीचे प्राप्तकर्ता
ejabberd प्रलेखन कमजोर है और ट्यूटोरियल न के बराबर करने के लिए तार भेज देते हैं। क्या आप मुझे कुछ नमूना कोड दे सकते हैं जो ऐसा करता है। मैं तब समझ सकता हूं कि इसे अपनी आवश्यकताओं के लिए कैसे कॉन्फ़िगर करें।
धन्यवाद एक बंडल!
आदिल
धन्यवाद gleber। मैं पहले से ही इसे चला चुका हूं और मैं देख सकता हूं? INFO_MSG कि मेरे पैकेट_इंटरसेप्टर को बुलाया जा रहा है। यह XML डेटा php (via? Xml =) पर कैसे भेज सकता है और परिणामस्वरूप XML पुनर्प्राप्त कर सकता है और फिर उसे प्राप्तकर्ता को पास कर सकता है? –
Adil
आपको अपनी PHP स्क्रिप्ट को कॉल करने के लिए शायद http: request/1,2,3 का उपयोग करना चाहिए। आईआईआरसी on_filter_packet को उसी प्रक्रिया में बुलाया जाएगा जैसे कि इब्बर्बेड राउटर प्रक्रिया, इसलिए आपको वहां कुछ भी समय लेने वाला नहीं करना चाहिए। तो इसके लिए एक नई प्रक्रिया को हल करना एक समाधान है, 'ड्रॉप' परमाणु (पैकेट ड्रॉप करने के लिए) लौटाएं और जब संशोधित स्टांजा PHP से वापस आती है तो इसे 'ejabberd_router: मार्ग (से, टू, पैकेट)' के साथ भेज दें। शायद आपके द्वारा भेजे गए नए पैकेट पर on_filter_packet को फिर से बुलाया जाएगा, इसलिए इसे पहचानना सुनिश्चित करें और इसे दो बार संसाधित न करें। – gleber
पैकेट का पता लगाने के लिए आप अपने 'xmlns' वाले पैकेट में' 'टैग जोड़ सकते हैं। –
gleber