Update sa Shop: Makipag-ugnayan sa mga Nagbebenta at Ligtas na Digital Downloads
Setyembre 10, 2026
Ngayon ay inilulunsad namin ang dalawang pangunahing feature ng shop na matagal nang hinihiling ng aming komunidad: paraan para sa mga mamimili na magtanong sa mga nagbebenta bago bumili, at ligtas na paghahatid ng digital na file para sa mga produktong pwedeng i-download.
Makipag-ugnayan sa Nagbebenta — Magtanong Bago Bumili
Naitanong mo na ba sa isang may-ari ng shop ang tungkol sa isang produkto bago bumili? Ngayon ay pwede na.
Bawat product card sa shop ay may “Contact Seller” na button. I-click ito, i-type ang tanong mo (hanggang 1024 na karakter), at ipadala. Ang may-ari ng shop ay makakatanggap ng agaran na real-time na abiso sa pamamagitan ng Server-Sent Events (SSE) — walang kailangang i-refresh ang pahina. Makakasagot sila direkta mula sa kanilang Shop Owner Dashboard, at makakatanggap ka ng abiso kapag sumagot sila.
Paano ito gumagana
- Mamimili ay nag-i-click ng “Contact Seller” sa anumang produkto
- Nagta-type ng tanong (max 1024 na karakter)
- Nagbebenta ay nakakatanggap ng agaran na SSE toast na abiso kasama ang preview ng mensahe
- Binubuksan ng nagbebenta ang seksyon ng Inquiries sa kanilang dashboard at sumasagot
- Mamimili ay nakakatanggap ng SSE na abiso na sumagot ang nagbebenta
Limitasyon sa rate
Para maiwasan ang spam, bawat mamimili ay pwede magkaroon ng hindi hihigit sa 5 bukas na inquiries bawat produkto bawat 24 oras. Pinapanatili nitong manageable ang sistema para sa mga nagbebenta habang binibigyan ng sapat na espasyo ang mga mamimili para magtanong ng follow-up.
Available sa 23 wika
Lahat ng UI text para sa contact feature ay isinalin sa lahat ng 23 sinusuportahang wika: Arabic, Bengali, German, English, Spanish, Farsi, French, Hindi, Indonesian, Italian, Japanese, Korean, Polish, Portuguese, Russian, Swahili, Thai, Tagalog, Turkish, Urdu, Vietnamese, Chinese (Simplified), at Chinese (Traditional).
Ligtas na Digital Downloads — Virus-Scanned na Paghahatid ng File
Ang mga may-ari ng shop ay pwede na ngayong mag-upload ng pwedeng i-download na file (PDF, larawan, audio, video, EPUB) sa kanilang digital na produkto. Pagkatapos magbayad ng mamimili, lalabas ang mga file sa kanilang “My Downloads” na seksyon sa shop.
Multi-layer na seguridad (defense in depth)
Ang seguridad ang aming pangunahing priyoridad nang ginagawa itong feature. Nagpatupad kami ng siyam na layer ng proteksyon para matiyak na walang malware na makakarating sa aming mga manlalaro:
| # | Layer | Ano ang ginagawa |
|---|---|---|
| 1 | File type allowlist | Tanging ligtas na document/media types lang ang tinatanggap: PDF, PNG, JPG, GIF, WebP, TXT, Markdown, MP3, MP4, WebM, OGG, EPUB. Walang executables, scripts, o archives na maaaring maglaman ng scripts. |
| 2 | Magic-byte validation | Ang aktwal na nilalaman ng file ay dapat tumugma sa extension nito. Ang file na nagngangalang photo.png ay dapat talagang magsimula sa PNG magic bytes. Ang pagpapalit ng pangalan mula malware.exe patungong malware.pdf ay hindi gagana. |
| 3 | 50 MB size limit | Matigas na limitasyon sa upload size na pumipigil sa denial-of-service sa pamamagitan ng malalaking file. |
| 4 | ClamAV virus scanning | Bawat file ay sinusuri ng ClamAV (tumatakbo bilang Docker sidecar) gamit ang INSTREAM protocol. Kung may nakita ang ClamAV na banta, hihindi tanggapin ang upload. Kung hindi maaabot ang ClamAV sa production, hihindi rin tanggapin ang mga upload — hindi kailanman nag-iimbak kami ng hindi nasuring file. |
| 5 | SHA-256 hashing | Bawat naka-imbak na file ay hinahash at itinatala ang hash sa database. Nagbibigay ito ng integrity verification at auditability. |
| 6 | Double-extension blocking | Ang mga file tulad ng document.pdf.exe ay hihindi tinatanggap. Tanging single extensions lang ang pwede. |
| 7 | No direct web access | Ang mga download file ay naka-imbak sa labas ng web root. Walang nginx path na direktang nagsisilbi nito. Ang tanging paraan upang ma-access ang file ay sa pamamagitan ng authenticated download handler. |
| 8 | Authenticated download handler | Sinusuri ng download endpoint na ang nagrerequest na user ang may-ari ng order, na bayad na ang order, at ang download file ay pag-aari ng produkto sa order na iyon. Walang order, walang access. |
| 9 | Download counting | Bawat file ay pwedeng i-download ng maximum 10 beses bawat order. Pumipigil ito ng abuse kung sakaling malista ang isang download link. |
Paano ito gumagana para sa mga may-ari ng shop
- Markahan ang produkto bilang “digital” kapag ginagawa o ine-edit ito
- I-click ang bagong “Downloads” na button sa produkto
- Mag-upload ng file (max 50 MB, tanging allowed types lang)
- Awtomatikong susuriin ng ClamAV ang file
- Makikita ang berdeng “scanned” na badge kapag pumasa ang file sa scan
- Ipapakita ang SHA-256 hash para sa verification
Paano ito gumagana para sa mga mamimili
- Bumili ng digital na produkto at kumpletuhin ang payment
- Lalabas ang “My Downloads” na seksyon sa shop sidebar mo
- I-click ang Download — ihahatid ang file bilang secure blob download
- Ipapakita ng download counter mo kung ilan pang download ang natitira (10 bawat file)
Paano naman ang kasalukuyang fragment/CTTC delivery?
Ang kasalukuyang awtomatikong paghahatid ng Fragment Pieces at CTTC Pieces ay patuloy na gumagana tulad ng dati. Ang bagong download system ay isang karagdagang delivery mechanism para sa anumang iba pang digital na file na nais ilakip ng may-ari ng shop sa kanilang mga produkto.
Mga teknikal na detalye
- Backend: Go game-service kasama ang PostgreSQL. Ang mga bagong database table ay nagpapatakbo ng mga mensahe ng mamimili-nagbebenta at file metadata/access grants.
- ClamAV: Tumatakbo bilang Docker sidecar container kasabay ng game-service. Komunikasyon sa pamamagitan ng TCP gamit ang INSTREAM protocol.
- SSE: Ang real-time na mga abiso ay gumagamit ng kasalukuyang Server-Sent Events infrastructure. Ang mga bagong abiso ay nag-aabiso sa nagbebenta sa paparating na inquiries at sa mamimili sa mga sagot.
- Frontend: Vanilla JavaScript kasama ang i18n. 28 bagong translation keys sa 25 language files.
- Storage: Ang mga download file ay naka-imbak sa labas ng web root, accessible lamang sa pamamagitan ng authenticated API.
Ano ang susunod?
Ang mga feature na ito ay kasalukuyang inilulunsad sa aming MAAS staging server para sa testing. Kapag na-validate na, ilalunsad ang mga ito sa lahat ng production regions.
Kung ikaw ay isang may-ari ng shop, simulan nang isipin kung anong mga digital na produkto ang nais mong ibenta — maging ito man ay PDF, artwork, musika, o video, sinusuportahan na ng shop ang ligtas na paghahatid kasama ang enterprise-grade na proteksyon laban sa malware.
May feedback? Gamitin ang bagong Contact Seller feature para makipag-ugnayan sa aming team shop!