สแกนรหัส QR ได้อย่างง่ายดายโดยใช้ Telegram!
พื้นที่เก็บข้อมูลนี้มีโค้ดของ @easyqrscanbot ซึ่งเป็นแอป Telegram Mini สำหรับสแกนโค้ด QR
ตรวจสอบให้แน่ใจว่าคุณได้อัปเดตแอป Telegram ของคุณแล้ว Telegram API เวอร์ชันขั้นต่ำที่ต้องการคือ 6.9
@easyqrscanbot
บน Telegram และเริ่มแชทส่วนตัวScan QR
) เครื่องสแกนโค้ด QR ได้รับการสนับสนุนบนไคลเอ็นต์สมาร์ทโฟน Telegram (Android และ iOS) ที่มีเวอร์ชัน Telegram API มากกว่า 6.9
ขออภัย การสแกน QR ไม่สามารถใช้งานได้บน Telegram Web Clients อย่างไรก็ตาม คุณยังคงสามารถเข้าถึง Mini App บนเว็บไคลเอ็นต์และตรวจสอบประวัติการสแกนของคุณได้
โปรเจ็กต์นี้ทำหน้าที่เป็นตัวอย่างการสร้าง Telegram Mini App โดยใช้เฟรมเวิร์ก JavaScript สมัยใหม่ เช่น Vue นอกจากนี้ยังสาธิตวิธีใช้ประโยชน์จากฟีเจอร์ล่าสุดที่นำมาใช้ใน Telegram API เวอร์ชัน 6.9 ได้แก่:
โปรเจ็กต์นี้แสดงถึงแอปพลิเคชัน Vue Front-End ที่ใช้ Telegram Cloud Storage Back-End เพื่อจัดเก็บการสแกนที่ได้รับ
กระบวนการปรับใช้เป็นแบบอัตโนมัติโดยสมบูรณ์โดยใช้ GitHub Actions ทุกครั้งที่กดไปที่สาขา master
Mini App จะถูกสร้างขึ้นและปรับใช้กับไซต์ GitHub Pages ที่เกี่ยวข้องโดยอัตโนมัติ
เข้าถึง Mini App ที่นี่: Mini App Link
ในการเริ่มต้นโครงการ ให้ทำตามขั้นตอนเหล่านี้:
git clone https://github.com/MBoretto/easy-qr-scan-bot.git
cd easy-qr-scan-bot
npm install
npm run build
หากต้องการรันโค้ด linting ให้ใช้คำสั่งต่อไปนี้:
npm run lint
ขอให้มีความสุขในการเขียนโค้ด!
ก่อนที่คุณจะเริ่มต้น ตรวจสอบให้แน่ใจว่าคุณมี Telegram Bot หากคุณยังไม่มี คุณสามารถสร้างได้โดยใช้คู่มือโทรเลขนี้
หากคุณต้องการปรับใช้ Mini App ของคุณเอง ให้ทำตามขั้นตอนเหล่านี้:
โคลนที่เก็บนี้
เปิดใช้งาน GitHub Pages สำหรับพื้นที่เก็บข้อมูลของคุณโดยไปที่ Settings
-> Pages
-> เลือก GitHub Actions
เป็นแหล่งที่มา GitHub จะปรับใช้ Mini App บนเพจ GitHub ที่เชื่อมโยงกับพื้นที่เก็บข้อมูลของคุณโดยอัตโนมัติ
คุณยังสามารถเลือกที่จะปรับใช้ Mini App ของคุณโดยใช้บริการโฮสติ้งที่รองรับ https://
นี่เป็นวิธีที่ง่ายที่สุดในการเริ่ม Mini App เนื่องจากคุณต้องกำหนดค่าเมนู Telegram Bot เพียงครั้งเดียว ต่อไปนี้เป็นขั้นตอนในการเชื่อมโยง Mini App เข้ากับเมนูบอทของคุณ:
/mybots
ตอนนี้คุณสามารถเริ่ม Mini App ได้จากเมนู Telegram Bot
วิธีการนี้มีประโยชน์ในระหว่างขั้นตอนการพัฒนา ซึ่งช่วยให้คุณสามารถระบุ URL ที่แตกต่างกันสำหรับ Mini App ได้โดยไม่ต้องกำหนดค่าเมนู Telegram Bot ใหม่ อย่างไรก็ตาม จำเป็นต้องใช้บริการบอท Telegram ที่ทำงานอยู่ ทำตามขั้นตอนเหล่านี้:
pip3 install python-telegram-bot --upgrade
config-example.py
ใน config.py
: mv config-example.py config.py
แก้ไขไฟล์ config.py
และแทรก Telegram Bot Token TOKEN
ของคุณ (คุณสามารถรับได้จาก @BotFather), URL
และลิงก์ URL_TEST
เรียกใช้สคริปต์ web-app-launcher.py
:
python3 web-app-launcher.py
/start
(สำหรับลิงค์ที่ใช้งานจริง) หรือ /dev
(สำหรับลิงค์ทดสอบ) ไปยังบอทตอนนี้คุณสามารถเริ่มและทดสอบ Mini App ของคุณโดยใช้ลิงก์ทดสอบ
Telegram Cloud Storage เป็นฐานข้อมูลคีย์-ค่าที่สามารถเข้าถึงได้จากไคลเอ็นต์ Telegram ใดๆ ช่วยให้คุณสามารถจัดเก็บคีย์ได้มากถึง 1024
คีย์ต่อผู้ใช้ต่อบอท โดยแต่ละค่ามีอักขระได้ไม่เกิน 4096
ตัว ข้อมูลเชื่อมโยงกับบัญชี Telegram ของผู้ใช้และคงอยู่ในอุปกรณ์ต่างๆ หลังจากสแกนโค้ด QR แล้ว สตริงดิบจะถูกจัดเก็บโดยใช้การประทับเวลาเป็นคีย์
Mini App จะโหลดประวัติการสแกนทั้งหมดเมื่อเริ่มต้นระบบและจัดเก็บไว้ในเครื่อง การสแกนครั้งต่อไปจะถูกจัดเก็บทั้งใน Telegram Cloud Storage และในเครื่อง
ข้อมูลดิบที่ดึงมาจะถูกจัดการเพื่อดึงข้อมูลตามเนื้อหาของโค้ด QR ประเภทเนื้อหารหัส QR ที่รองรับ:
ในแท็บประวัติ ให้ขยายโค้ด QR ที่คุณต้องการลบแล้วกดปุ่ม Bin
การดำเนินการนี้จะลบโค้ด QR ออกจากทั้ง Telegram Cloud Storage และที่เก็บข้อมูลในเครื่อง Mini App จะไม่จัดเก็บข้อมูลอื่นใด และไม่มีการใช้คุกกี้
โดยทั่วไปเครื่องสแกนโค้ด QR จะปิดหลังจากจดจำโค้ดได้ อย่างไรก็ตาม คุณสามารถเปิดใช้งานโหมดสแกนต่อเนื่องได้โดยไปที่แท็บการตั้งค่าแล้วกดปุ่ม Continuous Scan
หากต้องการปิดใช้งานโหมดสแกนต่อเนื่อง ให้กดปุ่มอีกครั้ง คุณสามารถออกจากโหมดต่อเนื่องได้โดยกดลูกศรซ้ายบน
หลังจากสแกนโค้ด QR สำเร็จ อุปกรณ์จะสั่นเพื่อให้ข้อเสนอแนะ
ในส่วนการตั้งค่าของ Mini App คุณจะพบเครื่องมือที่มีประโยชน์สำหรับการดีบักและการพัฒนา:
Sync Cloud Storage
: สิ่งนี้จะซิงค์ที่เก็บข้อมูลในตัวเครื่องของ Mini App กับ Telegram Cloud Storage ซึ่งเทียบเท่ากับการเปิดและปิด Mini AppEnrich QR codes
: ทริกเกอร์การคำนวณรหัส QR แบบดิบสำหรับการสแกนทั้งหมดShow debug
:โครงการใช้ประโยชน์จาก Vuetify ซึ่งเป็นไลบรารีกรอบงาน Vue Components
รหัสนี้เผยแพร่ภายใต้ใบอนุญาต MIT