मुख्य सामग्री के लिए छोड़ें
संस्करण: 1.x

संरचना

यह पृष्ठ डेवलपर्स और उन्नत उपयोगकर्ताओं के लिए WCPOS की तकनीकी संरचना को समझाता है।

दो-भागी प्रणाली

WCPOS को दो-भागी प्रणाली के रूप में डिज़ाइन किया गया है:

  1. PHP प्लगइन: यह आपके सर्वर पर होस्टेड होता है, यह एक अपेक्षाकृत छोटा प्लगइन है जो WooCommerce REST API का विस्तार करता है।

  2. JavaScript क्लाइंट: यह आपके ब्राउज़र या डेस्कटॉप ऐप में स्थानीय रूप से चलता है, और बाद में iOS और Android ऐप्स पर।

आप इसे दो अलग-अलग दुनिया के रूप में सोच सकते हैं:

  • PHP दुनिया वह जगह है जहाँ डेटा प्रबंधन WordPress और WooCommerce का उपयोग करके होता है।
  • JavaScript दुनिया आपके WooCommerce स्टोर को स्थानीय रूप से प्राकृत करती है, जो तेज़ खोज और ऑफ़लाइन उपयोग के लिए अनुकूलित है।
pos-client-woo-server

डेटा समन्वयन

डेटा को WooCommerce से WooCommerce REST API का उपयोग करके पुनः प्राप्त किया जाता है। इसका मतलब है कि POS को प्रत्येक उत्पाद, विविधता, उत्पाद श्रेणी, ग्राहक, कर दर, और अधिक को स्थानीय रूप से संग्रहित करने के लिए डाउनलोड करना होगा।

हालाँकि, यह प्रारंभ में समय लेने वाला हो सकता है, एक बार डाउनलोड होने के बाद, वे लगातार सर्वर से पुनः प्राप्त करने की आवश्यकता के बिना तुरंत उपलब्ध होते हैं।

क्या समन्वयित होता है?

  • उत्पाद और विविधताएँ
  • उत्पाद श्रेणियाँ और टैग
  • ग्राहक
  • कर दरें और कर वर्ग
  • भुगतान गेटवे (चेकआउट के लिए)
  • ऑर्डर (Pro में ऑर्डर इतिहास के लिए)

समन्वय रणनीति

WCPOS एक आवधिक समन्वय रणनीति का उपयोग करता है:

  1. प्रारंभिक समन्वय: पहले लोड पर सभी डेटा डाउनलोड करता है
  2. आवधिक अपडेट: केवल अंतिम समन्वयन के बाद के परिवर्तनों को पुनः प्राप्त करता है
  3. पृष्ठभूमि समन्वय: नियमित रूप से अपडेट की जांच करता है
  4. मानव समन्वय: उपयोगकर्ता किसी भी समय समन्वय प्रारंभ कर सकता है

संरचना के लाभ और हानि

अच्छा 😊बुरा 😟
स्थानीय डेटा को खोजना त्वरित हैडेटा को समन्वयित रखना चुनौतीपूर्ण है
ऑफ़लाइन कैश की गई डेटा उपलब्धWooCommerce REST API द्वारा सीमित
डेस्कटॉप, iOS, और Android के लिए बेहतर स्वदेशी ऐप बनाने की क्षमताWordPress थीम और हुक POS ऐप को अनुकूलित नहीं कर सकते

स्थानीय डेटाबेस

JavaScript क्लाइंट डेटा को IndexedDB में संग्रहीत करता है, जो एक ब्राउज़र-आधारित डेटाबेस है। यह प्रदान करता है:

  • स्थिरता: डेटा ब्राउज़र पुनः आरंभों में बनी रहती है
  • प्रदर्शन: नेटवर्क विलंबता के बिना तेज़ क्वेरी
  • ऑफ़लाइन ब्राउज़िंग: कैश की गई डेटा बिना इंटरनेट के भी सुलभ रहती है

चेकआउट आर्किटेक्चर

चेकआउट प्रक्रिया एक iframe/webview का उपयोग करती है जो WooCommerce ऑर्डर पे पृष्ठ को लोड करती है। यह दृष्टिकोण:

  • मौजूदा भुगतान गेटवे का उपयोग करता है: कोई भी WooCommerce भुगतान गेटवे POS में काम कर सकता है
  • सुरक्षा बनाए रखता है: भुगतान संसाधन WooCommerce के सुरक्षित बुनियादी ढांचे के माध्यम से होता है
  • जटिलता को घटाता है: भुगतान गेटवे एकीकरण को फिर से लागू करने की आवश्यकता नहीं है

API एक्सटेंशन

PHP प्लगइन POS-विशिष्ट कार्यक्षमता के लिए अतिरिक्त अंत बिंदुओं के साथ WooCommerce REST API का विस्तार करता है। विवरण के लिए WooCommerce REST API देखें।