FMUSER Бесправадная перадача відэа і аўдыё лягчэй!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> афрыкаанс
sq.fmuser.org -> албанская
ar.fmuser.org -> арабская
hy.fmuser.org -> Армянскі
az.fmuser.org -> азербайджанскі
eu.fmuser.org -> баскская
be.fmuser.org -> Беларуская
bg.fmuser.org -> Балгарская
ca.fmuser.org -> каталонская
zh-CN.fmuser.org -> кітайскі (спрошчаны)
zh-TW.fmuser.org -> Кітайскі (традыцыйны)
hr.fmuser.org -> харвацкая
cs.fmuser.org -> чэшская
da.fmuser.org -> дацкая
nl.fmuser.org -> Галандская
et.fmuser.org -> эстонская
tl.fmuser.org -> філіпінская
fi.fmuser.org -> фінская
fr.fmuser.org -> Французская
gl.fmuser.org -> галісійская
ka.fmuser.org -> грузінскі
de.fmuser.org -> нямецкая
el.fmuser.org -> Грэчаскі
ht.fmuser.org -> Гаіцянскі крэол
iw.fmuser.org -> іўрыт
hi.fmuser.org -> хіндзі
hu.fmuser.org -> Венгерская
is.fmuser.org -> ісландская
id.fmuser.org -> інданезійская
ga.fmuser.org -> ірландскі
it.fmuser.org -> Італьянская
ja.fmuser.org -> японскі
ko.fmuser.org -> карэйская
lv.fmuser.org -> латышскі
lt.fmuser.org -> Літоўскі
mk.fmuser.org -> македонская
ms.fmuser.org -> малайская
mt.fmuser.org -> мальтыйская
no.fmuser.org -> Нарвежскі
fa.fmuser.org -> персідская
pl.fmuser.org -> польская
pt.fmuser.org -> партугальская
ro.fmuser.org -> Румынская
ru.fmuser.org -> руская
sr.fmuser.org -> сербская
sk.fmuser.org -> славацкая
sl.fmuser.org -> Славенская
es.fmuser.org -> іспанская
sw.fmuser.org -> суахілі
sv.fmuser.org -> шведская
th.fmuser.org -> Тайская
tr.fmuser.org -> турэцкая
uk.fmuser.org -> украінскі
ur.fmuser.org -> урду
vi.fmuser.org -> В'етнамская
cy.fmuser.org -> валійская
yi.fmuser.org -> Ідыш
У інтэрактыўнай жывой трансляцыі ўдзельнічаюць сервер, кліент выкладчыка, студэнцкі кліент iOS / Android і студэнцкі кліент Web / Wap. Гэты артыкул прысвечаны працэсу ўзаемадзеяння Maimai, дызайну модуля Maimai на інтэрфейсе і дызайну інтэрактыўных і чатавых кампанентаў на інтэрфейсе. Для рэалізацыі функцыі чата ў самой пакоі для чата, паколькі доступ да пакета IM SDK Yunxin у асноўным рэалізуецца праз пакет выклікаў Api, я не буду ўдавацца ў падрабязнасці.
Перш чым распрацоўваць сістэму, спачатку трэба разгледзець наступныя пытанні:
• Вызначэнне патрабаванняў і размеркаванне функцый кожнага канца, узаемадзеяння кожнага канца
• Пагадненне паміж кожным канцом
• Кліент просіць мікрафон і настаўніка атрымаць
• Сінхранізацыя інтэрактыўнай інфармацыі пасля ўваходу кліента ў інтэрактыўную жывую трансляцыю
З прыведзенымі вышэй пытаннямі давайце спачатку разбярэм паслугі, на якія можна разлічваць. Наступныя паслугі, якія прадастаўляе NetEase Cloud, паказаны на малюнку ніжэй. У спалучэнні з дызайнам уласных сістэмных патрабаванняў мы можам хутка інтэграваць функцыі IM і інтэрактыўную жывую трансляцыю.
• Паслуга абмену імгненнымі паведамленнямі Yunxin прадастаўляе поўны набор асноўных магчымасцей імгненнага абмену паведамленнямі, якія могуць хутка інтэграваць магчымасці абмену імгненнымі паведамленнямі і сеткі ў рэжыме рэальнага часу ва ўласныя дадаткі прадпрыемства.
• Інтэрактыўная функцыя жывой трансляцыі Yunxin падтрымлівае ўзаемадзеянне ў рэжыме рэальнага часу паміж гаспадаром і аўдыторыяй.
Рамкі
Нашы асноўныя патрэбы складаюцца ў асноўным з наступных трох частак:
1. Студэнты ўваходзяць у чат на кліенце праграмы і могуць ініцыяваць запыт на пшаніцу;
2. З боку настаўніка вы можаце ўхваліць альбо адхіліць просьбу вучня;
3. Пасля таго, як настаўнік пагодзіцца з просьбай студэнта, ён можа ўвайсці ў пакой для жывой трансляцыі для ўзаемадзеяння.
Аб'яднайце патрабаванні і адсартуйце наступны асноўны запыт на мікрафон, падключэнне мікрафона і інтэрактыўныя працэсы, як паказана на малюнку ніжэй. Розныя стылі патоку дадзеных прадстаўляюць розныя дамоўленасці.
Вось некалькі дадатковых паняццяў:
1. SDK кліента Yunxin IM, кліент адпраўляе паведамленні P2P выкладчыку праз Yunxin IM
2. Кліенцкі інтэрактыўны жывы эфір SDK, кліент падключаецца да інтэрактыўнага жывога эфіру
3. Yunxin SDK для настаўніка, прымайце паведамленні p2p
4. SDK для інтэрактыўнага жывога эфіру для настаўнікаў, узаемадзеянне з жывым эфірам на баку кліента
5. SDK Yunxin IM у Інтэрнэце, адпраўка і прыём паведамленняў
6. Наладзьце паведамленне і структуру дадзеных паведамлення, адпраўленага кожным канцом
Распрацоўка і рэалізацыя
Рэалізацыя У гэтым раздзеле ў асноўным прадстаўлена рэалізацыя кліента для выкладчыка і кліента для студэнтаў Web / Wap, згаданых у аглядзе папярэдняга раздзела. У асноўным гэта ўключае наступныя часткі: удасканаленне працэсу, модуль ІМ для выкладчыкаў, модуль тэрмінала вэб-студэнта, канфігурацыя, перавагі і існуючыя праблемы.
Дапрацоўка працэсу
Па-першае, давайце прадставім рэалізацыю канца настаўніка і зробім дадатковыя тлумачэнні некаторых дэталяў у парадку лічбаў на малюнку ніжэй. Настаўніцкая частка мае дзве асноўныя часткі: адна - родная, якая ў гэтым артыкуле называецца роднай для настаўніка, а другая - гэта вэб-старонка, якая ў гэтым артыкуле называецца IM-настаўнікам. Уладальнік выкладчыка і выкладчык маюць зносіны праз JSbridge і ўласныя паведамленні.
Перш за ўсё, разбярыцеся па JSbridge-камунікацыі паміж родным выкладчыкам і выкладчыкам ІМ наступным чынам:
-notifyQueueChange
-otifyVolume
-notifyCustomMsg
-праверыць Абнаўленне
-notifyLiveStatus
Аб'яднайце вышэйпрыведзеную блок-схему, а затым зрабіце падрабязнае апісанне працэсу:
1. Ініцыялізацыя кліента
Кожны канец атрымлівае адзіны адрас чата, запытваючы сервер
2. Ініцыялізацыя настаўніка
Пасля ініцыялізацыі ІМ выкладчыка ён атрымлівае адрас чата праз запыт сервера (getPresenterLiveInfo), атрымлівае сінглтон чата, інфармуе настаўніка пра гатоўнасць уласнага чаты і атрымлівае дадзеныя інтэрактыўнага жывога эфіру.
3. Працэс запрашэння пшаніцы
• Кліент адпраўляе паведамленне p2p родным выкладчыкам. Выкладчык выкарыстоўвае jsbridge для выкліку notifyCustomMsg выкладчыка IM, а выкладчык IM абнаўляе чаргу чакання для запыту Mai, які ён падтрымлівае.
• Імгненны імгненны выкладчык націскае, каб пагадзіцца альбо адхіліць, і роднае выкладчыка паведамляецца паведамленнем, а роднае выкладчыка інфармуе кліента аб запыце праз P2P.
• Кліент выкарыстоўвае інтэрактыўны SDK для жывой трансляцыі, падключае мікрафон да жывой пакоя і адпраўляе паведамленне настаўніку праз SDK для інтэрактыўнай жывой трансляцыі.
• Уладальнік выкладчыка выклікае метад notifyQueueChange, каб абнавіць спісы ў IM выкладчыка
• Час выкладчыка, асінхронна запытвае (informServer) абнавіць чэргі загрузкі і загрузкі сервера, адпраўляе ўласныя паведамленні (im-sdk) і вяшчае, каб апавясціць кожнага кліента.
Модуль выкладчыка
Спалучаючы блок-схему і падрабязнае апісанне вышэйапісанага працэсу, інтэрфейсныя модулі распрацаваны і падзелены, як паказана на наступным малюнку.
Тут LivePcChat - гэта кампанент чата ў Tab, LiveInteractivePresenter - гэта кампанент, які апрацоўвае інтэрактыўныя аперацыі, а XXcache - кампанент, які інкапсулюе адпаведныя аперацыі на ўзроўні дадзеных. Канкрэтны асобнік кампанента, выклік, запыт дадзеных і працэс апрацоўкі паказаны на дыяграме паслядоўнасці ніжэй:
Вэб-студэнцкі модуль
Для студэнцкага тэрмінала Web / Wap, таму што сам студэнцкі тэрмінал Web / Wap яшчэ не распрацаваў функцыю дзявочай. Тут возьмем у якасці прыкладу вэб-студэнцкі тэрмінал, каб прадставіць рэалізацыю студэнцкага тэрмінала Web / Wap у інтэрактыўным спісе і ў чаце. Частка пакоя чата і чата настаўніка зноў выкарыстоўваюць кампаненты чата, таму модулі тут таксама падзелены спачатку. Вы можаце звярнуцца да падзелу кампанентаў на настаўніка, каб параўнаць некаторыя кампаненты, якія паўторна выкарыстоўваюцца настаўнікам і студэнтам. На наступным малюнку паказаны падзел студэнцкай сеткі.
З параўнання ў прыведзенай ніжэй табліцы відаць, што, акрамя логікі апрацоўкі, звязанай з Інгмай, іншыя функцыі ІМ з боку настаўніка і студэнта ў Інтэрнэце могуць быць выкарыстаны паўторна.
канфігурацыя
Інтэрактыўная жывая трансляцыя - гэта ітэрацыя, заснаваная на арыгінальнай жывой трансляцыі, таму тут мы павінны забяспечыць наладжванне інтэрактыўнай жывой трансляцыі ў розных лініях адукацыйных прадуктаў. Згаданая тут канфігурацыя падобная на канфігурацыю іншых модуляў і доступу да кампанентаў у пуле агульнадаступных кампанентаў адукацыі. Ён таксама абапіраецца на асноўную кэш-базу адукацыйных кампанентаў, якая счытваецца ў канфігуры пры загрузцы адной старонкі ў рэальным часе альбо на праекце (адзіная старонка).
Плюсы і мінусы аналіз
Перавагі выкарыстання гэтай канструкцыі ёсць
1. Усе запыты сервера адпраўляюцца праз вэб-старонку, памяншаючы выдаткі на ўтрыманне настаўніка;
2. Наладжвальнасць модуля. У розных бізнес-напрамках яго можна наладзіць на рашэнне аб падключэнні да інтэрактыўнай жывой трансляцыі;
3. Кампаненты грануляваныя. У розных модулях бок настаўніка можа атрымаць доступ да кампанента чата і інтэрактыўнага кампанента, кампанента мікрафона, а студэнцкі - толькі да кампанента інтэрактыўнага спісу;
4. У найбольшай ступені ён абапіраецца на функцыі, якія рэалізуюцца існуючай SDK Yunxin, якія могуць задаволіць патрабаванні за адносна кароткі час.
Праблема
1. Працэс Yingmai больш складаны, таму што ён уключае некалькі канцоў, а адладка на кожным канцы - гэта пустая трата часу. Гэта таксама мэта арганізацыі гэтага артыкула. Пасля разумення працэсу кожнага з канцоў кожны з канцоў можа спачатку знайсці канец праблемы падчас адладкі, а потым праблему можна знайсці па пэўнай спасылцы мэтавым спосабам.
2. Паколькі ён праводзіцца на аснове першапачатковай ітэрацыі, многія кампаненты не ўключаны ў стандартныя адукацыйныя кампаненты, але ў адпаведнасці з дакладнай логікай яны могуць быць аптымізаваны ў наступных ітэрацыях.
3. Аптымізацыя метаду інтэрфейснай рэалізацыі.
падвесці вынік
У гэтым артыкуле мы разбярэм логіку кожнага канца інтэрактыўнай жывой трансляцыі, каб палегчыць пазнейшы доступ да разумення працэсу інтэрактыўнай жывой трансляцыі. Для кліента і выкладчыка вы можаце зразумець рэалізацыю інтэрфейсаў і паведамленняў, якія прадастаўляюцца ў інтэрфейсе. Калі неабходна атрымаць доступ да інтэрактыўнага модуля жывой трансляцыі ў іншым наступным праекце, да яго можна хутка атрымаць доступ і адладзіць яго, і ў той жа час ён можа дадаткова аптымізаваць існуючыя праблемы, узнятыя вышэй.
|
Увядзіце адрас электроннай пошты, каб атрымаць сюрпрыз
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> афрыкаанс
sq.fmuser.org -> албанская
ar.fmuser.org -> арабская
hy.fmuser.org -> Армянскі
az.fmuser.org -> азербайджанскі
eu.fmuser.org -> баскская
be.fmuser.org -> Беларуская
bg.fmuser.org -> Балгарская
ca.fmuser.org -> каталонская
zh-CN.fmuser.org -> кітайскі (спрошчаны)
zh-TW.fmuser.org -> Кітайскі (традыцыйны)
hr.fmuser.org -> харвацкая
cs.fmuser.org -> чэшская
da.fmuser.org -> дацкая
nl.fmuser.org -> Галандская
et.fmuser.org -> эстонская
tl.fmuser.org -> філіпінская
fi.fmuser.org -> фінская
fr.fmuser.org -> Французская
gl.fmuser.org -> галісійская
ka.fmuser.org -> грузінскі
de.fmuser.org -> нямецкая
el.fmuser.org -> Грэчаскі
ht.fmuser.org -> Гаіцянскі крэол
iw.fmuser.org -> іўрыт
hi.fmuser.org -> хіндзі
hu.fmuser.org -> Венгерская
is.fmuser.org -> ісландская
id.fmuser.org -> інданезійская
ga.fmuser.org -> ірландскі
it.fmuser.org -> Італьянская
ja.fmuser.org -> японскі
ko.fmuser.org -> карэйская
lv.fmuser.org -> латышскі
lt.fmuser.org -> Літоўскі
mk.fmuser.org -> македонская
ms.fmuser.org -> малайская
mt.fmuser.org -> мальтыйская
no.fmuser.org -> Нарвежскі
fa.fmuser.org -> персідская
pl.fmuser.org -> польская
pt.fmuser.org -> партугальская
ro.fmuser.org -> Румынская
ru.fmuser.org -> руская
sr.fmuser.org -> сербская
sk.fmuser.org -> славацкая
sl.fmuser.org -> Славенская
es.fmuser.org -> іспанская
sw.fmuser.org -> суахілі
sv.fmuser.org -> шведская
th.fmuser.org -> Тайская
tr.fmuser.org -> турэцкая
uk.fmuser.org -> украінскі
ur.fmuser.org -> урду
vi.fmuser.org -> В'етнамская
cy.fmuser.org -> валійская
yi.fmuser.org -> Ідыш
FMUSER Бесправадная перадача відэа і аўдыё лягчэй!
Кантакт
Адрас:
No.305 Нумар HuiLan Будынак No.273 Huanpu Road Гуанчжоу Кітай 510620
катэгорыі
бюлетэнь