2009-05-01 5 views
9

क्या इंटरनेट पर दो मोबाइल डिवाइस (आईफ़ोन) के बीच सॉकेट कनेक्ट करना संभव है?क्या इंटरनेट पर दो मोबाइल डिवाइस (आईफ़ोन) के बीच सॉकेट कनेक्ट करना संभव है?

मैं प्रत्येक डिवाइस के आईपी को खोजने और सीधे कनेक्ट करने की कोशिश कर रहा हूं। मुझे पता है कि यह बोनजोर के साथ किया जा सकता है लेकिन यह केवल स्थानीय नेटवर्क पर काम करता है। मुझे इंटरनेट पर दो उपकरणों के बीच एक उच्च गति कनेक्शन की आवश्यकता है।

धन्यवाद।

+0

क्यों व्यक्तिपरक? –

+1

विषय वस्तु क्योंकि मैं इस बात के बारे में किसी भी राय के लिए खुला हूं कि मुझे यह कैसे आना चाहिए/नहीं। धन्यवाद! –

+1

यह व्यक्तिपरक साधन नहीं है। यह बहुत मकसद है। Retagged। मैंने अलौसो को रीयल-टाइम हटा दिया क्योंकि यह उस अर्थ में "वास्तविक समय" नहीं है। –

उत्तर

9

यदि आपके पास आईपी दोनों थे और वे दोनों रूटेबल थे, तो यह संभव होना चाहिए। मुझे यकीन नहीं है कि अगर 3 जी नेटवर्क द्वारा आईपी दिया गया है तो वह योग्य है। यदि आप वाईफ़ाई का उपयोग कर रहे हैं, तो आपको प्राप्त आईपी लगभग निश्चित रूप से रूटेबल नहीं है। मान लीजिए कि आपके पास एक रूटेबल आईपी है, लेकिन यह संभव होना चाहिए।

यह चाल सिर्फ दूसरे डिवाइस के आईपी की खोज कर रही है। ऐसा करने का सबसे अच्छा तरीका यह होगा कि जब आपका ऐप शुरू होता है तो प्रत्येक डिवाइस वेब सेवा के साथ अपना आईपी पंजीकृत करेगा, फिर उस डिवाइस को अन्य उपकरणों के आईपी खोजने के लिए पूछें।

ऐप बंद होने पर या जब कोई आईपी बदलता है तो यह थोड़ा मुश्किल प्रबंधन "अनियंत्रित" आईपी हो सकता है, लेकिन यह करने योग्य होना चाहिए।

ईटीए:

यदि आप किसी सर्वर है कि वे दोनों कनेक्ट कर सकते हैं, आप एक समाधान है कि सर्वर का उपयोग कर लागू करने के लिए सक्षम होना चाहिए (उदा फोन वास्तव में एक दूसरे से सीधे जोड़ने के बिना)। यह फोन के लिए रूटेबल आईपी रखने के मुद्दे से बच जाएगा।

सॉकेट को एक साथ कैसे पुल करना है - आपका सर्वर प्रोग्राम मूल रूप से पुराने स्कूल फोन स्विचबोर्ड ऑपरेटर की तरह काम करेगा। आपके पास किसी प्रकार का पंजीकरण & सर्वर सॉफ़्टवेयर में निर्मित डिस्कवरी प्रोटोकॉल होगा जो किसी फोन को सर्वर से पंजीकृत करने की अनुमति देगा, वर्तमान में सर्वर से जुड़े अन्य फोन की एक सूची पूछता है, यह इंगित करता है कि वह किस फोन से बात करना चाहता है, और अन्य फोन से कनेक्शन स्वीकार करते हैं।

एक बार यह जानता है कि किसके साथ बात करना चाहता है, आपका सर्वर सॉफ़्टवेयर एक फोन की सॉकेट से पढ़कर और उस डेटा को दूसरे फोन की सॉकेट पर लिखकर दोनों को जोड़ देगा।

+0

मैं वेब सर्वर पर प्रत्येक डिवाइस के आईपी को पंजीकृत करने के लिए अपमानजनक रूप से संभाल सकता हूं। हालांकि, मैं वाई-फाई और 3 जी संभवतः संभवतः रूटेबल नहीं होने के बारे में जो कुछ कहता हूं उससे चिंतित हूं। मैं इसे आइपॉड टच के साथ काम करना चाहता हूं जो केवल वाई-फाई से कनेक्ट हो सकता है। मैं एक वेब सर्वर स्थापित कर सकते हैं। मैं अनुमान लगा रहा हूं कि प्रत्येक डिवाइस सर्वर से कनेक्ट हो सकता है (लगातार?) सॉकेट। मुझे नहीं पता कि सर्वर पर दो कनेक्शन/सॉकेट के बीच डेटा कैसे पास किया जाए। साथ ही, यह इस बात से संबंधित है कि यह पर्याप्त तेज़ होगा? –

+0

आपकी प्रतिक्रिया के लिए भी धन्यवाद मुझे लगता है कि पानी कम गंदे हो रहा है। –

+0

ठीक है, अधिक जानकारी के साथ मेरी प्रतिक्रिया संपादित की। प्रदर्शन के लिए, यह काफी हद तक निर्भर करेगा कि आपका सर्वर कितना तेज़ है और कितने एक साथ कनेक्शन को संभालना होगा। एक अच्छी तरह से लागू सर्वर के साथ, यह लगभग सीधे फोन-टू-फोन कनेक्शन के रूप में तेज़ होना चाहिए। –

2

केवल एक सुझाव है, लेकिन यदि आप उनमें से प्रत्येक को किसी तीसरे साइट से कनेक्ट करने के लिए प्राप्त कर सकते हैं, तो आप प्रत्येक के पते को जानेंगे। फ़ोन ए के पते को फोन बी (और/या फोन बी से फोन ए) के पते पर भेजें और फिर फिट होने पर उन्हें कनेक्ट करें।

1

क्या आपने सभी 3.0 सुविधाओं को देखा है? विशेष रूप से सहकर्मी नेटवर्किंग (जिसका अस्तित्व सार्वजनिक है)।

+1

सहकर्मी वैन और ब्लूटूथ है। मुझे वह काम मिल गया है, मैं सिर्फ तीसरा स्तर जोड़ना चाहता हूं –

1

वाईफ़ाई राउटर में अक्सर "पोर्ट ट्रिगरिंग" नामक एक सुविधा होती है जो आंतरिक होस्ट (इस मामले में एक आईफोन) को राउटर को सूचित करने की अनुमति देती है कि वे उन्हें भेजे गए विशेष पोर्ट पर कनेक्शन रखना चाहते हैं। मुझे नहीं पता कि आईफोन इस प्रोटोकॉल का समर्थन करता है या नहीं।

IP लुक के लिए आप DynamicDNS उपयोग करने पर विचार हो सकता है यदि दो मेजबानों समय से आगे जाना जाता है या के रूप में एक कस्टम वेब सेवा ऊपर कहा गया है कि अगर वे नहीं कर रहे हैं (यानी मित्र का आदान प्रदान होस्ट नामों बनाम अजनबियों एक दूसरे को खोज)

0

मैं एक बहुत मजबूत भावना है (लेकिन कोई सबूत नहीं है) कि आईफोन पता गैर-रूका जा सकता है। बेशक यह वास्तव में ऑपरेटर पर निर्भर करता है लेकिन & टी 10.x.x.x पते देता है।

ऐप्पल में sample (desktop) code है जो UnPnP का समर्थन करने वाले वाईफाई राउटर पर पोर्टमैपिंग को लागू करने के लिए बोनजोर का उपयोग करता है।

1

यह एक पुराना धागा है, लेकिन मैं बस इसे पार कर गया। आप सार्वजनिक आईपी पता/पोर्ट कॉम्बो प्राप्त करने के लिए एक स्टन सर्वर (या एनएटी-पीएमपी) का उपयोग कर सकते हैं और फिर उसे दूसरे फोन पर एसएमएस कर सकते हैं। जब तक आप पहले डिवाइस पर एक श्रवण बंदरगाह खोलते हैं, तो आपका दूसरा डिवाइस सीधे आपके द्वारा भेजे गए प्रकाश आईपी पते/पोर्ट का उपयोग करके सीधे कनेक्ट हो सकता है (एसएमएस पुश रजिस्ट्री स्वचालित रूप से दूसरे डिवाइस पर आपके ऐप को जगा सकती है ऐसा करें)

1

मैंने इस समस्या को एक ऐप के साथ चलाया है जिसे मैं विकसित कर रहा था। मैं एक आईफोन से एक पीसी सेल कार्ड से कनेक्ट करने की कोशिश कर रहा था। समस्या यह है कि AT & टी iPhones के लिए मोबाइल समाप्ति सक्षम नहीं करता है, इसलिए यह एक दूसरे से कनेक्ट करने के लिए एटी & टी नेटवर्क पर दो फोन के लिए शारीरिक रूप से असंभव है। यह सीधे एटी & टी एंटीना इंजीनियर से है।

मैं इसे एक सर्वर में आईफोन वीपीएन रखने के द्वारा काम करने में सक्षम था और फिर पीसी सेल कार्ड से कनेक्ट था, लेकिन इसके अलावा, यह काम नहीं करेगा।

संबंधित मुद्दे