मैं किसी भी सर्वर कार्यान्वयन के बिना सॉकेट के माध्यम से एकाधिक डिवाइस कनेक्ट करना चाहता हूं। मैं केवल उन डिवाइसों के आईपी पते प्राप्त करने के लिए उपयोग करूंगा जो पंजीकरण करेंगे।क्या आईपी एड्रेस प्राप्त करके सॉकेट का उपयोग करके दो आईओएस डिवाइस कनेक्ट करना संभव है?
उत्तर
आप GameKit उपयोग कर सकते हैं। इसमें matchmaking एपीआई है जो आपकी मदद कर सकती है।
इसका उपयोग गैर गेम ऐप्स के लिए किया जा सकता है। खोज, और गम्यता:
इंटरनेट पर मिलकर मिलकर एपीआई काम कर रहा है? क्योंकि मैं कुछ ऐसे तंत्र चाहता हूं जो इंटरनेट पर एकाधिक उपकरणों को जोड़ सकें। मेरे ज्ञान के अनुसार गेमकिट ब्लूटूथ या स्थानीय क्षेत्र नेटवर्क द्वारा डिवाइस को कनेक्ट करने में सक्षम है। – freelancer
यह इंटरनेट पर भी काम करता है! – MacTeo
आप दो चीजों को भ्रमित कर रहे हैं। गेमकिट का पीयर-टू-पीयर हिस्सा जीकेएसशन, केवल ब्लूटूथ या स्थानीय नेटवर्क पर काम करता है। जीकेमैचमेकर इंटरनेट पर काम करता है, लेकिन यह पीयर-टू-पीयर नहीं है: सब कुछ ऐप्पल के सर्वर या अपने आप से गुजरता है। एक कस्टम सर्वर और कुछ काम के साथ, इसे वास्तविक पी 2 पी जाल के लिए एक परिचयकर्ता के हिस्से के रूप में उपयोग किया जा सकता है, लेकिन स्वयं ही यह समस्या को हल करने के करीब कहीं भी नहीं आता है। – abarnert
दो प्रमुख समस्याओं सहकर्मी से सहकर्मी के लिए संचार कर रहे हैं।
सबसे पहले, आप उन्हें कनेक्ट करने के लिए अन्य साथियों के आईपी पते को पता है की जरूरत है। एक बार जब आप सहकर्मियों के जाल से जुड़े होते हैं, तो वे सभी एक-दूसरे को नेटवर्क की स्थिति पर अपडेट कर सकते हैं, एक दूसरे के साथ बेहतर साथियों को सुझाव दे सकते हैं, जो नए साथियों के अधिसूचनाओं के आसपास गुज़र रहे हैं, जो शामिल हो गए हैं और बाएं हैं, लेकिन आपके पास है उस जानकारी के व्यापार के लिए एक तंत्र को डिजाइन और कार्यान्वित करने के लिए। सबसे महत्वपूर्ण बात यह है कि आपको किसी चीज को चीजों को जंपस्टार्ट करने की ज़रूरत है, क्योंकि जब कोई नया सहकर्मी शुरू होता है, तो यह सिर्फ खुद के जाल में होता है, और इसमें खुद को देने की कोई जानकारी नहीं है।
एक संभावना यह अच्छी तरह से ज्ञात "superpeers" (आपके द्वारा चलाए जाने) कि हमेशा जुड़े हुए हैं के एक मुट्ठी भर है, और अनुप्रयोग में उनके पते बेक करने है। या आप सहकर्मियों के बजाय "परिचय सर्वर" कर सकते हैं, एक ही समारोह की सेवा कर सकते हैं। या आपके पास ट्रेडिंग पते का कुछ बाहरी तरीका हो सकता है (सबसे सरल यह है कि उपयोगकर्ता उन्हें वेब फोरम या आईआरसी चैनल पर या व्यक्तिगत रूप से व्यापार करते हैं और उन्हें मैन्युअल रूप से टाइप करते हैं), जिन्हें विभिन्न डिग्री के लिए स्वचालित किया जा सकता है। ऐसे शॉर्टकट भी हैं जो मदद कर सकते हैं-बोनजोर अन्य सहकर्मी जाल पर तब तक प्राप्त कर सकते हैं जब तक कि लैन पर एक सहकर्मी पहले से ही वहां न हो; GameCenter/GameKit को स्वचालित बाहरी व्यापार नेटवर्क के रूप में उपयोग किया जा सकता है; आदि
एक बार जब आप खोज समस्या हल कर लेते हैं, तो आपके पास अभी भी पहुंच क्षमता है। अधिकांश आईओएस उपकरणों में आम तौर पर सार्वजनिक रूप से सुलभ आईपी पते नहीं होते हैं; इसके बजाए, वे राउटर के पीछे हैं जो नेटवर्क एड्रेस ट्रांसलेशन करते हैं, भले ही वे एक घर वाईफाई राउटर या सेल कैरियर के 3 जी नेटवर्क हों। इसका मतलब है कि आपको एक दूसरे से बात करने के लिए दो आईफ़ोन प्राप्त करने के लिए एनएटी होल पंचिंग करने के कुछ तरीके की आवश्यकता है। कोई भी जो सार्वजनिक पते और प्रत्येक डिवाइस के आंतरिक पते दोनों को जानता है, वे एक दूसरे के साथ कनेक्शन स्थापित करने की व्यवस्था कर सकते हैं। आप या तो सामान्य सहकर्मी ऐसा कर सकते हैं (हालांकि यह जंपस्टार्ट समस्या को और भी बड़ा बनाता है) या आपके सुपरपीयर/परिचय सर्वर/आदि हैं। कर दो।
आप अपने आप को इस सब का निर्माण करना चाहते हैं, तो आप शायद अन्य कार्यान्वयन को देखने के लिए चाहते हैं। बिटकटेंट (ट्रैकर्स और डीएचटी समेत) उत्सुक अंत उपयोगकर्ताओं के लिए विस्तृत प्रोटोकॉल चश्मा और खुले स्रोत कार्यान्वयन के लिए "झूठ-से-बच्चों" के स्तरों की निरंतरता के स्तर पर निरंतर समझा और दस्तावेज किया गया है। और फिर कुछ अन्य पी 2 पी नेटवर्क देखें, क्योंकि बिटटोरेंट सही नहीं है, और हर कोई ऐसा करने की कोशिश नहीं करता है जो हर किसी के साथ आता है।
आईओएस पर छेद पंचिंग के बारे में अधिक जानकारी के लिए http://stackoverflow.com/questions/6421742/tcp-hole-punching-on-iphone देखें। आईफोन के लिए एक बिटटोरेंट क्लाइंट, उन्नत cTorrent के स्रोत के लिए http://www.rahul.net/dholmes/ctorrent/ देखें। – abarnert
यदि आप लंबी अवधि के लगातार कनेक्शन चाहते हैं तो एक अतिरिक्त समस्या है: iPhones हर समय पते बदलते हैं। तो आपको एक तरफ या दूसरी तरफ से पता लगाने की ज़रूरत है, और संभावित रूप से कनेक्शन को फिर से स्थापित करने के लिए छेद को फिर से पंच करना होगा। कुछ पी 2 पी प्रोटोकॉल हैं जो इसे ध्यान में रखते हैं (मेरा मानना है कि एडोब का आरटीएमएफपी करता है, लेकिन मुझे नहीं पता कि पुराने श्वेतपत्र जो बताते हैं कि यह कैसे काम करता है अभी भी उपलब्ध है), लेकिन अधिकांश नहीं, क्योंकि वे डेस्कटॉप सिस्टम के लिए डिज़ाइन किए गए थे । – abarnert
आप नहीं कर सकते। यदि डिवाइस वाईफाई के साथ ऑनलाइन है, तो यह संभव है और पीसी कनेक्ट की तरह राउटर सेटिंग पर भरोसा कर सकता है। अगर कुछ डिवाइस 3 जी या जीपीआर प्रोटोकॉल से जुड़ा हुआ है, तो उनके पास कोई आईपी पता नहीं हो सकता है।
सच नहीं है। आईपीओ उपकरणों द्वारा उपयोग की जाने वाली जीपीआरएस और अन्य सभी मोबाइल प्रौद्योगिकियां आईपी पते की गारंटी देती हैं। (जीपीआरएस केवल X.25 को अनुमति देने के लिए प्रयोग किया जाता है, लेकिन केवल अप्रचलित प्रथम संस्करण में।) आईपी पता सार्वजनिक रूप से रूकावट नहीं हो सकता है, लेकिन अधिकांश वाईफाई नेटवर्क के लिए भी यही बात सच है, और उसी एनएटी पंचिंग तकनीकें काम करती हैं। – abarnert
iOS के लिए एक अस्पष्ट ग्राहक का निर्माण: XMPP सेटअप
यहाँ है link
अगर मैं गलत हूं, तो मुझे सही करें, लेकिन वह क्लाइंट वास्तव में स्टून/होल-पंचिंग के माध्यम से पीयर-टू-पीयर कनेक्शन नहीं करता है, यह सर्वर के माध्यम से सबकुछ रिले करने के लिए टर्न का उपयोग करता है। और वास्तव में यह उस टर्न सर्वर पर स्थानीय नेटवर्क पर बोनजोर-सक्षम होने पर निर्भर करता है। तो यह सवाल का जवाब नहीं है। – abarnert
उपरोक्त टिप्पणी सच है? मैं स्टंप करने के लिए एक्सएमपीपी का उपयोग करने की सोच रहा था। – roocell
@roocell मैं jabber क्लाइंट सर्वर स्थापित करने की कोशिश कर रहा हूं और वहां से उपयोगकर्ताओं को संभालता हूं। लेकिन जेबबर सर्वर बनाने में समस्या, मैंने ejabber 2.10 डाउनलोड किया लेकिन व्यवस्थापक पैनल में लॉगिन करने में सक्षम नहीं – freelancer
मैं ऐसी ही कुछ पर काम कर रहा है और यह पिछवाड़े में एक विशाल दर्द है। 3 विचार हैं: 1) पहुंच योग्यता 2) डिस्कवरी 3) कनेक्शन स्वयं।
1) भी, 3G/4G उपयोग करने पर विचार यह सिर्फ एक खुले सॉकेट कनेक्शन रखने के लिए अच्छी तरह से काम नहीं करेगा न करें।
2) मैं दोनों को जोड़ने के लिए इंटरनेट पर दोनों के बीच ब्रोकर सेवा का उपयोग करता हूं। खोज के लिए, आप बस सूची में कौन से डिवाइस उपलब्ध हैं सूचीबद्ध कर सकते हैं।
3) कनेक्शन के लिए, मुझे आईओएस सॉकेट पुस्तकालयों का उपयोग करने के लिए दर्दनाक लगता है, लेकिन यदि आप बीएसडी सॉकेट स्तर पर जाते हैं तो यह बुरा नहीं है। मुझे लगता है कि यह zmq सॉकेट का उपयोग करना बहुत दिलचस्प होगा; जो दलाल सेवा लिखने को सरल बना सकता है।
# 1 एक अच्छा बिंदु है। पते बदलने पर सहकर्मियों के लिए पता परिवर्तन (और फिर से छेद छेद) प्रसारित करने के लिए आपके पास कुछ एप्लिकेशन-स्तरीय तर्क होना चाहिए। यह करने योग्य है, लेकिन इसका मतलब यह है कि यदि आप विश्वसनीय, आदेशित, दीर्घकालिक कनेक्शन चाहते हैं, तो आपको टीसीपी के जादू पर निर्भर होने के बजाय, एप्लिकेशन स्तर पर स्वयं को बनाना होगा। – abarnert
ओह, और इसका मतलब यह भी है कि आपको किसी प्रकार की अनूठी सहकर्मी आईडी की आवश्यकता है जो कम से कम एक सत्र के भीतर एक पते के रूप में उपयोग करने के लिए लगातार हो, ताकि आप उस लड़के के नए पते के लिए जाल से पूछ सकें जिस पर आप बात कर रहे थे। – abarnert
- 1. क्या इंटरनेट पर दो मोबाइल डिवाइस (आईफ़ोन) के बीच सॉकेट कनेक्ट करना संभव है?
- 2. सॉकेट का उपयोग करके आईपी पता कैसे खराब करें?
- 3. क्या jQuery का उपयोग करके पीडीएफ उत्पन्न करना संभव है?
- 4. क्या अनाम प्रकार का उपयोग करके डेटाबेस करना संभव है?
- 5. राउटर का आईपी पता प्राप्त करना जिसमें आईफोन कनेक्ट है
- 6. आईओएस प्रोग्रामिंग में एड्रेस बुक एपीआई का उपयोग करके संपर्क कैसे प्राप्त करें?
- 7. क्या यह पता लगाना संभव है कि सी # का उपयोग करके एचडीएमआई डिवाइस कनेक्ट है या नहीं?
- 8. स्रोत आईपी एड्रेस
- 9. क्या "हटाएं" कथन का उपयोग करके दो रिकॉर्ड मर्ज करना संभव है?
- 10. रिमोट सॉकेट एंडपॉइंट का आईपी पता प्राप्त करना
- 11. PHP में, क्या पीडीओ का उपयोग करके 1 आयामी सरणी प्राप्त करना संभव है?
- 12. क्या आईसीआरटीरिया का उपयोग करके एनएचबीर्नेट क्वेरी से आलसी आईन्यूमेरेबल प्राप्त करना संभव है?
- 13. माइस्क्ल - आईपी एड्रेस
- 14. क्या CFStreamCreatePairWithSocketToHost() का उपयोग करके सॉकेट संदर्भ प्राप्त करने का कोई तरीका है?
- 15. क्या डाउनलोडमैनेजर का उपयोग करके डाउनलोड को रद्द करना/बंद करना संभव है?
- 16. क्या PHP का उपयोग करके आरएसएस फ़ीड में प्रमाणीकरण का उपयोग करना संभव है?
- 17. दो तालिकाओं का उपयोग करके अद्यतन, Concatenation
- 18. मैन पेजों का उपयोग करके संरचना परिभाषाएं प्राप्त करना
- 19. मैं एनएसडीएट का उपयोग करके सप्ताह के दिन कैसे प्राप्त करूं और आईओएस में एनएसएलओजी का उपयोग करके दिखाऊं?
- 20. क्या गिट का उपयोग करके दो मनमानी पाठ फ़ाइलों के बीच अंतर खोजना संभव है?
- 21. सेलफोन का उपयोग करके भुगतान लागू करना
- 22. क्या केवल एलआईएसपी प्राइमेटिव का उपयोग करके कोरआउट को कार्यान्वित करना संभव है?
- 23. क्या 'xlsread' का उपयोग करके Excel शीट्स का नाम MATLAB में लोड करना संभव है?
- 24. क्या मेरे ऐप के अंदर आईओएस डिवाइस पर स्थापित क्लाइंट प्रमाणपत्र का उपयोग करना संभव है?
- 25. स्थानीय आईपी पता प्राप्त करना
- 26. adhoc wifi (निजी एपीआई का उपयोग करके) से कनेक्ट होने पर इंटरनेट के लिए 3 जी का उपयोग करें
- 27. एंड्रॉइड: टेक्स्टव्यू.SetText (characterSequence) का उपयोग करके [ओबीजे] प्राप्त करना
- 28. शेलेक्सक्यूट का उपयोग करके "प्रिंटो" के पैरामीटर क्या हैं?
- 29. आईपी एड्रेस की नकल कैसे करें - डिवाइस सिम्युलेटर आवश्यक
- 30. आईओएस में CLGeoCoder का उपयोग करके ज़िप कोड/पोस्टल कोड का उपयोग करके अक्षांश देशांतर कैसे प्राप्त करें?
शायद बोनजोर सेवा आप जो खोज रहे हैं? – user523234
नहीं, कनेक्ट होने वाले डिवाइस एक ही नेटवर्क पर नहीं होंगे। वे अपने तीन जी नेटवर्क या नेटवर्क प्रदाता – AnishGupta
के जीपीएस कनेक्शन से जुड़े होंगे आपको कुछ खोज तंत्र की आवश्यकता होगी। यदि डिवाइस एक ही नेटवर्क पर नहीं हैं, तो आपको किसी प्रकार के सर्वर की आवश्यकता होगी। यदि डिवाइस 3 जी पर हैं तो आप यह भी सुनिश्चित नहीं कर सकते कि उनका आईपी अद्वितीय होगा। – starbugs