Der Quellcode, der aus dem öffentlichen Zugriff entfernt ist, wenn Sie an Q-Municate interessiert sind, kontaktieren Sie uns bitte mit uns
Q-Municate ist ein Open-Source-Code der Chat-Anwendung mit einer umfassenden Reihe von Kommunikationsfunktionen an Bord (z. B. Messaging, Dateiübertragung, Push-Benachrichtigungen, Audio-/Videoanrufe usw.). Wir sind inspiriert, Ihnen eine Chat -Anwendung außerhalb der Box zu geben. Sie können diese Anwendung je nach Ihren Anforderungen anpassen. Wie immer ist QuickBlox Backend in Ihrem Service: https://quickblox.com/plans/ finden Sie den Quellcode und weitere Informationen über Q-Municate sowie den Installationshandbuch in unserem Entwicklungsabschnitt: https://quickblox.com/developer/q-municate. Diese Leitfaden wird mit einem Quickblox-API-Team mit dem Quickblox-api-Team eingeleitet. Es ist ein Schritt -für -Schritt -Leitfaden für alle Entwicklerebenen, einschließlich Anfänger, wenn wir von einer einfachen zu komplexeren Implementierung wechseln. Abhängig von Ihren Fähigkeiten und Ihren Projektanforderungen können Sie auswählen, welche Teile dieses Leitfadens folgen sollen. Genießen Sie und wenn Sie Hilfe vom QuickBlox iOS -Team benötigen, können Sie uns gerne mit einem Problem informieren. Q-Municate ist eine vollwertige Chat-Anwendung mit der QuickBlox-API.
- Q-Municate 3.0.0
- 1. Anforderungen und Softwareumgebung
- 2. Quickblox -Module
- 3. Merkmale
- 4. Bildschirme
- 5. Audio- und Videoanrufe
- 6. Erweiterungen
- 7. Code Erläuterung
- 8. So erstellen Sie Ihre eigene Chat -App
- 9. Beitrag
- 10. Lizenz
1. Anforderungen und Softwareumgebung
- Xcode 10 und später.
- iOS 10.3 und später.
- QuickBlox iOS SDK 2.17.4 und später.
- QuickBlox WEBRTC SDK 2.7.4 und später.
- Bolzen 1.9.0 Version.
- Facebook iOS SDK 5.6.0 Version.
- Firebase 6.9.0 Version.
1.1 QuickBlox iOS SDK
QuickBlox - Kommunikations- und Cloud -Backend -Plattform, die Superkräfte in Ihre mobilen Apps bringt.
1,2 webrtc
Q-Municate verwendet WEBRTC für Video- und Audioaufrufe, was bedeutet, dass es sich um eine großartige plattformübergreifende Lösung handelt. Webrtc selbst IT Open-Source, sodass Sie den Code so sehr ändern können, wie Sie möchten, oder Sie können den Tausenden von qualifizierten Entwicklern vertrauen, die zu seiner Entwicklung beigetragen haben.
Mit dem Beispiel für VideoChat -Code können Sie Ihre iOS -App problemlos Videoanrufe und Audio -Anrufe hinzufügen. Aktivieren Sie eine Videoanruffunktion, die ähnlich wie FaceTime oder Skype mit Code -Beispiel als Grundlage ähnelt.
2. Quickblox -Module
Q-Municate-Anwendung verwendet folgende:
- Authentifizierung
- Benutzer
- Chat
- Videoanrufe
- Inhalt
- Push -Benachrichtigungen
3. Merkmale
Es enthält Funktionen wie:
- Die App unterstützt sowohl Landschaft als auch Porträtmodus.
- Die iOS -Anwendung verfügt über eine englischsprachige Oberfläche und leicht zu einer Lokalisierung hinzuzufügen.
- Drei Anmeldemethoden sowie Anmeldung-Facebook, Firebase (Telefonnummer) und mit E-Mail/Passwort
- Rufen Sie Kit an
- Aktienerweiterung
- Siri -Erweiterung für Nachrichten
- Liste aller aktiven Chat -Dialoge mit Nachrichtenhistorie anzeigen (private und Gruppen -Chat -Dialoge)
- Gruppen -Chat -Dialoge anzeigen, bearbeiten und verlassen
- Private Chat -Dialoge anzeigen und entfernen
- Suche: Lokale Dialoge suchen, Kontaktsuche und globale Benutzer suchen
- Erstellen und nehmen Sie an privaten und Gruppendialogen teil und nehmen Sie teil
- Verwalten, Aktualisierung und Entfernen von Dialogen
- Audio- und Videoaufrufe (mit QuickBlox WEBRTC Framework)
- Eigenes Benutzerprofil bearbeiten
- Passwort zurücksetzen und abmelden
- Siehe Profil des anderen Benutzer
- Ziehen Sie zur Aktualisierung der Dialogliste, der Kontaktliste und der Benutzerinformationsseite an.
Bitte beachten Sie, dass alle diese Funktionen im Open -Source -Code verfügbar sind, damit Sie Ihre App je nach Ihren Anforderungen anpassen können.
4. Bildschirme
4.1 Willkommen
Verfügbare Funktionen:
- Verbinden Sie mit dem Telefon - Mit dieser Schaltfläche kann der Benutzer die App mit seiner Telefonnummer mit FireBase eingeben. Wenn Tacked die Benutzervereinbarung Pop-up angezeigt wird.
- Melden Sie sich per E -Mail oder sozialer Schaltfläche an - indem Sie auf dieses Schaltflächen -Aktionsblatt mit zusätzlichen Anmeldemethoden tippen. Es gibt Methoden wie Facebook Anmeldung und Anmelden per E -Mail/Passwort.
- Melden Sie sich bei Facebook an, ermöglicht den Benutzer, die App mit seinen Facebook -Anmeldeinformationen einzugeben. Wenn Tacked die Benutzervereinbarung Pop-up angezeigt wird.
- Wenn die App die Facebook -Autorisierung erfolgreich bestanden hat, wird die App den Benutzer in den Chat -Dialog -Dialog -Bildschirm umgeleitet.
- Melden Sie sich per E -Mail/Passwort an, ermöglicht den Benutzer die App ein, wenn er/sie korrekte und gültige E -Mail und Passwort bereitstellt. Durch Tippen auf diese Schaltfläche wird der Benutzer auf den Anmeldebildschirm umgeleitet.
Bitte beachten Sie, dass es keine Möglichkeit mehr gibt, Benutzer mithilfe einer E -Mail- und Kennwortmethode anzumelden. Sie können sich nur mit Telefonnummer und/oder Facebook -Anmeldeinformationen anmelden.
4.2 Melden Sie sich mit E -Mail/Passwort an
Verfügbare Funktionen:
- Felder gesetzt:
- E -Mail - Text/Numerische/symbolische Felder 3 Zeichen min - Keine Grenze, obligatorische (E -Mail -Symbole Validierung enthalten)
- Passwort-Text/Numerisches/symbolisches Feld 8-40 Zeichen (sollte nur alphanumerische und Zeichensetzung enthalten), obligatorisch
- Knöpfe:
- Zurück - Gibt den Benutzer zurück zum Begrüßungsbildschirm zurück
- Fertig - Anmeldung nach der Feldervalidierung mit der angegebenen E -Mail und Passwort durchführen
- Passwort vergessen - öffnet das Passwort vergessen
4.3 Passwort vergessen
- Felder gesetzt:
- E -Mail - Text/Numerische/symbolische Felder 3 Zeichen min - Keine Grenze, obligatorische (E -Mail -Symbole Validierung enthalten)
- Knöpfe:
- Zurück - Gibt den Benutzer zurück zum Begrüßungsbildschirm zurück
- Zurücksetzen - Passwort zurücksetzen
4.4 Registerkartenleiste
TAB -Leiste ist ein Hauptcontroller der Anwendung. Es besteht aus solchen Seiten:
- Chat -Dialoge Liste (Hauptseite)
- Kontaktliste
- Einstellungen
4.5 Chat -Dialoge Liste
- Suchen:
- Durch die Suche können Benutzer vorhandene Dialoge in lokalem Cache mit seinen Namen filtern.
- Knöpfe:
4.6 Neue Nachricht
Wenn Sie nur 1 Kontakt auswählen - wird der private Chat geöffnet (falls vorhanden) oder bei Bedarf erstellt. Andernfalls wird Gruppenchat erstellt.
- Suchen:
- Mit dem Tag mit dem Tag können Sie die vollständigen Namen durch Kontakte suchen.
- Knöpfe:
- Rechte Balkendialog
- Zurück - Rückkehr der Benutzer zurück in die Chat -Dialoge zurück
4.7 Chat
Es besteht die Möglichkeit zu senden:
- Textnachrichten
- Bilder aus Galerie und Kamera
- Videos aus Galerie und Kamera
- Audioaufzeichnungen mithilfe der Eingabe -Symbolleiste mit der rechten Schaltfläche
Verfügbare Funktionen:
- Teilen und Weiterleiten
- Kopieren von Bildanhänge und Textnachrichten
4.8 Privatchat
Knöpfe:
- Rechte Balkenschaltflächen - Audio- und Videoanrufschaltflächen können Sie nur den Benutzer anrufen, wenn er in Ihrer Kontaktliste liegt
- Zurück - Gibt den Benutzer der Benutzer zurück in den Bildschirm "Dialoge" der Chat zurück
- Navigationsleiste - Title - Umleitet der Benutzer zur Seite des Gegnerprofils
4.9 Gruppenchat
Knöpfe:
- Taste der rechten Balken und Navigationsleisten. Title - Umleitete der Benutzer in den Bildschirm Chat -Infogruppen in Gruppeninformationen
- Zurück - Kehren Sie den Dialogbildschirm "Benutzer in Chat -Dialoge zurück" zurück
- Opponent -Benutzer -Avatare - Durch Tippen auf Gegner -Benutzer -Avatare in Nachrichten werden Sie auf die Info -Seite dieses Benutzers umgeleitet
4.10 Gruppen -Chat -Informationen
Felder/Tasten:
- Durch Tippen auf Gruppen -Avatar können Sie es ändern, indem Sie ein neues Foto machen oder aus der Bibliothek auswählen
- Durch Tippen auf den Gruppennamen werden Sie auf den Bildschirm "Gruppennamen ändern" umgeleitet
- Durch Tippen auf das Feld Add -Member werden Sie auf den Bildschirm "Kontakte" umgeleitet, um Benutzer zum Hinzufügen auszuwählen
- Durch Tippen auf einen Benutzer in der Mitgliederliste werden Sie auf ihre Info -Seite umgeleitet (außer Ihrem eigenen Benutzer in der Liste).
- Durch das Tippen auf das Urlaub und das Chat -Feld entfernen - Sie lassen den existierenden Gruppenchat und löschen Sie es lokal
4.11 Kontaktliste
Suchen:
- Die Suche hat zwei Scopes -Tasten:
- Lokale Suche - Ermöglicht dem Benutzer, vorhandene Kontakte mit ihren Namen zu filtern.
- Globale Suche - Ermöglicht dem Benutzer, Benutzer zu finden und ihre Profile mit vollständigen Namen zu sehen.
4.12 Benutzerinformationen
Felder/Tasten
- Kontaktaktionen:
- Nachricht senden - öffnet Chat mit dem Benutzer, wenn es noch keinen Chat gibt - erstellt sie
- Audioanruf - Audioanruf an den Benutzer
- Videoanruf - Videoanruf an den Benutzer
- Entfernen Sie Kontakt und Chat - Benutzer aus der Kontaktliste löschen und mit ihm chatten
Andere Benutzeraktionen:
- Kontakt hinzufügen - Senden einer Kontaktanforderung an den Benutzer oder das Annehmen vorhandener
4.13 Einstellungen
Felder/Tasten:
- Der vollständige Name, der Status und die E -Mail -Felder werden Sie zum Aktualisieren des Feldbildschirms umgeleitet, auf dem Sie Ihre Informationen ändern können.
- Durch Tippen auf Avatar -Aktionsblatt wird geöffnet. Sie können entweder ein neues Bild aufnehmen oder es aus der Bibliothek auswählen, um Ihren Benutzer -Avatar zu aktualisieren.
- Push -Benachrichtigungsschalter - Sie können sich entweder abonnieren oder abmelden von Push -Benachrichtigungen.
- Sagen Sie einem Freund - öffnet Share Controller, wo Sie diese großartige App mit Ihren Freunden teilen können :)
- Feedback - Feedback -Bildschirm geben, auf dem Sie uns eine E -Mail mit Fehler, Verbesserungen oder Vorschlägen senden können, um uns zu helfen, Q -Municate besser zu machen!
5. Audio- und Videoanrufe
Q-Municate mit QuickBlox WEBRTC SDK als Anrufdienst. Weitere Informationen dazu finden Sie hier.
5.1 Call Controller
Call Controller hat 6 Staaten:
- Eingehender Audioanruf
- Eingehender Videoanruf
- Ausganger Audioanruf
- Ausgehender Videoanruf
- Aktiver Audioanruf
- Aktiver Videoanruf
Call Controller wird von QMCallManager verwaltet. Im Grunde genommen wird Call Manager mit einem bestimmten Status zugewiesen, unabhängig davon, ob es sich um einen eingehenden oder ausgehenden Anruf handelt. Rufen Sie den CONTROLER an, wenn der Benutzer ihn in aktives Status ändert, wenn der Benutzer ihn akzeptiert.
5.2 Audioanruf
Sie können unter den eingehenden, ausgehenden und aktiven Audio -Call -Bildschirmen sehen.
Symbolleiste
- Eingehender Anruf:
- Rückgang - Rückgänge Anruf und schließt die erhaltene Sitzung und Controller schließt
- Akzeptieren - Akzeptieren Sie Anrufe und Änderungen des Anrufcontroller -Status in einen aktiven Audio -Anruf
- Ausganger und aktiver Anruf:
- Mikrofon - Deaktiviert Mikrofon für den aktuellen Aufruf
- Lautsprecher - ob Klang im Sprecher oder Empfänger gespielt werden sollte. Standard für Audio -Anrufe ist der Empfänger.
- Niederlehnen - Strom auflegen und Controller schließen
5.3 Videoanruf
Sie können unten untergehende, ausgehende und aktive Videoanrufbildschirme sehen.
Standardmäßig ist der Sound für Videoanrufe in Sprechern.
- Eingehender Anruf:
- Rückgang - Rückgänge Anruf und schließt die erhaltene Sitzung und Controller schließt
- Akzeptieren - Akzeptieren Sie Anrufe und Änderungen des Anrufcontroller -Status in aktive Videoanrufe
- Ausganger und aktiver Anruf:
- Kamera - Aktiviert/deaktiviert die Kamera für den aktuellen Anruf
- Kamera Rotation - Wechseln Sie die Kamera für den aktuellen Anruf (vorne/hinten)
- Mikrofon - Deaktiviert Mikrofon für den aktuellen Aufruf
- Niederlehnen - Strom auflegen und Controller schließen
5.4 Rufen Sie Kit an
Callkit ermöglicht es, Anrufdienste in andere Anrufe im Zusammenhang mit dem Anruf auf dem System zu integrieren. Callkit bietet die Anrufoberfläche an, und wir verarbeiten die Back-End-Kommunikation mit unserem VoIP-Service. Für eingehende und ausgehende Anrufe zeigt Callkit dieselben Schnittstellen wie die Telefon-App an und verleiht die q-Municate-Anwendung ein nativeres Erscheinungsbild.
6. Erweiterungen
6.1 Aktienerweiterung
Die Share -Erweiterung bietet Benutzern eine bequeme Möglichkeit, Inhalte mit anderen Unternehmen zu teilen. Verfügbare Typen zum Teilen:
- Standorte
- URL
- Bilder
- Videos
- Audios
6.2 Absichten App -Erweiterung (Sirikit für Messaging)
Eine App-Erweiterung der Absichten empfängt die Benutzeranforderung, eine Nachricht von Sirikit zu senden, und verwandelt sie in App-spezifische Aktionen.
7. Code Erläuterung
Sie können unten die grundlegende Code -Erläuterung sehen. Detaillierte finden Sie in unserer Inline -Dokumentation für Header -Dateien in den meisten Klassen. Wir haben versucht, den Zweck jeder Klasse und ihrer Methoden so detailliert wie möglich zu beschreiben. Wenn Sie Fragen haben, können Sie uns gerne mit einem Problem informieren.
7.1 Storyboards
Wir haben Q-Municate für Module getrennt, wie z. B.:
- Auth
- Hauptsächlich
- Chat
- Einstellungen
Jedes Modul verfügt über ein eigenes Storyboard, alle Storyboards sind mit Storyboard -Links verknüpft (Funktionen seit Xcode 7 und iOS 8+).
8. So erstellen Sie Ihre eigene Chat -App
Wenn Sie Ihre eigene App mit Q-Municate als Grundlage erstellen möchten, folgen Sie hier unserem detaillierten Leitfaden.
9. Beitrag
Merkmale
- Fork It (https://github.com/[my-github-username weibliche/q-municate-ios/fork)
- Erstellen Sie Ihre Funktionszweig (
git checkout -b my-new-feature ). - Bestimmen Sie Ihre Änderungen (
git commit -am 'My new feature' ) - Drücken Sie in den Zweig (
git push origin my-new-feature ) - Erstellen Sie eine neue Pull -Anfrage
Probleme
Wenn Sie ein Problem finden, erstellen Sie bitte ein Problem.
10. Lizenz
Apache -Lizenz, Version 2.0. Siehe Lizenzdatei.