FMUSER Wirless transmet la vidéo et l'audio plus facilement!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albanais
ar.fmuser.org -> arabe
hy.fmuser.org -> Armenian
az.fmuser.org -> azerbaïdjanais
eu.fmuser.org -> basque
be.fmuser.org -> biélorusse
bg.fmuser.org -> Bulgare
ca.fmuser.org -> catalan
zh-CN.fmuser.org -> chinois (simplifié)
zh-TW.fmuser.org -> Chinois (traditionnel)
hr.fmuser.org -> croate
cs.fmuser.org -> tchèque
da.fmuser.org -> danois
nl.fmuser.org -> Néerlandais
et.fmuser.org -> estonien
tl.fmuser.org -> Philippin
fi.fmuser.org -> finnois
fr.fmuser.org -> Français
gl.fmuser.org -> Galicien
ka.fmuser.org -> géorgien
de.fmuser.org -> allemand
el.fmuser.org -> Grec
ht.fmuser.org -> Créole haïtien
iw.fmuser.org -> hébreu
hi.fmuser.org -> Hindi
hu.fmuser.org -> Hongrois
is.fmuser.org -> islandais
id.fmuser.org -> indonésien
ga.fmuser.org -> irlandais
it.fmuser.org -> Italien
ja.fmuser.org -> japonais
ko.fmuser.org -> coréen
lv.fmuser.org -> letton
lt.fmuser.org -> Lituanien
mk.fmuser.org -> macédonien
ms.fmuser.org -> malais
mt.fmuser.org -> maltais
no.fmuser.org -> Norwegian
fa.fmuser.org -> persan
pl.fmuser.org -> polonais
pt.fmuser.org -> portugais
ro.fmuser.org -> Roumain
ru.fmuser.org -> russe
sr.fmuser.org -> serbe
sk.fmuser.org -> slovaque
sl.fmuser.org -> Slovène
es.fmuser.org -> espagnol
sw.fmuser.org -> Swahili
sv.fmuser.org -> suédois
th.fmuser.org -> Thai
tr.fmuser.org -> turc
uk.fmuser.org -> ukrainien
ur.fmuser.org -> ourdou
vi.fmuser.org -> Vietnamienne
cy.fmuser.org -> Gallois
yi.fmuser.org -> Yiddish
La diffusion en direct interactive implique le serveur, le client enseignant, le client étudiant iOS / Android et le client étudiant Web / Wap. Cet article se concentre sur le processus d'interaction de Maimai, la conception du module Maimai sur le front-end et la conception de composants interactifs et de chat sur le front-end. Pour la réalisation de la fonction de chat de la salle de chat elle-même, car l'accès au SDK Yunxin IM se fait principalement via le package d'appel Api, je n'entrerai pas dans les détails.
Avant de concevoir le système, vous devez d'abord considérer les questions suivantes:
• Définition des exigences et division des fonctions de chaque extrémité, comment chaque extrémité interagit
• Accord entre chaque extrémité
• Le client demande au microphone et à l'enseignant de recevoir
• Synchronisation des informations interactives après que le client entre dans la salle de diffusion interactive en direct
Avec les questions ci-dessus, trions d'abord les services sur lesquels nous pouvons compter. Les services suivants fournis par NetEase Cloud sont illustrés dans la figure ci-dessous. Combiné à la conception de nos propres exigences système, nous pouvons intégrer rapidement les fonctions de messagerie instantanée et de diffusion en direct interactive.
• Le service Yunxin IM fournit un ensemble complet de fonctionnalités de base de messagerie instantanée, qui peuvent intégrer rapidement la messagerie instantanée et les capacités de réseau en temps réel dans les propres applications de l'entreprise.
• La fonction de diffusion en direct interactive de Yunxin prend en charge l'interaction en temps réel entre l'hôte et le public.
Framework
Nos besoins de base sont principalement les trois parties suivantes:
1. Les étudiants entrent dans la salle de discussion sur le client de l'application et peuvent lancer une demande de blé;
2. Du côté de l'enseignant, vous pouvez approuver ou rejeter la demande de l'élève;
3. Une fois que l'enseignant a accepté la demande d'un élève, l'élève peut entrer dans la salle de diffusion en direct pour interagir.
Combinez les exigences et triez la demande de microphone de base, le microphone de connexion et les processus interactifs suivants, comme indiqué dans la figure ci-dessous. Différents styles de flux de données représentent différents accords.
Voici quelques concepts supplémentaires:
1. Le SDK du client Yunxin IM, le client envoie des messages P2P au professeur via Yunxin IM
2. Client SDK de diffusion en direct interactif, le client se connecte à la diffusion en direct interactive
3. Yunxin SDK côté enseignant, acceptez les messages p2p
4. SDK de diffusion en direct interactif de fin de professeur, interagissez avec la diffusion en direct côté client
5. Le SDK de Yunxin IM sur le Web, l'envoi et la réception de messages
6. Personnalisez le message et la structure de données du message envoyé par chaque extrémité
Conception et réalisation
Implémentation Cette section présente principalement l'implémentation du client enseignant et du client étudiant Web / Wap mentionnés dans l'aperçu de la section précédente. Il comprend principalement les parties suivantes: raffinement du processus, module de messagerie instantanée de l'enseignant, module de terminal Web étudiant, configuration, avantages et problèmes existants.
Perfectionnement du processus
Tout d'abord, introduisons la mise en œuvre de la fin de l'enseignant, et apportons des explications supplémentaires à certains des détails dans l'ordre des nombres dans la figure ci-dessous. Le côté enseignant comporte deux parties principales, l'une est native, qui est appelée native de l'enseignant dans cet article, et l'autre est une page Web, qui s'appelle la messagerie instantanée de l'enseignant dans cet article. L'enseignant natif et l'enseignant IM communiquent via jsbridge et des messages personnalisés.
Tout d'abord, triez la communication jsbridge entre l'enseignant natif et l'enseignant IM comme suit:
-notifyQueueChange
-notifierVolume
-notifyCustomMsg
-checkMise à jour
-notifierLiveStatus
Combinez l'organigramme ci-dessus, puis faites une description détaillée du processus:
1. Initialisation du client
Chaque extrémité obtient une adresse de salle de discussion unifiée en demandant au serveur
2. Initialisation de l'enseignant
Une fois la messagerie instantanée de l'enseignant initialisée, il obtient l'adresse de la salle de discussion via la requête du serveur (getPresenterLiveInfo), obtient le singleton de la salle de discussion, informe l'enseignant que la salle de discussion native est prête et obtient les données de diffusion en direct interactives.
3. Le processus d'invitation du blé
• Le client envoie un message p2p au professeur natif. Le professeur natif utilise jsbridge pour appeler le notifyCustomMsg de la messagerie instantanée de l'enseignant, et la messagerie instantanée de l'enseignant met à jour la file d'attente pour la demande Mai qu'il gère.
• La messagerie instantanée de l'enseignant clique pour accepter ou rejeter, et le natif de l'enseignant est averti via un message, et le natif de l'enseignant informe le client de la demande via P2P.
• Le client utilise le SDK de diffusion en direct interactif, connecte le microphone à la salle en direct et envoie un message au professeur natif via le SDK de diffusion en direct interactif.
• Le professeur natif appelle la méthode notifyQueueChange pour mettre à jour les listes dans la messagerie instantanée de l'enseignant
• La messagerie instantanée de l'enseignant, demande de manière asynchrone (informServer) de mettre à jour les files d'attente de chargement et de téléchargement du serveur, envoie des messages personnalisés (im-sdk) et diffuse pour avertir chaque client.
Module de messagerie instantanée de l'enseignant
En combinant l'organigramme et la description détaillée du processus ci-dessus, les modules frontaux sont conçus et séparés, comme illustré dans la figure suivante.
Ici, LivePcChat est un composant de chat dans Tab, LiveInteractivePresenter est un composant qui traite des opérations interactives et XXcache est un composant qui encapsule les opérations de couche de données correspondantes. L'instance de composant spécifique, l'appel, la demande de données et le processus de traitement sont indiqués dans le diagramme de séquence ci-dessous:
Module étudiant Web
Pour le terminal étudiant Web / Wap, car le terminal étudiant Web / Wap lui-même n'a pas encore développé la fonction de jeune fille. Ici, prenez le terminal étudiant Web comme exemple pour introduire la réalisation du terminal étudiant Web / Wap dans la liste interactive et l'interaction de chat. La salle de discussion fait partie d'elle-même et la salle de discussion sur l'enseignant finit par réutiliser les composants de discussion, les modules sont donc également divisés ici en premier. Vous pouvez vous référer à la division des composants du côté enseignant pour comparer certains des composants réutilisés du côté enseignant et du côté étudiant. La figure suivante montre la division du côté étudiant Web.
Il ressort de la comparaison dans le tableau ci-dessous qu'en plus de la logique de traitement liée à Yingmai, d'autres fonctions du MI côté enseignant et côté étudiant Web peuvent être réutilisées.
configuration
La diffusion en direct interactive est une itération basée sur la diffusion en direct d'origine, nous devons donc ici garantir la configurabilité de la diffusion en direct interactive dans diverses gammes de produits éducatifs. La configuration mentionnée ici est similaire à la configuration d'autres modules et à l'accès aux composants dans le pool de composants publics d'éducation. Il s'appuie également sur le cache-base du composant général de l'éducation, qui est lu dans la configuration lorsque la page en direct ou la page unique du projet est chargée (contexte institutionnel) Configuration, configuration à une clé.
Analyse des avantages et des inconvénients
Les avantages de l'utilisation de cette conception sont
1. Toutes les demandes de serveur sont envoyées via la page Web, ce qui réduit le coût de maintenance de l'enseignant;
2. La configurabilité du module. Dans différents secteurs d'activité, il peut être configuré pour décider de se connecter à la diffusion interactive en direct;
3. Les composants sont granulaires. Dans différents modules, le côté enseignant peut accéder au composant de chat et le composant interactif, le composant microphone, et le côté étudiant peut uniquement accéder au composant de liste interactive;
4. Il repose dans une large mesure sur les fonctions implémentées par le sdk Yunxin existant, qui peut répondre aux exigences dans un temps relativement court.
Le problème
1. Le processus de Yingmai est plus compliqué, car il implique plusieurs extrémités, et le débogage à chaque extrémité est une perte de temps. C'est également le but de l'organisation de cet article. Après avoir compris le processus de chaque extrémité, chaque extrémité peut d'abord localiser la fin du problème pendant le débogage, puis le problème peut être trouvé dans un certain lien de manière ciblée.
2. Parce qu'il est effectué sur la base de l'itération originale, de nombreux composants ne sont pas encapsulés dans des composants standards éducatifs, mais sous le principe d'une logique claire, ils peuvent être optimisés dans les itérations suivantes.
3. Optimiser la méthode d'implémentation frontale.
résumer
À travers cet article, nous allons trier la logique de chaque extrémité de la diffusion interactive en direct pour faciliter l'accès ultérieur à la compréhension du processus de diffusion interactive en direct. Pour le client et l'enseignant, vous pouvez comprendre l'implémentation des interfaces et des messages fournis par le frontal. S'il est nécessaire d'accéder au module de diffusion en direct interactif dans un autre projet ultérieur, il peut être rapidement consulté et débogué, et en même temps, il peut encore optimiser les problèmes existants soulevés ci-dessus.
|
Entrez l'email pour avoir une surprise
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albanais
ar.fmuser.org -> arabe
hy.fmuser.org -> Armenian
az.fmuser.org -> azerbaïdjanais
eu.fmuser.org -> basque
be.fmuser.org -> biélorusse
bg.fmuser.org -> Bulgare
ca.fmuser.org -> catalan
zh-CN.fmuser.org -> chinois (simplifié)
zh-TW.fmuser.org -> Chinois (traditionnel)
hr.fmuser.org -> croate
cs.fmuser.org -> tchèque
da.fmuser.org -> danois
nl.fmuser.org -> Néerlandais
et.fmuser.org -> estonien
tl.fmuser.org -> Philippin
fi.fmuser.org -> finnois
fr.fmuser.org -> Français
gl.fmuser.org -> Galicien
ka.fmuser.org -> géorgien
de.fmuser.org -> allemand
el.fmuser.org -> Grec
ht.fmuser.org -> Créole haïtien
iw.fmuser.org -> hébreu
hi.fmuser.org -> Hindi
hu.fmuser.org -> Hongrois
is.fmuser.org -> islandais
id.fmuser.org -> indonésien
ga.fmuser.org -> irlandais
it.fmuser.org -> Italien
ja.fmuser.org -> japonais
ko.fmuser.org -> coréen
lv.fmuser.org -> letton
lt.fmuser.org -> Lituanien
mk.fmuser.org -> macédonien
ms.fmuser.org -> malais
mt.fmuser.org -> maltais
no.fmuser.org -> Norwegian
fa.fmuser.org -> persan
pl.fmuser.org -> polonais
pt.fmuser.org -> portugais
ro.fmuser.org -> Roumain
ru.fmuser.org -> russe
sr.fmuser.org -> serbe
sk.fmuser.org -> slovaque
sl.fmuser.org -> Slovène
es.fmuser.org -> espagnol
sw.fmuser.org -> Swahili
sv.fmuser.org -> suédois
th.fmuser.org -> Thai
tr.fmuser.org -> turc
uk.fmuser.org -> ukrainien
ur.fmuser.org -> ourdou
vi.fmuser.org -> Vietnamienne
cy.fmuser.org -> Gallois
yi.fmuser.org -> Yiddish
FMUSER Wirless transmet la vidéo et l'audio plus facilement!
Contactez-nous
Adresse :
No.305 Chambre HuiLan Building No.273 Huanpu Road Guangzhou Chine 510620
Catégories
Newsletter