HeadlinesBriefing favicon HeadlinesBriefing.com

QR कोड उपयुक्त ऐप स्टोर पर रूट

Hacker News •
×

जब मैंने इस सप्ताह की शुरुआत में Poker Nexus की घोषणा की, तो मैंने गुज़रते में उल्लेख किया कि यह "मुद्रित लिंक के लिए एक अलग शॉर्टलिंक होस्ट" तैनात करता है। यह पोस्ट बताती है कि वह होस्ट क्या करता है और इसे इस तरह क्यों बनाया गया है। लक्ष्य सरल था। मैं व्यवसाय कार्ड चाहता था जिसके पीछे एक QR कोड हो जिस पर "डाउनलोड" लिखा हो। समस्या यह है कि एक QR कोड ठीक एक URL को एनकोड करता है, जबकि "ऐप डाउनलोड करें" का अर्थ तीन अलग-अलग स्थानों से है जो इसे स्कैन करता है: एक iPhone को App Store लिस्टिंग पर उतरना चाहिए, एक Android फोन को Google Play लिस्टिंग पर, और बाकी सब कुछ (एक लैपटॉप, एक क्रॉलर, एक उपकरण जिसे मैं पहचान नहीं सकता) को वेबसाइट पर उतरना चाहिए। मुद्रित कार्ड किसी के बटुए में आने के बाद अपडेट नहीं किए जा सकते, इसलिए उन पर URL को काम करते रहना चाहिए भले ही गंतव्य बाद में बदल जाएं। दोनों समस्याएं एक ही उत्तर की ओर इशारा करती हैं: एक URL प्रिंट करें जिसे मैं नियंत्रित करता हूं, और सर्वर को यह तय करने दें कि प्रत्येक अनुरोध कहां जाता है। कार्ड `https://go.pokernexus.com/app` की ओर इशारा करते हैं।

मैंने अपने QR कोड जनरेटर के साथ QR कोड स्वयं बनाया। यह पूरी तरह से ब्राउज़र में चलता है और एक सादा SVG या PNG निर्यात करता है, जो प्रिंट शॉप चाहता है। एक छोटा URL कम घना कोड उत्पन्न करता है, और कम घना कोड में बड़े मॉड्यूल होते हैं जो व्यवसाय कार्ड आकार पर अधिक विश्वसनीय रूप से स्कैन करते हैं। `go.pokernexus.com/app` कम QR संस्करण पर रहने के लिए पर्याप्त छोटा है। बीच में लोगो लगाने से कुछ मॉड्यूल कवर हो जाते हैं, इसलिए कोड को उनकी भरपाई के लिए त्रुटि सुधार पर निर्भर रहना पड़ता है। जनरेटर केंद्र आइकन जोड़ते ही स्तर को H (लगभग 30% पुनर्प्राप्त करने योग्य) तक बढ़ा देता है, जिसने Poker Nexus क्लब को स्कैन को तोड़े बिना बीच में बैठने दिया।

होस्ट एक छोटे स्टैंडअलोन Hono ऐप द्वारा सेवित है। हर स्थान जहां यह किसी को भेज सकता है, उसे एक `Destination` के रूप में वर्णित किया गया है: एक URL, साथ ही एक फ्लैग जो बताता है कि आने वाली क्वेरी स्ट्रिंग को उस पर कॉपी किया जाना चाहिए या नहीं। रूटिंग तालिका प्रत्येक पथ को एक `Target` पर मैप करती है, जो या तो एक निश्चित `Destination` है या एक फ़ंक्शन है जो अनुरोध के आधार पर एक चुनता है। निर्णय केवल `User-Agent` हेडर पर किया जाता है। हर शाखा जो एक आत्मविश्वासपूर्ण मैच नहीं है, वेबसाइट पर गिर जाती है। वह विषमता जानबूझकर है। एक गलत उत्तर जो वेबसाइट पर उतरता है वह अभी भी एक काम करने वाला पृष्ठ है, जबकि एक गलत उत्तर जो स्टोर में उतरता है, एक उपकरण के लिए एक इंस्टॉल प्रॉम्प्ट है जो ऐप नहीं चला सकता।

उन जांचों का क्रम अनदेखा करना आसान है। Google के स्मार्टफोन क्रॉलर फोन के रूप में पहचान करते हैं और अपना नाम जोड़ते हैं, इसलिए Android क्रॉलर के उपयोगकर्ता एजेंट में `Android` होता है और iOS वाले में `iPhone` होता है। बॉट्स को पहले जांचा जाता है ताकि यह सुनिश्चित हो सके कि वे स्टोर पर नहीं, बल्कि वेबसाइट पर उतरें।

मुख्य संस्थाएं: कंपनियां: Poker Nexus, Google, Apple