ซอร์สโค้ดที่ถูกลบออกจากการเข้าถึงสาธารณะหากคุณสนใจ Q-Municate โปรดติดต่อเรา
Q-Municate เป็นรหัสโอเพนซอร์สของแอปพลิเคชันแชทที่มีคุณสมบัติการสื่อสารอย่างเต็มรูปแบบบนเครื่อง (เช่นการส่งข้อความการถ่ายโอนไฟล์การแจ้งเตือนแบบพุชการโทรด้วยเสียง/วิดีโอ ฯลฯ ) เราได้รับแรงบันดาลใจในการให้แอปพลิเคชันแชทนอกกรอบ คุณสามารถปรับแต่งแอปพลิเคชันนี้ขึ้นอยู่กับความต้องการของคุณ เช่นเดียวกับ QuickBlox Backend อยู่ที่บริการของคุณ: https://quickblox.com/plans/ ค้นหาซอร์สโค้ดและข้อมูลเพิ่มเติมเกี่ยวกับ Q-municate รวมถึงคู่มือการติดตั้งในส่วนนักพัฒนาซอฟต์แวร์ของเรา: https://quickblox.com/developers/Q-Municate มันเป็นคู่มือทีละขั้นตอนที่ออกแบบมาสำหรับทุกระดับนักพัฒนารวมถึงผู้เริ่มต้นในขณะที่เราย้ายจากการใช้งานง่ายไปสู่การใช้งานที่ซับซ้อนมากขึ้น ขึ้นอยู่กับทักษะของคุณและข้อกำหนดโครงการของคุณคุณอาจเลือกส่วนใดของคู่มือนี้ที่จะปฏิบัติตาม สนุกและหากคุณต้องการความช่วยเหลือจากทีม Quickblox iOS รู้สึกอิสระที่จะแจ้งให้เราทราบด้วยการสร้างปัญหา Q-Municate เป็นแอปพลิเคชั่นแชทที่เต็มเปี่ยมโดยใช้ QuickBlox API
- Q-Municate 3.0.0
- 1. ข้อกำหนดและสภาพแวดล้อมซอฟต์แวร์
- 2. โมดูล Quickblox
- 3. คุณสมบัติ
- 4. หน้าจอ
- 5. การโทรเสียงและวิดีโอ
- 6. ส่วนขยาย
- 7. รหัสคำอธิบาย
- 8. วิธีสร้างแอพแชทของคุณเอง
- 9. การบริจาค
- 10. ใบอนุญาต
1. ข้อกำหนดและสภาพแวดล้อมซอฟต์แวร์
- xcode 10 และใหม่กว่า
- iOS 10.3 และในภายหลัง
- QuickBlox iOS SDK 2.17.4 และใหม่กว่า
- Quickblox Webrtc SDK 2.7.4 และใหม่กว่า
- สลักเกลียว 1.9.0
- Facebook iOS SDK 5.6.0 เวอร์ชัน
- Firebase 6.9.0 เวอร์ชัน
1.1 QuickBlox iOS SDK
QuickBlox - แพลตฟอร์มการสื่อสารและคลาวด์แบ็กเอนด์ซึ่งนำพลังพิเศษมาสู่แอพมือถือของคุณ
1.2 webrtc
Q-Municate ใช้ WEBRTC สำหรับวิดีโอและเสียงการโทรหมายความว่ามันเป็นโซลูชันข้ามแพลตฟอร์มที่ยอดเยี่ยม WebRTC นั้นเป็นโอเพ่นซอร์สดังนั้นคุณสามารถปรับเปลี่ยนรหัสได้มากเท่าที่คุณต้องการหรือคุณสามารถไว้วางใจนักพัฒนาที่มีทักษะหลายพันคนที่มีส่วนร่วมในการพัฒนา
ตัวอย่างรหัสวิดีโอแชทช่วยให้คุณสามารถเพิ่มการโทรวิดีโอและคุณสมบัติการโทรด้วยเสียงลงในแอพ iOS ของคุณได้อย่างง่ายดาย เปิดใช้งานฟังก์ชั่นการโทรวิดีโอคล้ายกับ FaceTime หรือ Skype โดยใช้ตัวอย่างโค้ดเป็นพื้นฐาน
2. โมดูล Quickblox
แอปพลิเคชัน Q-Municate ใช้ต่อไปนี้:
- การรับรองความถูกต้อง
- ผู้ใช้
- แชท
- การโทรวิดีโอ
- เนื้อหา
- การแจ้งเตือน
3. คุณสมบัติ
มันมีคุณสมบัติเช่น:
- แอพรองรับทั้งโหมดภูมิทัศน์และแนวตั้ง
- แอปพลิเคชัน iOS มีอินเทอร์เฟซภาษาอังกฤษและเพิ่มการแปลได้ง่าย
- วิธีการลงทะเบียนสามวิธีเช่นเดียวกับการเข้าสู่ระบบ-Facebook, Firebase (หมายเลขโทรศัพท์) และด้วยอีเมล/รหัสผ่าน
- ชุดโทร
- แบ่งปันส่วนขยาย
- Siri Extension สำหรับการส่งข้อความ
- ดูรายการกล่องโต้ตอบแชทที่ใช้งานอยู่ทั้งหมดพร้อมประวัติข้อความ (กล่องโต้ตอบแชทส่วนตัวและกลุ่ม)
- ดูแก้ไขและปล่อยกล่องโต้ตอบแชทเป็นกลุ่ม
- ดูและลบกล่องโต้ตอบแชทส่วนตัว
- ค้นหา: การค้นหากล่องโต้ตอบในท้องถิ่นการค้นหาผู้ติดต่อและการค้นหาผู้ใช้ทั่วโลก
- สร้างและมีส่วนร่วมในกล่องโต้ตอบส่วนตัวและกลุ่ม
- การจัดการอัปเดตและลบกล่องโต้ตอบ
- การโทรเสียงและวิดีโอ (โดยใช้เฟรมเวิร์ก QuickBlox WebRTC)
- แก้ไขโปรไฟล์ผู้ใช้ของตัวเอง
- รีเซ็ตรหัสผ่านและออกจากระบบ
- ดูโปรไฟล์ผู้ใช้รายอื่น
- ดึงไปที่รายการกล่องโต้ตอบรายการรายชื่อผู้ติดต่อและหน้าข้อมูลผู้ใช้
โปรดทราบว่าคุณสมบัติทั้งหมดเหล่านี้มีอยู่ในรหัสโอเพนซอร์สดังนั้นคุณสามารถปรับแต่งแอปของคุณขึ้นอยู่กับความต้องการของคุณ
4. หน้าจอ
4.1 ยินดีต้อนรับ
คุณสมบัติที่มีอยู่:
- เชื่อมต่อกับโทรศัพท์ - ปุ่มนี้อนุญาตให้ผู้ใช้ป้อนแอพด้วยหมายเลขโทรศัพท์ของเขา/เธอโดยใช้ Firebase หากเคาะจะแสดงข้อตกลงผู้ใช้ป๊อปอัพ
- เข้าสู่ระบบทางอีเมลหรือปุ่มโซเชียล - โดยการแตะที่ปุ่มแอ็คชั่นปุ่มนี้ด้วยวิธีการเข้าสู่ระบบพิเศษจะปรากฏขึ้น มีวิธีการเช่นการเข้าสู่ระบบ Facebook และเข้าสู่ระบบทางอีเมล/รหัสผ่าน
- เข้าสู่ระบบด้วย Facebook ช่วยให้ผู้ใช้ป้อนแอปด้วยข้อมูลรับรอง Facebook ของเขา/เธอ หากเคาะจะแสดงข้อตกลงผู้ใช้ป๊อปอัพ
- หากแอปผ่านการอนุญาต Facebook ได้สำเร็จแอปจะเปลี่ยนเส้นทางผู้ใช้ไปยังหน้าจอรายการสนทนาแชท
- เข้าสู่ระบบทางอีเมล/รหัสผ่านช่วยให้ผู้ใช้ป้อนแอพหากเขา/เธอให้อีเมลและรหัสผ่านที่ถูกต้องและถูกต้อง โดยการแตะที่ปุ่มนี้ผู้ใช้จะถูกเปลี่ยนเส้นทางไปยังหน้าจอเข้าสู่ระบบ
โปรดทราบว่าไม่มีความเป็นไปได้ที่จะลงทะเบียนผู้ใช้โดยใช้วิธีอีเมลและรหัสผ่านอีกต่อไป คุณสามารถลงทะเบียนโดยใช้หมายเลขโทรศัพท์และ/หรือข้อมูลรับรอง Facebook เท่านั้น
4.2 เข้าสู่ระบบด้วยอีเมล/รหัสผ่าน
คุณสมบัติที่มีอยู่:
- ชุดฟิลด์:
- อีเมล - ฟิลด์ข้อความ/ตัวเลข/สัญลักษณ์ 3 ตัวอักษรขั้นต่ำ - ไม่มีชายแดนบังคับ (รวมการตรวจสอบสัญลักษณ์อีเมล)
- รหัสผ่าน-ฟิลด์ข้อความ/ตัวเลข/สัญลักษณ์ 8-40 ตัวอักษร (ควรมีอักขระตัวอักษรและตัวเลขและเครื่องหมายวรรคตอนเท่านั้น), บังคับ
- ปุ่ม:
- ย้อนกลับ - ส่งคืนผู้ใช้กลับไปยังหน้าจอต้อนรับ
- เสร็จสิ้น - ทำการเข้าสู่ระบบหลังจากการตรวจสอบฟิลด์โดยใช้อีเมลและรหัสผ่านที่ให้ไว้
- ลืมรหัสผ่าน - เปิดหน้าจอรหัสผ่านลืม
4.3 ลืมรหัสผ่าน
- ชุดฟิลด์:
- อีเมล - ฟิลด์ข้อความ/ตัวเลข/สัญลักษณ์ 3 ตัวอักษรขั้นต่ำ - ไม่มีชายแดนบังคับ (รวมการตรวจสอบสัญลักษณ์อีเมล)
- ปุ่ม:
- ย้อนกลับ - ส่งคืนผู้ใช้กลับไปยังหน้าจอต้อนรับ
- รีเซ็ต - ทำการรีเซ็ตรหัสผ่าน
4.4 แท็บบาร์
แท็บบาร์เป็นตัวควบคุมหลักของแอปพลิเคชัน ประกอบด้วยหน้าดังกล่าว:
- รายการกล่องโต้ตอบแชท (หน้าหลัก)
- รายชื่อผู้ติดต่อ
- การตั้งค่า
4.5 รายการกล่องโต้ตอบแชท
- ค้นหา:
- การค้นหาอนุญาตให้ผู้ใช้กรองกล่องโต้ตอบที่มีอยู่ในแคชท้องถิ่นด้วยชื่อ
- ปุ่ม:
- ปุ่มแถบขวา - เปลี่ยนเส้นทางผู้ใช้ไปยังหน้าจอโต้ตอบใหม่
4.6 ข้อความใหม่
หากคุณจะเลือกเพียง 1 ติดต่อ - แชทส่วนตัวจะเปิด (ถ้ามีอยู่) หรือสร้างขึ้นหากจำเป็น มิฉะนั้นการแชทกลุ่มจะถูกสร้างขึ้น
- ค้นหา:
- แท็กฟิลด์ช่วยให้คุณสามารถค้นหาผ่านผู้ติดต่อชื่อเต็ม
- ปุ่ม:
- ปุ่มบาร์ขวา - สร้างกล่องโต้ตอบแชท
- ย้อนกลับ - ส่งคืนผู้ใช้กลับไปที่หน้ากล่องโต้ตอบแชท
4.7 แชท
มีความเป็นไปได้ที่จะส่ง:
- ข้อความ
- รูปภาพจากแกลเลอรี่และกล้อง
- วิดีโอจากแกลเลอรี่และกล้อง
- บันทึกเสียงโดยใช้ปุ่มขวาอินพุตแถบเครื่องมือขวา
คุณสมบัติที่มีอยู่:
- การแบ่งปันและการส่งต่อ
- การคัดลอก Image AttachMnets และข้อความ
4.8 แชทส่วนตัว
ปุ่ม:
- ปุ่มแถบขวา - ปุ่มเสียงและวิดีโอคุณสามารถโทรหาผู้ใช้ได้เฉพาะเมื่อเขาอยู่ในรายชื่อผู้ติดต่อของคุณ
- ย้อนกลับ - ส่งคืนผู้ใช้กลับไปที่หน้าจอรายการโต้ตอบแชท
- ชื่อแถบการนำทาง - เปลี่ยนเส้นทางผู้ใช้ไปยังหน้าโปรไฟล์คู่ต่อสู้
4.9 การแชทเป็นกลุ่ม
ปุ่ม:
- ปุ่มแถบขวาและแถบการนำทาง - เปลี่ยนเส้นทางผู้ใช้ไปยังกลุ่มข้อมูลการแชทกลุ่ม
- Back - Return User ไปยังหน้าจอรายการสนทนาแชท
- Avatars ผู้ใช้ฝ่ายตรงข้าม - โดยการแตะอวตารของผู้ใช้คู่ต่อสู้ในข้อความคุณจะถูกนำไปยังหน้าข้อมูลของผู้ใช้นั้น
4.10 ข้อมูลการแชทเป็นกลุ่ม
ฟิลด์/ปุ่ม:
- โดยการแตะที่ Avatar กลุ่มคุณสามารถเปลี่ยนได้โดยการถ่ายภาพใหม่หรือเลือกจาก Library
- โดยการแตะชื่อกลุ่มคุณจะถูกเปลี่ยนเส้นทางไปยังหน้าจอเปลี่ยนชื่อกลุ่ม
- โดยการแตะที่ฟิลด์ Add Member คุณจะถูกเปลี่ยนเส้นทางไปยังหน้าจอผู้ติดต่อเพื่อเลือกผู้ใช้เพื่อเพิ่ม
- โดยการแตะที่ผู้ใช้ในรายชื่อสมาชิกคุณจะถูกเปลี่ยนเส้นทางไปยังหน้าข้อมูลของพวกเขา (ยกเว้นผู้ใช้ของคุณเองในรายการ)
- โดยการแตะลาและลบช่องแชท - คุณจะปล่อยให้แชทเป็นกลุ่มที่มีอยู่และลบออกในพื้นที่
4.11 รายชื่อผู้ติดต่อ
ค้นหา:
- การค้นหามีสองปุ่มขอบเขต:
- การค้นหาในพื้นที่ - อนุญาตให้ผู้ใช้กรองรายชื่อที่มีอยู่ด้วยชื่อของพวกเขา
- การค้นหาทั่วโลก - อนุญาตให้ผู้ใช้ค้นหาผู้ใช้และดูโปรไฟล์ด้วยชื่อเต็ม
4.12 ข้อมูลผู้ใช้
ฟิลด์/ปุ่ม
- การดำเนินการติดต่อ:
- ส่งข้อความ - เปิดแชทกับผู้ใช้หากยังไม่มีการแชท - สร้างมันขึ้นมา
- การโทรเสียง - การโทรด้วยเสียงไปยังผู้ใช้
- โทรวิดีโอ - โทรวิดีโอไปยังผู้ใช้
- ลบผู้ติดต่อและแชท - การลบผู้ใช้จากรายชื่อผู้ติดต่อและแชทกับเขา
การกระทำของผู้ใช้อื่น ๆ :
- เพิ่มผู้ติดต่อ - ส่งคำขอติดต่อไปยังผู้ใช้หรือยอมรับที่มีอยู่
4.13 การตั้งค่า
ฟิลด์/ปุ่ม:
- ฟิลด์ชื่อเต็มชื่อและอีเมลจะเปลี่ยนเส้นทางให้คุณอัปเดตหน้าจอฟิลด์ซึ่งคุณสามารถเปลี่ยนข้อมูลของคุณได้
- โดยการแตะแผ่นแอ็คชั่นอวตารจะเปิดขึ้น คุณสามารถถ่ายภาพใหม่หรือเลือกจากไลบรารีเพื่ออัปเดตอวตารของผู้ใช้ของคุณ
- สวิตช์การแจ้งเตือนแบบพุช - คุณสามารถสมัครสมาชิกหรือยกเลิกการสมัครจากการแจ้งเตือนแบบพุช
- บอกเพื่อน - เปิดตัวคอนโทรลเลอร์ Share ที่คุณสามารถแบ่งปันแอพที่ยอดเยี่ยมนี้กับเพื่อนของคุณ :)
- ให้ข้อเสนอแนะ - หน้าจอข้อเสนอแนะที่คุณสามารถส่งอีเมลถึงเราด้วยข้อบกพร่องการปรับปรุงหรือข้อมูลข้อเสนอแนะเพื่อช่วยให้เราทำให้ Q -municate ดีขึ้น!
5. การโทรเสียงและวิดีโอ
Q-Municate โดยใช้ QuickBlox WebRTC SDK เป็นบริการโทร คุณสามารถค้นหาข้อมูลเพิ่มเติมได้ที่นี่
5.1 การโทรเข้าคอนโทรลเลอร์
ตัวควบคุมการโทรมี 6 สถานะ:
- การโทรเสียงที่เข้ามา
- โทรวิดีโอขาเข้า
- โทรออกเสียง
- โทรวิดีโอขาออก
- การโทรเสียงที่ใช้งานอยู่
- โทรวิดีโอที่ใช้งานอยู่
ตัวควบคุมการโทรได้รับการจัดการโดย QMCallManager โดยทั่วไปแล้วการเรียกตัวจัดการการจัดสรรให้กับสถานะเฉพาะไม่ว่าจะเป็นการโทรที่เข้ามาหรือขาออก
5.2 การโทรเสียง
คุณสามารถดูหน้าจอการโทรเสียงขาเข้าด้านล่างและใช้งานได้
ปุ่มแถบเครื่องมือ
- โทรเข้า:
- ปฏิเสธ - ปฏิเสธการโทรและปิดที่ได้รับเซสชันและคอนโทรลเลอร์
- ยอมรับ - ยอมรับการโทรและเปลี่ยนสถานะตัวควบคุมการโทรไปยังการโทรด้วยเสียงที่ใช้งานอยู่
- โทรออกและใช้งานได้:
- ไมโครโฟน - ปิดใช้งานไมโครโฟนสำหรับการโทรปัจจุบัน
- ลำโพง - ไม่ว่าจะเล่นเสียงในลำโพงหรือตัวรับสัญญาณ ค่าเริ่มต้นสำหรับการโทรเสียงเป็นตัวรับสัญญาณ
- DENGLINE - การแขวนกระแสทั้งหมดและการปิดคอนโทรลเลอร์
5.3 การโทรวิดีโอ
คุณสามารถดูหน้าจอการโทรทางวิดีโอขาเข้าด้านล่างและใช้งานได้
โดยเริ่มต้นเสียงสำหรับการโทรวิดีโออยู่ในลำโพง
- โทรเข้า:
- ปฏิเสธ - ปฏิเสธการโทรและปิดที่ได้รับเซสชันและคอนโทรลเลอร์
- ยอมรับ - ยอมรับการโทรและเปลี่ยนสถานะตัวควบคุมการโทรไปยังการโทรวิดีโอที่ใช้งานอยู่
- โทรออกและใช้งานได้:
- กล้อง - เปิดใช้งาน/ปิดใช้งานกล้องสำหรับการโทรปัจจุบัน
- การหมุนกล้อง - เปลี่ยนกล้องสำหรับการโทรปัจจุบัน (ด้านหน้า/หลัง)
- ไมโครโฟน - ปิดใช้งานไมโครโฟนสำหรับการโทรปัจจุบัน
- DENGLINE - การแขวนกระแสทั้งหมดและการปิดคอนโทรลเลอร์
5.4 ชุดโทร
CallKit อนุญาตให้รวมบริการการโทรเข้ากับแอพที่เกี่ยวข้องกับการโทรอื่น ๆ ในระบบ CallKit ให้อินเทอร์เฟซการโทรและเราจัดการการสื่อสารกลับส่วนท้ายด้วยบริการ VoIP ของเรา สำหรับการโทรเข้าและขาออก CallKit จะแสดงอินเทอร์เฟซเดียวกันกับแอพโทรศัพท์ทำให้แอปพลิเคชัน Q-Municate มีรูปลักษณ์และความรู้สึกแบบดั้งเดิมมากขึ้น
6. ส่วนขยาย
6.1 ส่วนขยายหุ้น
ส่วนขยายแบ่งปันช่วยให้ผู้ใช้มีวิธีที่สะดวกในการแบ่งปันเนื้อหากับหน่วยงานอื่น ๆ ประเภทที่มีอยู่สำหรับการแบ่งปัน:
- สถานที่
- url
- ภาพ
- วิดีโอ
- เสียง
6.2 Intents App Extension (Sirikit สำหรับการส่งข้อความ)
ส่วนขยายแอป Intents ได้รับคำขอผู้ใช้เพื่อส่งข้อความจาก Sirikit และเปลี่ยนเป็นการกระทำเฉพาะแอป
7. รหัสคำอธิบาย
คุณสามารถดูคำอธิบายรหัสพื้นฐานด้านล่าง สำหรับรายละเอียดโปรดดูเอกสารอินไลน์ของเราสำหรับไฟล์ส่วนหัวในชั้นเรียนส่วนใหญ่ เราพยายามอธิบายอย่างละเอียดที่สุดเท่าที่จะเป็นไปได้จุดประสงค์ของทุกชั้นเรียนและวิธีการของมัน หากคุณมีคำถามใด ๆ อย่าลังเลที่จะแจ้งให้เราทราบโดยการสร้างปัญหา
7.1 กระดานเรื่องราว
เราได้แยก Q-municate สำหรับโมดูลเช่น:
- รับรองความถูกต้อง
- หลัก
- แชท
- การตั้งค่า
แต่ละโมดูลมีกระดานเรื่องราวของตัวเองกระดานเรื่องราวทั้งหมดเชื่อมโยงกับลิงค์กระดานเรื่องราว (มีอยู่ตั้งแต่ XCODE 7 และ iOS 8+)
8. วิธีสร้างแอพแชทของคุณเอง
หากคุณต้องการสร้างแอพของคุณเองโดยใช้ Q-Municate เป็นพื้นฐานโปรดทำตามคำแนะนำโดยละเอียดของเราที่นี่
9. การบริจาค
คุณสมบัติ
- Fork It (https://github.com/ [mymy-github-username ame/q-municate-ios/fork)
- สร้างสาขาคุณลักษณะของคุณ (
git checkout -b my-new-feature ) - กระทำการเปลี่ยนแปลงของคุณ (
git commit -am 'My new feature' ) - ผลัก
git push origin my-new-feature ไปยังสาขา - สร้างคำขอดึงใหม่
ปัญหา
หากคุณพบปัญหาโปรดสร้างปัญหา
10. ใบอนุญาต
ใบอนุญาต Apache เวอร์ชัน 2.0 ดูไฟล์ใบอนุญาต