From 5550ab1b2d7badc586a28365bd83cf507027b20c Mon Sep 17 00:00:00 2001 From: Saud <65331551+saudsami@users.noreply.github.com> Date: Thu, 25 Apr 2024 13:02:19 +0500 Subject: [PATCH] Endoc 212 rtt updates (#1073) * Releasing - POC3 (#1509) (#1510) * Last change. * Latest changes. * Update on review. * call quality guide. * Update prerequisites * Filter out the docs without an example. * Updates on review. * Update API ref. * Update API ref. * Update docs to match the examples supplied so far. * Add the custom audio, but not published as PR is not accepted yet. * Last update. * POC3 iOS get-stared changes. * POC3 iOS call-quality changes. * Updated doc structure * Update * Updates * call quality updates * Updates * POC3 iOS authentication changes. * POC3 macOS get-started, call-quality, authentication changes. * Start merging all the PRs for POC3 * Start merging all the PRs for POC3 * Merge the other projects. * Updates * Merge the other projects. * iOS macOS updates to match the latest code. * Updates * Update to GetStarted. * Authentification workflow. * Call quality updates. * call quality doc updates * Review updates * Update * doc structure * Updates * reversed changes committed to the wrong branch * unity poc3 * update get started for vsdk poc3 web * update vsdk secure auth docs * get started * Authentication guide. * update call quality doc * Call quality * Windows POC3 Code Doc * Updated for call quality * Get started. * Call quality. * Call quality. * implement Secure Authentication Server POC3 To DOC * cloud proxy + additional updates * media encryption unity * android media player updates (#411) * Update shared/video-sdk/get-started/get-started-sdk/project-implementation/unity.mdx * Update shared/video-sdk/get-started/get-started-sdk/project-implementation/unity.mdx * cloud-proxy updates * Review updates * review updates * Updates * review update * update cloud proxy doc * media-player * audioAndVoiceEffects * Update project-implement/unity.mdx * product-workflow * updated logic in swift join channel to show each of the three methods, all included in the sample project * removed all spaces after triple ticks, which shouldn't be there * added small description comment to callback handlers, added one for voice calling. unified ios and macos examples in get started root * removed android and flutter separated implementations. added shared files for each code snippets * removed separate ios and macos implementation, bundled them with android and flutter. * removed older swift implementations * android and flutter using poc3 mdx file for ensure-channel-quality * Geofencing unity * audio and voice effects updates * updates * Product workflow updates * updated ensure channel quality to include ios and macos. * cal quality updates * added cloud proxy and encrypt media streams poc3 templates * added geofencing poc3 example for ios and macos * added reactjs to the geofencing example, but it will currently not render in the poc3 specific document due to platform wrappers * Api ref updates + additional updates * virtual background * updates * resolved build issues * POC3 docs in new doc structure * updated ios to have testing hardware options * update platform added incorrectly fixed * updated cloud proxy for ios and macos * removed duplicated lines * update ios screensharing code to use the replaykit extension * update encrypt media, play media and custom audio video to use poc3.mdx for at least ios * updated virtual background coumentation, including test your implementation section * moved platform specific code to enable-audio-publishing code asset file * added device compatibility check for virtual background * Raw Video Audio Processing iOS POC3 new structure * Fix auto-numbering, remove empty blocks from other platforms, remove platform specific code from poc3, remove unused variables, added api ref links * added examples of modifying the pixelbuffer and audio buffer * added api references for each ios and macos code blocks in cloud-proxy, encrypt-media-streams and ensure-channel-quality * multi-channel live streaming * updates * added spatial audio for ios and macos poc3 style-y * added api reference links for custom-video-and-audio, geofencing and play-media (ios/macos) * 622 changes. * added code blocks for joining and leaving secondary channel, added code for monitoring relay state, changed delegates to not be delegate2, updated extra delegate methods, fixed api reference urls, added secondConnection and destUid to variables, added media relay code block. * updated all ios links to use engine api ref constant if required. added api ref links to product-workflow (#687) * refactor web get started * added screensharing example code in poc3 for macos * update macos screenshare api reference links to open in new tab * update web cloud proxy doc (#434) * Release notes - first draft * Link to beta docs * Added a bug fix * update get started for vsdk poc3 web * update vsdk secure auth docs * update call quality doc * Get started. * Call quality. * Call quality. * fix * revert unrelated changes * revert unrelated changes * Removed the fixed issue * Updated RN * update cloud proxy doc * refactor web get started --------- * New poc3 structure for unity (#705) * updates * new structure for unity * added screensharing example code in poc3 for macos * update macos screenshare api reference links to open in new tab * update web cloud proxy doc (#434) * Release notes - first draft * Link to beta docs * Added a bug fix * update get started for vsdk poc3 web * update vsdk secure auth docs * update call quality doc * Get started. * Call quality. * Call quality. * fix * revert unrelated changes * revert unrelated changes * Removed the fixed issue * Updated RN * update cloud proxy doc * refactor web get started --------- * updates * new structure for unity * updates * Update assets/code/video-sdk/audio-voice-effects/apply-voice-effects.mdx --------- * added display media section to play-media story * Update shared/video-sdk/develop/play-media/project-implementation/poc3.mdx * Update shared/video-sdk/develop/play-media/project-implementation/poc3.mdx * fix geofencing and spatial audio layouts * updates * align ios, macos, and unity in product-workflow doc * get started * updates * updates * updates * updates * updated terminal to sh on code block * added POST request example for all, and removed GET for iOS/macOS (#732) * added api ref links to get started guide for ios macos. added permission handler code for ios/macos (#730) * update * add auth workflow poc3 * add cloud proxy * add more apps * android updates for quickstart, authentication and call quality (#736) * get-started and authentication updates * authentication updates * Update * updates * call quality updates * Update * Poc3 android code insertion (#745) * get-started and authentication updates * authentication updates * Update * updates * call quality updates * Update * product workflow updates * cloud proxy updates * media encryption updates * updates * Geofencing updates * media player updates * multiple channels I * Multiple channels update II * Custom audio and video * Raw video and audio * Raw video and audio * Audio and voice effects * Virtual background * AI noise suppression * get-started update * Update * get-started numbering fix * geofencing + cloud proxy (#735) * geofencing + cloud proxy * review updates * code indentation --------- * update play-media to include macos (#749) * Audio and voice effects + product workflow for reactjs (#746) * audio and voice effects * product workflow * svg updates * updates * audio and voice effects * product workflow * svg updates * updates * audio voice effects update * updates --------- * updates (#741) * Update * audio-voice-effects iOS + macOS (#753) * added voice effect code blocks * added api ref links to audio-and-voice-effects code blocks * added ains code for ios and macos (#754) * multichannel streaming and custom media (#755) * multichannel streaming and custom media * removed .DS_Store files --------- * Call quality reactjs poc3 (#756) * call quality * review updates * updates * updates * fixed the index file --------- * add call quality doc * Authentication workflow + ai denoiser for reactjs (#761) * Authentication workflow * ai-denoiser * denoiser * authentication updates --------- * milestone39 review updates and improvements (#762) * updates * review updates * review updates * Added android spatial audio code * Updates * updates * spatial audio + media encryption (#763) * add product workflow doc * add spatial audio docs * add denoiser docs * add custom av docs * updates * updated macos for raw video and custom audio-video (#767) * custom-audio-video macos updates * Voice calling updates/milestone39 rewrite video sdk docs (#764) * get-started updates * get-started setup and prereqs update * voice-calling updates * Update * Call quality max suggestions (#760) * updates * updates * Update --------- * Multiple Channels Updates macOS (#768) * updated macos for raw video and custom audio-video * updated multiple channels docs for macos and ios * Project Test Sections (#759) * updated project-test section for some documents to use the reference apps, covering android/ios/macos * test section improvements * Call-quality updates * stream-media and multiple-channels updates * product-workflow updates * updates * updates * virtual background updates * Updates --------- * Update * poc3.mdx header updates (#772) * Update * update * Update * Updates after final checking (#769) * updates * updates * updates * updates --------- * Docs organization changes (#771) * Rearrange docs * Rearrange docs * Review updates/milestone39-poc3 (#779) * review-updates * update * review updates * Move api ref web (#775) * refactor get started references * refactor references for auth workflow * refactor cloud proxy references * refactor play media references * refactor encrypt references * refactor call quality refs * refactor product workflow refs * refactor custom audio video refs * refactor geofencing * virtual background in poc3 * geofencing update * review updates * updates --------- * Release notes for ReactJS (#778) * Release notes * Release notes * Multi-channel updates + Custom media source + Raw audio and video (#774) * updates * updates * updates * updates * updates * Updates * updates --------- * update * Update * Live stream over multiple channela doc (#780) * refactor get started references * refactor references for auth workflow * refactor cloud proxy references * refactor play media references * refactor encrypt references * refactor call quality refs * refactor product workflow refs * refactor custom audio video refs * refactor geofencing * virtual background in poc3 * geofencing update * add live streaming over multiple channel * review updates --------- * Encryption Handler iOS (#783) * add ios event handler to encryption, and remove duplicated code in some poc3 files * remove ds store * removed-repeated step --------- * updates for voice calling (#787) * updates for voice calling unity * added back voice-calling custom-audio doc --------- * Add error codes doc/milestone39 (#788) * Updates * Update * Updates * error-codes update * updates * fix ios declared variables and probe test in call quality doc (#794) * get-started update * non-poc3 platforms update * updates * review updates * Added web demo links (#801) * Voice changes for poc3 web (#804) * voice-sdk-web-poc3 * review updates --------- * update token example code link to latest release --------- Co-authored-by: billy-the-fish Co-authored-by: Dasun Nirmitha Co-authored-by: saudsami Co-authored-by: Saud <65331551+saudsami@users.noreply.github.com> Co-authored-by: Hussain Khalid <72780625+hussain-khalid@users.noreply.github.com> Co-authored-by: Kishan Dhakan Co-authored-by: pankajg123 Co-authored-by: Max Cobb Co-authored-by: Max Cobb <5754073+maxxfrazer@users.noreply.github.com> Co-authored-by: Kishan Dhakan <42718091+Kishan-Dhakan@users.noreply.github.com> Co-authored-by: atovpeko Co-authored-by: atovpeko <114177030+atovpeko@users.noreply.github.com> * release notes * release date * Endoc 121 and 123 (#1008) * email update * ENDOC-121 updates * update (#1009) * release note * removed mentions of cocos * release notes * release notes updated * added eu data center * remove duplication * updates * march updates * fixed Media Gateway variable * ENDOC-138 * ENDOC-136 * Fastboard API change * ENDOC-114 * storage formula updated * enable signaling + remove p2p & invites * structure fix * Updates --------- Co-authored-by: Shahriar P. Shuvo Co-authored-by: billy-the-fish Co-authored-by: Dasun Nirmitha Co-authored-by: Hussain Khalid <72780625+hussain-khalid@users.noreply.github.com> Co-authored-by: Kishan Dhakan Co-authored-by: pankajg123 Co-authored-by: Max Cobb Co-authored-by: Max Cobb <5754073+maxxfrazer@users.noreply.github.com> Co-authored-by: Kishan Dhakan <42718091+Kishan-Dhakan@users.noreply.github.com> Co-authored-by: atovpeko Co-authored-by: atovpeko <114177030+atovpeko@users.noreply.github.com> --- .../get-started-sdk/handle-events.mdx | 2 +- assets/images/chat/post_delivery_callback.png | Bin 0 -> 51564 bytes assets/images/chat/pre_delivery_callback.png | Bin 0 -> 79219 bytes .../signaling-presence-configuration.png | Bin 0 -> 91914 bytes .../signaling-storage-calculation-formula.png | Bin 0 -> 154003 bytes .../signaling-storage-configuration.png | Bin 0 -> 92824 bytes .../real-time-transcription-server.svg | 2 +- cloud-recording/reference/rest-api/acquire.md | 20 +- flexible-classroom/overview/pricing.md | 2 +- .../overview/product-features.mdx | 8 +- .../develop/migration-guide.md | 2 +- .../whiteboard-api/file-conversion.md | 10 +- media-gateway/overview/product-overview.mdx | 2 +- shared/agora-analytics/_api.mdx | 20 +- shared/agora-analytics/_pricing.mdx | 2 +- .../restful-api/_api-overview.mdx | 2 +- .../restful-api/_domain-names.mdx | 2 +- .../restful-api/_entry-points.mdx | 2 +- .../restful-api/_stream-authentication.mdx | 2 +- .../restful-api/_stream-authentication.mdx | 2 +- .../client-api/messages/_message-receipts.mdx | 6 +- .../project-implementation/web.mdx | 216 ++++++++++-------- .../message-receipts/understand/web.mdx | 25 +- shared/chat-sdk/develop/_setup-webhooks.mdx | 179 +++++++++------ .../overview/_product-overview.mdx | 2 +- shared/common/_channel-management-api.mdx | 1 - shared/common/project-setup/electron.mdx | 2 +- shared/interactive-whiteboard/qps-pricing.mdx | 8 +- .../uikit-sdk/android.mdx | 2 +- .../interactive-whiteboard/uikit-sdk/ios.mdx | 2 +- .../interactive-whiteboard/uikit-sdk/web.mdx | 2 +- shared/iot/develop/_licensing.mdx | 4 +- .../media-gateway/get-started/_quickstart.mdx | 24 +- .../reference/_best-practice.mdx | 8 +- .../reference/_release-notes.mdx | 2 +- shared/media-pull/reference/_restful-api.mdx | 2 +- shared/signaling/beginners-guide/index.mdx | 45 +++- shared/signaling/limitations/android.mdx | 45 ---- .../signaling/limitations/cpp-x-platform.mdx | 43 ---- shared/signaling/limitations/cpp.mdx | 7 - shared/signaling/limitations/index.mdx | 43 ++-- shared/signaling/limitations/ios.mdx | 8 - shared/signaling/limitations/java.mdx | 45 ---- shared/signaling/limitations/linux.mdx | 7 - shared/signaling/limitations/macos.mdx | 8 - shared/signaling/limitations/oc.mdx | 42 ---- shared/signaling/limitations/unity.mdx | 46 ---- shared/signaling/limitations/web.mdx | 4 - shared/signaling/limitations/windows.mdx | 7 - shared/signaling/prerequisites.mdx | 21 +- shared/signaling/reference/_pricing.mdx | 29 +-- shared/signaling/release-notes/web.mdx | 19 ++ shared/variables/global.js | 4 +- shared/video-sdk/_billing.mdx | 2 +- .../reference/index.mdx | 4 +- .../project-implementation/unreal.mdx | 2 +- .../project-implementation/poc3.mdx | 2 - .../get-started-sdk/project-test/poc3.mdx | 1 - .../project-implementation/android.mdx | 13 -- .../reference/known-issues/flutter.mdx | 4 +- .../reference/release-notes/android.mdx | 18 +- .../reference/release-notes/electron.mdx | 17 +- .../reference/release-notes/flutter.mdx | 16 +- .../video-sdk/reference/release-notes/ios.mdx | 13 +- .../reference/release-notes/macos.mdx | 11 +- .../reference/release-notes/react-native.mdx | 10 + .../reference/release-notes/unity.mdx | 35 ++- .../video-sdk/reference/release-notes/web.mdx | 8 + .../reference/release-notes/windows.mdx | 11 +- .../reference/known-issues/flutter.mdx | 2 +- .../reference/release-notes/android.mdx | 21 +- .../reference/release-notes/electron.mdx | 13 +- .../reference/release-notes/flutter.mdx | 14 +- .../voice-sdk/reference/release-notes/ios.mdx | 21 +- .../reference/release-notes/macos.mdx | 20 +- .../reference/release-notes/react-native.mdx | 29 ++- .../reference/release-notes/unity.mdx | 27 ++- .../reference/release-notes/windows.mdx | 15 +- signaling/reference/limitations.mdx | 13 +- 79 files changed, 671 insertions(+), 659 deletions(-) create mode 100644 assets/images/chat/post_delivery_callback.png create mode 100644 assets/images/chat/pre_delivery_callback.png create mode 100644 assets/images/signaling/signaling-presence-configuration.png create mode 100644 assets/images/signaling/signaling-storage-calculation-formula.png create mode 100644 assets/images/signaling/signaling-storage-configuration.png delete mode 100644 shared/signaling/limitations/android.mdx delete mode 100644 shared/signaling/limitations/cpp-x-platform.mdx delete mode 100644 shared/signaling/limitations/cpp.mdx delete mode 100644 shared/signaling/limitations/ios.mdx delete mode 100644 shared/signaling/limitations/java.mdx delete mode 100644 shared/signaling/limitations/linux.mdx delete mode 100644 shared/signaling/limitations/macos.mdx delete mode 100644 shared/signaling/limitations/oc.mdx delete mode 100644 shared/signaling/limitations/unity.mdx delete mode 100644 shared/signaling/limitations/web.mdx delete mode 100644 shared/signaling/limitations/windows.mdx diff --git a/assets/code/video-sdk/get-started-sdk/handle-events.mdx b/assets/code/video-sdk/get-started-sdk/handle-events.mdx index fd439a2cc..c7982de85 100644 --- a/assets/code/video-sdk/get-started-sdk/handle-events.mdx +++ b/assets/code/video-sdk/get-started-sdk/handle-events.mdx @@ -404,4 +404,4 @@ func rtcEngine(_ engine: AgoraRtcEngineKit, didOfflineOfUid uid: UInt, reason: A - onUserOffline - onLeaveChannel - \ No newline at end of file + diff --git a/assets/images/chat/post_delivery_callback.png b/assets/images/chat/post_delivery_callback.png new file mode 100644 index 0000000000000000000000000000000000000000..3cc88b0ed812c92589c317d32e281701394b0c1f GIT binary patch literal 51564 zcmbq*Wl&qu+I5Xmpjd(8nj*p7-CcsayA>#|h2k3A-Q8V^TXAsf2<2FuHeA;ROpzk2lwQ9@i8^6J$)#aFLhzxwbV_>K2_4qM>cYX^v! z;H&acyg$H$ccua|0;roD8It6r*|9+i?g@8k{DgN*4mcRFZpN{p&H2A;gfFC4z zn(=j|6c#>`~TirHo(GFNkKVP8BK4siprz5ZCnw`%AL`TDlZ-&e``y7JZRvAcTcNwrrEYd!n|6GK z`oOY_h?-~i((vlG0Vg}@hyL$|qi%`)YqbB}6)<&fSfcM*xEZ6B2!DPlA_6A+&h-VG zy|5xEkOdCs*;`B(G(72hj&+jZbRL$vO397vWFZBj*~Q{QroO^^l(eoM^P4#`Hu@94 z-i)F`K#=I^J}*HN#+X)@=*TG`F(AFPfu8IS6TW!yTce~$t zL*Lq)^fb$w*=!|%`?!!gU1zP42Xg$Jc#-BVnN_&IOIKL0$*sD&_q!ihu#XtQkqX7b z=GwO$p6jtRVnJjEnuJZjQl0i2wLF!85(2&DD(>z9CIK zlCahBcB%JD2ix3er5@N!MU9aaS9g{c>_62%=bgHj!(TUbcwf0zng-xdnY}jn{6;#w zd|@|Bd*yRLgr8~Y!S~mqwEKEn4_AF5%muEye`iqp(z)gnY0rA}K(^tmt9DG$@u-!< zl>e6^k^*0f4B#h_Pa+r~?QziRXDp6N1^S^4^v}&ii_Ijv!LzjS=VSHcOQBZo5&gu4c}7(21%2z4vjWJIi+;(qDSp_CcdWL+A%(nh-IU$f&62*yv7jR(i1gDRj z^UtHKjGjD~tb$Aw{%?8`pj2Vgg!)@yv!Y05Mq8!zqRGGD^JV^94u%}C zFjf6`;X!0LRK;0qOjn0kXiPG!Snr?qD5$X@AEgMvk2>9a9M|p^QLPRAmrx9TcWSuU z?DH*|Fe)P-%hfgvx*LF_`Qb5Nr<3GQf+MrNU0_=HpSrfSq!R&Kuk0^;IHrg91vw4v z*sLRJYXblFY%9Dm6pT)iM*!bz3}zkt)&$D@9)` z{qlhB>eYKXwrUp#eynY|f2EQ%x-kSSJnEE)8P%QqE^yeImy4acJo`p}I`gGI9BYI6 znVHTGrvFwB0dFih@iXuHs1{+Aii01a!Kfvs2Oa$;VV4-Q!k5`Tr+I>8yH{xpZk@my(M?=-t~EbZI?B-=nQg6mhaIN)W!gnuFWnx6FE7juP=Ufd zt}~#r=i$<7_|()X@z{9yQ3}5&+vZ?BBh30vmbi0ttF5H?`%0N7Eh3;5WZ15*KcHN# zm*=m8rnk(Fh**N^l@6@7rcOlzs6mb#wLfB4)ytL0)w44*1Z`{J6wT168GW8G9_?Ef=gwX1X%2csvh^1p zpkEvdLwt>^EQMHsqwQ-xBwT*86hzz@YiYbyB_Mi7$FN#0de8In&X6BLO^JehzH}@< zrXcLH|6;*^BZ%u4^1zX27~Y)KE(Q9em3RyB%DU)U}7F97xO+pR~+9>kuw1 zlV5DntU^fvJ&#{7_x+||hWwYIDxEbVNKmE;94Zka84h+mHxcfnqFh)e571AI)*+yb za5hL@4OA#wxFmI%Tdl!(yn3C2AE)SF@Apqg3;~A`+}vO2^#^6yurP`&pmC0}*(=(D z6leEUd4ag{70rhm$Ytr&_#*sGSTq}NiW%!j;Pg~^=?&|rFEbgJwUMZM@m6pHbc((r zwjdaitMl9)QC>VtqdQIzSL-bhn&={6j~*pyV#;lUkO3A})-Njfdd6~kja#7B(JP_1 z;iYTkm@z3WZ?_0k%=cHn+1tT_Mp}RKhs0b3zm%Q4uc%B6{<4BGNuo&Rc%?u14BM`7VtEW#`+R5~ z#Axq=Fx+^6Dw)f90n=9sKg$!0x0-plg@u!waXpDSZ+R*_^fj7HR$wvsL$hY@~ZDT!0n!3;8EXjomYPxCQ#irY1%w?JNt{9F&N1A45Dedj9Ea4SKG)h{5ezWDfac^9S||3 zjzn&iyCk3)PE$E^j?!Q#W&n0lJFlMDE!7Zx^jI#-Yge}*s1R;oB&vvO#j%Oep1tB$ zB=p}pl?;ITqi+mk8Kx8cS#M9*(d99{s7l2W(eM0UQG6PX@k<%rsT3&q?jH;H&^mRxcCW2p2*d2M}2qD%4d?oy;BHqM}b6@?m^Ff-~N{q?w*bD ztm|(VI3Ktxi_>Wxi{Ii7GCZ^+nl{P64m)v>R;{?gH{#rgcE%Y@713xVYh=!I&-_nE z%bK6*bV-wvbWZ9~1hKwpbHUII|k zQz_uo~IdeC95=q-j4TWF@1t(TB zXy?|?F|ZdWLG4Nq0u!rgc(mV#CsADT-77?t**jDoOP~{j;;c@XiU4!@s>oq_20;?T1+$R6-Y#_#8HUz55N+eZIVYM5FCVVt zt-aLAp)Wj?*L!UI!+)wCMUS*}(Za}q-lL_F$ZI2wxVox2B9j`ATINVeci zVV4M{W>Lt@_H?rI5ZBrxxCWCt9-j-|Y3%UWOY~{ik$q`wF1;Bj5RBq$sFhH(k4Fco z&wkHv5%u+7Ymm-UbWzf=XzxaOI|m4yrR8kRbEn>bxRjFqg+welnZZ#0$Et1;f)mH; zSt|q?YQ3n>H71YmZ}%%cLyATptDSrI75qbdjq<3p!I&#oKOUw_(@K{ri+<)m{hJS? zxeGN#sutkOx@7rsuBUMgjDq38?(ckutUaseP5IvtDuJX!DD$3<$zG?WGRj^L1d>Bytv0LSjk!kG>91jZXH^`_w_RYdtGD<~ zzu5a_Of?D=;~u;Hc4FLOZGA(pra=IfxCCW6fLZkcL;zXzJv?}_~`Zh z-0pUb0Mx>9^)7{0kYnFkHbW!M!$0ck8y)xglrDb88}K_~S2PdYLzwRlVfkMU#Q2+Y2y0sCN1@~68}whrKKWv{a^cxwNg z6+Rb}MUfDImAN;p@=Io7X?YLwVjrD`Ysn(_#qgChBYSCDKf9Sch1~e_-A?9sL&KTV z%(uGjR$J;Cpdn@9c$4!30?%0BC5oF<-wAtHHum3->uhZJ0_n91@!$iRG0q5clUz4U z&=?XTJQMy7Hg*%^4a1MZ&&FfHNr}Eu)!^;}E&nH3$Dr{kVp_^Z2tNMg3v|M1H%mns9v+gIZui1$Nf_% znm6p)<#EtZ&Ud}IAwy%!C{cB*?g1p{cjbe8K)u*|_e~e;BU3h(b+KXVduKvsLE6?! z2CzbwhSEe9JuZxeC7+gVKzNFlUdYsb+e@QmpKMd@HvJurxB6unwWYGHs;hp-xF7Zo z;*nQ6&FS$g@*?8dRxzCB)k{G|$8%AZRmY4XB*S$z)BB6>X7>9KoHoczB7=H_Em3YG z2eOSMbu@J?RmaUPvW&3hMX`&;NQ6=)&6>NIY8?8qQ)EI3XbnzZ|xkk);B8 z{j5j+&C;(^??w@P@u}zja27Q|Ki8l_1ew5g-d_jwPp>elm=Wr=ylHL>qf{08S- zIk5I*pAD`3==q-f4d?HZ2)Lb=7Kg9a&Y;kSy;ERLlMrFegEi_2@o8mR9N@6_JCT7H zt}wM`Vxv-pO}dM%tp~=!q$B5peu)$e1cA}DJx>BVwlWdQ!zroJjk($v%g$tSRKVau zlm!pD=XEn){BO*JK)G%d?0s%%9VNmCb1F?sH4Ps~mx)j9+L9zSFc8h%z(0S&iO9@L zQwLr-?XwXi5u7y*b24~V24C+J9fJy12jHq)A1+rapLqdJ>8E`0Ah70S{SYi4OSB(d zA)2zZd`p+;0e!K;;_NincTVPNAY30h3~Q{eybUJ|Xa6h%jqN1x4CaypERi~=GI&J-i3v|%H%v9;zL6@ z{IxIl=N(KywpkFRs!RKGg<^PVJ?It2$Tb9rw)tr6D0N)OE|JOcJTds7CD5yFte934@iF`IC{q9)d@fiKiQ zB~&G?E-@Hv*}zclbcT>)cNSl&M%uu09f3}#%TlbCS#L?@D$3$|6Fz1%vv?_isWi~5 zxvj0cXb0?QFpr^%aik=%mGh1p1_Tlu4D^4el)oIDOI*5Bmv|T-_Js2C@&=n74~!n~ zE~C@a3GR%q=i5D7JT4~0&L*Yk2K&Nsg%rDgrLf5zx18|0UavSG)we%hX*O+!P}$eL zN5m1IE7#6>+G)VGZB@vZO{461I15#((BWCKozwMhd$^dAtNywn$dGR)TxTb{JC@PW zzpErc(`brmi!>1UJ1lisOVRDj(D<1Fk`oGT4-GH7S4MvUL@N&Vx`f+~eT$?WuZ{pv zwpB;x9XAERc_PN~G%MOqR8||jYtEKHwy7njxDwV^lz~VB^hM^VbH5yfI z$2i9wkia4P?=YsVcukwCE~$grvhCa5jE1Yjnz5mxf^pEQ%R=FjdtqZ zQ>#=Jtq{pLO45cEC(YRlWZoP8&vZIg{;8k{cERJ0=cm%OoIwLHwYpueb*&Ad-ifpZJ9En`OuI z@MR=t_!ND=isqLi%x4v^G?Dm^3w3^D7QJF5%YO22){I7j74wZ` zOjm*sf~alVZ}Y8|;tjgp`(8&(43cM1cLyLM$SA-w9yGvijr|d&tV7~6opD+N#>`*= zQL-}dayLc4v@~%B^@73BvWV1n^ioEw!FD#nTZUm2nXqpf znQ5Xg=>`3BX=7CuJ3hxodH$>~76LbtnTw9i)q2iCmfA8l$Cs_h48zJYI4}@Jp6=2W zf+S4)m(91E>!j5X#4e7!fPY4ne&E)$<4 z`SqIjl2T5)=l#&%jqYtA3*uNTXXjmm?lzoBtnsM(>z{6S2~+I1GuwFFuWAqO4k|jV zmdp?;wX?sP^+)nOQH0~LRQLO?IUmjwA1&6!Xxg?ZBXRB#x$Y#HmPW-cF(^YY%PUEN ziF)V*DA4^WAoP{el7rzZ=)QK?h3+ScTGR@EQE7>5g02&f>w?%~HJ)OkC`Og?68+I+SzT&S@AC zBm(reH@_o~o$$}wg0b|d5xLeO?Yp525%I8B=74yFzI-VcLj+x9A5k6B_ z9;m=0d2lDzj}Ek@R|wqYy4M%?j-nJ$*0WBUiSpMQp|@WvXQ3#%3|!&!s>qglX(}-g zHK~YP6?^2MSKRudcl+~5$PsG#Rz)F?tOK!0AAxPIg(=9=Z^91F*kMtH>+GY@ohaIyPZqTshn$eop&ZC&{rhU?$8^a4 zR1#z-kOi_cM+3>{W?L6{Lc`Z=qb!gM(@upL{cX0AcF5fkww;T#Alt7O5 zmLw|UO66sAo*qmWnrTkS)n4Sr*!gNwp{-MajjuaXnmD+ZnYpaO64%-WTP_ufL$2Mg zU8cDrKW-G|va+ADuL(1?Uaz{h@Vp5_Q@mQT<>T0nRkT9<+=1`?a0K}jW3KeV`nhV@Vu%L3_;Thdau9m^mwnS@CMXdpi-v6YVl(_`FN#e zSV0V*6raoK*Ii}52VKX5eS0rDB+6pCP+yE^)3!mT-g^rQaHk}bzBkX9IxYfa(usP# zB#X6X6C^E!nJkL%w7FtVy6B}mz5VYxrYb)3fx`D^prR@^G~6epi9ulg`B7h)U^@El zw{;F3S@r||j@cov;Fzegwdi_nUF5F3tTSVuZ2V)*8IJfChfbR``Hd4ED7f*bi)6?V^3aEDeBvxBk(9yqp6>HI)NENVElZH%l~;R7Y~!vNSm)Xk>~(Yi zdDvI=?R#Fk$ck;eCSSPsw}I@3HVHue3o&Ll)c+8wXnxPXakM36f#hvr&uk4|w@1^M zYYK_+F?cXc3`~rKeftMgjU%%_w@0~OiKiahyuH&b;2rB8yWZ^vch#VO+n*gZ?g}H3&S-40OJ1G+(4Td6I@e)L>sC;djGP#6nv@`)UvpCiJ|R zP>Hqc*Y1t=6$`k2I;b8WxNV0{On?46?;oHfDRNPzctf&ERM6uW?I$= zHAMG0BG%(U7ks(OZrf(wiGZxIU2q9G`@`CKk?{qijOVhL%Xm3939jw$93VCWe95n+ zLLLzyv3ZOYMSqHBH`3Vy+$N)88?P?Hr;obY<;IPM8n!{u+B7L83W! zV_jf7dbTg0BY^i=8T<{$GX>r*nTW32Ihu$cWo1%ra-b(zW2xBST5O z7>ploPMx$fyq{cEbmJb|caklu0S;3t$j$Y*Y4_09CIt_T#Ds!gY6X42Y23t1=$-pf z-JDhU=XbdB40(Fr*Oxu@>66EJxMreFJy2Xs3ZXMFtwCCNEGKN>Y_N)#QzX=>Cdf^fr3e8$mcXv}%hKv+1al&^Fpc%np&OH9j{8qT5{| z0TNsF%FA7eUc+BJZfz=Wnw%*Yh&8u!Eo{#Pc8$|B<-8|TzQOo13B0#2;^=}kSp}kz zBiSHE0aG{qpk$|h_m$7`BG)oFZ)e2gaXkvMKA?#3!z`ep{ccE9Nxo+q8;Q%{XF-M+ zrSqz5L0UW}d`jY*Ac|?}BGrm?3*oOPbYWHmLO&~%5GU>dS|yZQv0IY9MEkI;B-Kt_7Zdjk(FD}`wCKQmo6chS1=A@<`-Biq~oCi2lpqnF`qs}#mVu~kUymmCjQ z!05DS2Ad6{ZQA;TO9RD(&q?%c{O_o562QRgCi{_TWS@8$*762&tJGv!bmnZqZ1B6OjS&^F%6M%pmV*Vvy&l?n4; zY+sK!LqlUA#TEkPKswG>GODk!XRHZ9$uC zkdSg0VM*S#-p>Vf3X~mI(b17Ci16$a@xd`i&ayPOIgSZG9NXarTgoD##KUz7g%lyx z>A08G8n{BwGPtP9F)wpm#@RaTA4&aVGuYxn|E*lf)TY1YhFvD zQbe>U*r!Xj9oq}2rb)A9noETVwY9b5)AZ;*k5Bg}dFnMLSzvt>nq*dM3lTWsz*M3# zlV6Dptjc8eMg(356FGr2lgX;D2L#seU;CQjEpEcT&aquM7z0OD2SP=^VbXu=gwq$!(Dcp#nEhr5C<|F8)QHlC0 z#*uNE`C!8t68_Mi>hNoPkb3MiVws%u_OEbiZQlSQPu;u~CGJV}$rDqxwOFTnAch)) z@nDEDWc%1nA?>kop@~gm(3A^CZ0%H*TL>Go<2ThpiNVO;d4D(MO#J5c)0eysUF#+O zMPx@nR%f!yd5ltV>_)2?4v+~}SU8Z~`r^IL)R?I4`bn5$?9TwkPk6Pb1 zZN!JaKX9-vNSgp0O0b~lFA(Y1&RPudgMZjtuKwaa69#+pa6BHzuciIY>Pg63eSy_ahIcEIojG0ZKkGhA%ua?P3-C}R=$3M?EHE+`?2VoBYj=L2CI9Q6k8%8p0=sn ze)eIxaw#dP&23Nq-QoEh68Q046nr|q*2zgVu@mWs?{s=OX?vq~qV+>o5^o|43Mdr@ z-LZAAHFf>2v5;;Ge)EXwnLhJ_UmgDCOx;R8A+-Ng2t%)k07oVA;ax&%4^ZZ!2%-S1 z4;UBcR+^?RoENT0Ek~8HOK$JW=U0FpW|eIsnb8vrUaGfE*yX*WEsi0?q|%jLIK|&bOmd z9)ezRnH~G&R>jkqJ4YWPR~nj*g!9_s9o~`a#K@#L zkIsd&{AYdd_bnR50|3TeTCHqs#ur}q7)6d^b(b@1E7dX=3W=Rp9*TintV6JBrw5X( zyT(N8d<{K_T;>i+a*aQSxpM+UL}g2`+xN(1W){1gn^gCjSU2}?mFt$>){xB!GS(5Y z{no)s$+}#lw)#%rMsFkWK}`1{9a9}N&sD6YD%EA`^8{+-w78qozx-uMfc{loKu@`N zJga)nl}#*zEm-9++C6W& zf2wp{@vZ=|^IOI{;n9ba!{js7lybXg9C|Z#`mInX!ppR_zgi=&a3@Lowi#F#^m;qAYkQAwQL<8l5Bp_3$f|A~{2o5~~;8 zU9WX6Dk;Qf!#)9fB|79EQd)vx1tPtz`d;)r@uIa|;gi@# zvO=1)9{}w#u|a;ceWSB*)Kj`l3j^$WLRXF4O%%hcSdn(<*rzEXKYs67l%jGv=|!rtq(ERL_tvDQvd!a=f>~I&ObR)q%;?Y(HIqC))e@QMJ77 zN<+QPt?seK@nBZnn~D1C?r2&bfaDoXM^nckfDfzI+({FlED>Y|k*r++4r1$N=DoPM z7+1UzSR0AKJF5bTPtR&uPma)}&^IG0hWniRspy>*Tc z0sDWKJ%6h%;vZ?AFXA6cauMl%eM|$8kg;Sk$!bv0XCo7nA%K z+~L}719N_KHxkz`c>Gh7=|Y7U-bFHn)ml)oy2g5m)qFhjyHc@|1VGm&oc(z%c{p&P zW1k^IZy$x^r?q$Jd(|2FuE>oGpxKHRXr2s0PHkdYd0+=#$61Ow9vYeh7?MqkYWudl zdJdZhTs2e12pPKG(J?t!*f8(Ii;m(i(PqHx>TwiBU|RG zm0@O&VG42WS2r_SJ#4+~f(H-Jw8JY-n(>6}Y>J^{epa~}bpcfWQMhdQoWEcg!u?mWQ^(D*yx!mNi4KUDg4XbWaIf@}4xK9IU z*&s!ZPUPIPqCLaC_~G2F0|TCq;ma*4S3wQj=JgX^!zDcXWqwY=_cU}@J`JAn9ehK! zt}O3A==UhEa!o|2mLC2T6tyBkH-EMeMd8+m)jqhtk@xon1B7(hO4;<+Jt+Vq=ALiPC`V^ikvh%-r|oa``hh=;fLFEAqTKO_P!%86Epi+fy2+=`f*D*NzL&ZhMk`< zTP&$FC=Y^IdH6(EXn#ah+eLh!TpJpQ+U^rw$j1Q$k#br7A}Iv!hYae?--;gbS*_-YbUjY}wPBBXU!;#D zUe9K0x!lBR^C`01ofO-xXenA~xpsGs6v=$*3u6WlzNO}p8}D|T?*&2RKlZ=(PL=Nu znVD}KL24*Fb}DX1-8mMyTNu3`QJ(l-e&|0whP8HXP`UR1-Y8a}Cp=Lq*J)4-Xw3B{ zAtQ=hEoIJ7Yh;}fF)g}x^uHFVS zOH!V7^YB6nyP;V;&!@=Mj_wb#t^dsL?(fqw#`*%eNOxUM4jk<~bg6<3H-QH7(ZAu` z@o)d&>Yz%Ylst)TLXSTN7-cb`2l zb_~Dp)X$IC88l>}C}(>)k&Dw=z?@Z3)0<+Fl5^8>3b_B zc;*cJ0ZHPBf>YEW!MmatS$jSeH41#Nd2nbmUn@e}aqy=Q$&HOs=Z1Tc zeV@C?Qu%N|s5Z@@w%4NP*=6PC0@rC^-zDqiT!Z8&ed}qm_3NY)$B-A>sP%VfeodIi z3C9d!1k>3a1xOB&!Ct-pYr)pClg9>J89#Vj`ut8O$S`#d;83?Q(!!>3Ew<{QtG9%f zTm4|bKg~R8Sp{V%c~h;Y_|t1eYUaU#)SD=C`D-^K>ziIWyeLVbZ|~p0X2YW5Sk9Hl z&FQ$yc-{RWr|Lo(Ih|3}HO{*ta%(*sqO#u%CN~KtcSTjaT5;B;`tg^Io)EN;=eh+| z;TA{)N`vm<0Dlk>zwnT8f;Jg4&qdUud#5kVmF*8=5?Pq&FrOOv<6%XJDeJfQ!;= ztM~gpXF98C)498W*bDL4(o?R^(ig7wOc4p8()g9kL}Dj>rzJBqtr6a6U-G|}+MIMd zDITm~0FV#0bg5B7w!~3YDUdf_<*Z0WfMIiP1k!pXrLZeuOyxC9uJVy`>MOv~9kdjl z_e|0@AK9sQfbT=8<2}|n-X^%n`h1=NPKuo3rT@wl;&xHzPac6Ea8K{nYAAqCY2a`y zAB^LjMMA5?eJ>Tn4>~*Z(Kes$3k)PT^hf)AwB~s|Y&gbJZAZCwGY)(XzK_!STVV6v z#;C(4Eq+gUmD@1g@X?kK#|2tAE1pObxDcHsZ-p@~ySwgTW zeL@!>Q8*lizyQkEY!M99a;$cz_G`w7-O)0Q79FIvy=EZTf0b%s zEZlGNUj2x>)h|1A)Oi!2A5n!-a@RFQMqe_{FsDMLqb2G4o_O|)X>7ikhB6;rrVQU0%V zC;-z1|D8KNen4PHm1^Zr0)_XkBZz!M2S({DWQnT|fInvL@&hhDCq^LxtW?9hEshF@ zBfbu-H*iA!jP{B;<=8tLcbs)1^s#rLaDXEnVV;?h)KP%C@plB5l_Ubm8+mg#|;gE1sGGCg;&F9wyR|5(SOHf5O9pT#q?Jf@w#5;k+Vv zf4u(}isCAPxtvPT`|~sMd|Q4T=`R{ zZ!RzG>ga>vl0AY+721&4H5~g!F?p?wLQ+3aDHQwQZT-$5zGryqG&lDfxm^4`j`n`n zv=F8xtfGaP0l&v^5AIR%^MyXAD6DPcodCV*y|Y@M(u?$*(GQU-@UUF1&R;mTp3Ymk zxYp1=Z)t3DuDh)#yY(NqtS!;8Q^L$4rtK}4(`Bn1pYGUl^be#Wimr8oKbUjn-b@!M z_QT^L^?W1|ZGV1pPciWO*;U9coXu=D&c8F7W(iV2F;Ig=>3u=MyPDF(U0VQ+I8dzZ zOK}dMoOvZYND$U$BOuq+%a`J=m~IU~0Y#*#l$p??P`>i2e#xfhApazA{k#*FaDeA} z*$`o$lfmD&`C%00R}ga$*%NV^dIYMM+U$&(0z5LeKZUU5H@EZP~g?6VDts zP!%bX`^T52VdVh}eb_iSah;&BRzm@3HI3_SRL;CtYAU{vSa7BxEMsUYtIaxC>ISsx#Q&f$r2q5$+~E$Iri zGG~?KUq7@W+G)a5u`CpGK|58^1LDOWu2{{96Lvwu#0I~C#IN;zpR@Vxa9%;jWdjCR zCR+C;sMP4dJP$GVF5(rAlV?w8 zCNB*nsVVIb2HTh!36q5U0bpSjYxn>hOAs}6fe;8&HYgrA-ln?4BFUtZZy-4z4bIn_ zhWm{l504HE6<5B!aN_4hq#W%O}I0_o@ha9f>KGNE%Jol}T&{+C6R>+PvO5>^`Hvt54T z>M&i0Rp3|Z;&FutZd%F1^~%lp2yKjqAwfx5qu5vYG$8>xTaI`-_~yCY+@R+&xY^qA zsqCINcyCEGQO>`j==?1g5rq}x5B{bSq{6Y*@>%zS^IWSTh|&$8j4+!|Dw4D_V}A}fSTvx1sNWN>U)&7{bglBAX|>FH(Rxt# zQ=$lZ)`C7C+t$z2TWhv>iS7%u>T|JJOh*B}kiIKjpS>tv&%61}dcZ8uFhL(g8phwl z%vQ<(mikyC{p}ZEv#~wMCR#1kYMOlF)$e+jGTV(Zid1h0U`@@}0n>z6hzdcR^tqqF z{>UUJ#ovaWtR#OFC4QenBe`ovq#tY z$2REMDd&i&{rtH!^0L|S)$_^oO7P{wQAXtDxNJRY6Ty=)=hQ>vWu+`63B`}Ox8ScJ zrDb-S^S_+elxaXN{~#^zHV_-E92(_w3Cm3n9Qznb%Ko+M$0vWm_V`HSYtUEr z!NUo3wp26cFk-#2Hv;`-0H4G9B@v2C@C{nLl^ix)MkM*Q-~0J@EKWqCTALB#1%8 z2}w^Y-lFkVCXJG9YB8@pKUn0ZdR{HC8k0k;C@9BO-A>xBx3WWNhvLt2(Ft708P5`* zIbtak8Az>)i1IVJ!nBeeoMi#b4>1)hXLcIsJL=r)YOJ*RO~x_ou$;qjQC0iN*^|x~ z$0m-kBTwRV2}d}MJdS3k6JqXNB(45J6V{fE3(88ENd|6=H$M?%o$bAlz$ zN79nUTkTOjpk2( zkgij>oS;jax}uscz)G{3&^epi96#P#UP!cVp#r^wC%;$5=T=$J)Wn|n+#j3VDGx)%xeI8Ni%Yy>=#NDT z;fBv5g(F>2vqDUvloK6I;|E3z|QQM#V6sspD1zrvTt_9vBl9S}i zDV;@`dj=BcdA?a0FSeyT&xuqw`@+Gurn;z=;#CIT3vy>QYhL%(MM_1{v6RX~J7x~Q z3KM)2?Z*XR7v%K=^tZH7;x1n1IWFB)H2Xe@egoW8v~~bkyvlytzY|QJUfHytiYyAz zYZ6aP@O9lvb7-9xI~$dN`91G&+{8NX4SO$;&V9R?3uYkv!-4*0Yq^Rq6>b0Gt4Cso zLXPOwUCs(#OG$b2kPh;hBiTwRMvWmSv%scvLOfd}K(_c0@JC~BHRrQs~^NmYi)Y82O`f#eZ7iXuJ4v+y=f8a_5L zdWQoivLnq$9C~h31-ktjE!oB=0obw(FK!{zpJ?(u9-XBI!+vAFvWW&x?{f7RGIkD% zef`N0?w{!E5P|mMYaO1iG8F0vxj0;yLb{x5b9bhKurt7jVVNdh0OC|g8!@B2YsR;a zivd&NOmgk?y(=$%Jt|Q>Va#=kxeDDi(Rm^Zd5(BMQlEA=|KLggvY9yXrzqJSX+K8)EzyWxrM$AnN`T7x6 z$&9@Jc0!D>&bnZoy8q+ED~4^Kw@8&sqKWI4nD^4}5J=t;X?+b-BQ$_}mV1YWDi+4; z!`{V;@-$C>W+yE(16I(KSZ=JQNI4!E&{Vg1X=Dt{fAhgz>`k znCwGV2#wpd)nn8bp=F!tA{1tk8gMem7 z_em0sW_G>`93Rgp_}6fy6%ZUct)Zk@kV)erwJiq;fiCD7QhAD_hh#bGxb2igHb@>1 zDQ#Gdeayqo;J8X6!i`oLaU2Wjc0~{deCL2LeHWPPMcWn8ph0kr|1t9i0@!adif&Xv z$8ycY@p!YJfjZ>tmJI3>ni)t`#|0UmP2x?~PH;Xuo-M4E;!!*lDh4N(4$eR3*f+k%Q)B=;L5tc zM;uGzIeFfan+m+oSqgF!GfAKR3G1YUbb*Yt-nW2{lao=4J!99>&D^h>ZQzanIX{;$NV@DX1S&Nbsy@-F zl!tXm)J)9YFY|!LE{hkw|HpnU3`YE6e%W&_%WIp_YN(0lvjsITn~9O)+|@TR1*-tH zbo{eByB8Nx!p>nD6}4SJf3oJDV|hTL2MYd*QH?F%=+r<8K%cHVC6wd4_9YHEfv`+? zo^A}Zz<3F`#GV*=Uj_w-rj}gdBoVuRe`2|ejPRLkB znS7UGFb#wRKm>HfnYqLHs5MOtMTD5L*}6Eo2sW7Ch4oU@1;(C+$+rv9_IE}>;j?Sn z)g<{S8euyFflY}0d`CE=>rMTP7=qB*?+*AC)moMHQUzC6`?V9lGd9_ti2^#-FjC53h(=c_=bz7qbDe*RB-ugTIw@m8iv&r8-kb6O_Ev!d8`;#C5V*)swILSqp|Wi|OGk>E zxe&!owBUk5W3yP{O*+SSQp#N^aO}9BadYm6#pk#QyLy!a)G1>o&#ReB#y8yyroz49 zIhXhsl;G$u}oaDmVFKX}=88_btM)z50Bva+>Qt`yj4a}e^x=y;^#3_#B3 zseif{7+Aj)^0ca^4!98nRKgJWt&db^Xv zisidV!>G_V6A4qnoS37End?fi`FN42+R4rQxe#byw1a5A_O~Wb7-+^s;84D2EaG}z zr_T*Pg*+kf2@onmFjES9R5)6RBR!_jy9DVh7}|IG*I6xOj>r`_)2r@}J{NJ7FN%DEiO+N~<5UksJX0@kc-$MQe18@I69 zQmZ09yb1g{M8Cv1_Sr)qR}DXwl~!zHM?p?JFHypRK_YB3kLkso80Qc7v~knY*$&BZ zA1|xew$m%VZw6OEH5oD~Du;6nyo2cXMHu6EFt}SVzLqHva!&*&Y)tix_v<9TQ>#n$ zzm>21c$xD3*ueR1YR=}d!Ns=b^@du(zx1bt|LO+J?FtvD7`r)Iz#X5SJ;}UZwoaV( zX&MkeuyA4zheG$G;gM08v($f(l~k1^r}lb*u$6BXBpwIJw- z4}TL#+U{0OMYzKWnYu8xeIb;~&TO`d@K(5VHJYl#mAnY$F6RoQMkiyag@zC>E|~!F z814wcTNy(>Xn(Sqw{AO`3uL0+wC~qI?YX};(1}_I7vxC@U1e=QwtKdne#b%Pm`prE z7?;KfbIL?uRdx{Cic%1F(S}iW5e;Pp`pk6luhVH=(>($C?1#0Tm5iFv)wH$UhkfwY z^I<)WFg&%HLF}od$Jes!BrOTi$6uP${qZE=inNi|4|4P|d#+-hC!e|lbV4&Rdd>qN zC?IDp8kywWm~OG2Od-P+<^0-kmdw8+z;Nx~%1BRh#?@f`C-WUv47;T7%U>UKvrS|m z9mtzB;wy)cB##53_i50hwZuQiYu%>>*po9I)wN+}tdrE^4XzkWIQ z7Y&MtbXPJEMaX%<3A7;WZ%?+Za)z5AATI>_19yQiN>{37PlFrZA503XF?WQ^lB}FB z3rulYvx{IGS<%GC6ho^{(?JuTC?2BT4r$xpK^ahgnQB9n{hE%Fi`k0?BT;`P+m6Dv ziwKDiV(;V{N= zLlA}Ho)FVDyXp!KyGixK3E8CY$L%K_LbB{D6ex}>GjvEq3iU)Vo{IDuKFZTc?SO8= z2{d*!DTASWgF1qXmaBb{MnjG8rgc#A%3k2P4p|)bbuyY-kdO2kmwPf;%p&{1?J&#d z?2!pp&T(gJYIEzXFZd;sNLIn<+B~{-F%SsY*JgT*lkT+&mvLE+Pa@!w?K?^$5sT%0 z6=IZRLfUeFb(o7p#bKACe`{ZokWG^!N3JYF{jV+6m%0ck3VIf8X&718RCK54MUL&D z7t+9iKS-Uac@*`m-MnISLxuK!6sx59eO7lOTwC9087a5_?cp9C)Ho%87Alu{R`xk6l9ql9;4Dp4##uC}CZ2H5$n!Lan(} zE0&GuKhkR$z_!)1BuP*r{TaIhtyN1W{15u3AH6t@a3Woo_|hMG7*|SVARjeWQt)U* zF>S~a{4$;`k$mq>S8#^v9 zvX1)%6eejKLjDnr*}!nXxMd^|LT9AmxL4;r)PYm}Yp{(M%2Etwl!lLDDY`D`SI|bo z$oL&_rvi!bI$4CrN0w(EoJL~MpC(xR6nBaJP6g9}H?6%=UT%Pw($>U!xj4FtLL~=U zTz-N_vMyIB%R^FRN`Kk_RxZ^;|EM0R4=JOZ!#W`-DgQ9(VmU9~YK@nCcZ35J^9;V*c{;jIHpz zrrh_JchY{cB^Xrcztgl9OyNU{*Yf<}?~e<X=0wNU|)C{O~ZHy!8t?pNL=JW^D| zqQm%QxcB7NYW&$mg3OQ~1`})!K?{d3+3?~*>8|4ml%@2UX_o%c!9k+F&FSg#gUZKJ z;VBeI$#de-PN4~Sl{x|13(B5MS}zlja?T2nX*V<#f$cej+C(dHHjhW6UrTffG>+Oq zoLx?BnNbMusw4Un&BB;USmsfaA@0~u3Y3}8GfE7+7i+IZsXddO4;d8r60u= zZRBL3AzXjD{=9lvU!rrWj~*#t$k`))noQx@{oHNbO7L?@Nnr-1*XW5R(r=%-EGG5K z%Aj`+;I%Z40mpy{in{2M*yUCAF4BSLJ|9{5E+a&P;>~p0n#XrgVSCWYJ~)$@5x;ux z2~1%-PIM!9YGIiddHas1)e*bs%8y4S+UPXs%wQXnH40ygqy9!gua(<+lS`Y6PVO@T z3i}8f#!6CZSEKQaz;iu+mq!c%b4h-%Z5o~K>G_cwS-3lpOdo%zE5WH9I3i$Du9)?N z(&9|0i9H?Tly9beA6kr#z9XH|F16`hyVXT@cfhX3ZGeh5W(LvAmX{XB*(;<}-n_GY ziV`HDiJ~jmL9n-OlIP>YS3 z-dc##d6v};Tx2nupo?H;!1W}LU@fdMyFy|h{(-H40%#PK%qF|X5@1~z4DF$_+MM`hHtowqM)D_JV$j|s_DpZ4}W z@8I-si=w8qv0RV~YaNM=*6hmMI>B|`bF8v^lKS_OnQ($LptG@7&Zt^E;{AL5?JT7m zpPj5ltKT!{elM3lb}P|$986p4iFOl;_nO|mwHMM0=t{W(w6T>Fjd=TK2HdQ_y9n)m zYY@Un0YyZCVeJo|{h_WW^t)^%acak7S{}i48J)k-z-- zHE}L`dU<8y*yjp{S!Mr*RvOc%H62$BI79&Rs&wt*%`cvg?| z1)f&fuASxiQP4kQ!bJC3xjbuc_TOD87FndEO{GCGP~c^?{P{VkAX38PM_g>I^2Nr1 z_C$VyS7^_|XVhQ*;_oR4Uy?Z`zZ>>WZXRmvzJ2DOxu!=4zTHp>8rl7!OJwjXnjbpr)^d9V{XwTMXl~E?b<@n!09hbXa@R?TK#3Iw$j(n^XspgJb~d zBP4}-JeaGsh6*Ck8QRV2p+vj^9?Qnbx`E!8T3SkIj{nEu zI*~Lx5Q-M$Z1~=knIz{QZnuL8eWhqIq0DgTJ9YZdmsxo9a#P5!1q>Izq6iDQq(51% zyf+OfyJHN{k)VGnz_=+3Zf|J&dDG+}{4XIi^??}ntyM8edgSi}$wHAV(@_+Ik@6`r z98IeCVgHtZOBg`G^abe3ql)sf*5b6f|2Lu}Q4yx7;uMqARQ^=0>#vmaosWhxDn?`_ z7-#$%ElQY*Oc#}T-X(?M9)Nr^$>1liv#!{U)u~!BBPyRAcM)XlVqe0S)N-co@&G+W z!3^v0Xr5N*bj<^`ieH-0O~D0oOnPYZ^~JDH8Qwj`M_0F*pT_$Hdy}6aQxj-NNO$<@ zWHpZZ0hvjpKVb)z`j6*j9+|o2yjOD+AtTXY478B#ccO^#8#Un*O7k5ggK%orCYpGW zuQ9{Ge+OVRv_OxSMHLC~DDR5%lPLX~ZGL~vQxS~vI9;_{|E&1;i%AlY+7VOmTntlc zUViD;T)AB=n7Rn-WRy^3TrlrnPB-Mdk&DI7i8}9iwDaqUT-i}sxs*bGIFP+OJgQwh z6K0B?=!_w!U3V*Y=Xa70D@X$DpK7YeIW>LW8&zrjcM)|j2^oJ*_3;+C z%}1`ke_@;km>$W$ciyFUsOax4t5k^$^>N)-^P|l%Pxwa}@Ku6|v`j~%W&&VE+3e|_91`#Mr}E`doYjn z;{~9nyk$3O)_#jc1yxEbKguQj>!W(eZYRWip6kxJ|4W|)#2QoP)d2g7yZ>8zK}>eJ ztnH?DQZPD%KW6L{# z{?XoAWq%H6|9+JaJ&lPn#tYxQ9nz0#Q`Pk&qJRP8*m5=OD@Q2F9gcSkA@$;Ca0RDX zfdSQajd!a$nY$DC%KatJW7!w7&jkVdCq;#nuI`^|QwECrGma#8r#CF0SMwlW)aRcS z%{K;cLXUUSMxJ2**1B-ZPw}gaOnLJmKTa2_eZoDxlfC0;sWk4{-3#7i{O$LaS6>LC z?j?h3KmObmS;YyvwAJe<&3{@3?kGOJMY5_pC$JNt4~qVxQP>A&BQ0IzPY zmQsN20&S6r-*L!)FBf5=+#a3UD2*e0r(b{DH(6j*E>&x~urK#(?~uwnjD-3(-*rdX z%=A>qn`q>&&|DTl^VL?!>9X%`SYVt-hFU|yf_1d!xRl|bO00a!`U~ZHK&;H%d2~uT zVfmVCg?`3QmlXj`1wQ&J0bTjlk7v7L=EVGV0N1kIoD|!l2e#1psmUWsifOY;4N2JPH$j_M-E+d`UwNjs>@{=LoF%SD%&X z*d@#{sg352zYNYv_Qyc)otC~970u1h(1FuOI^t)>tEfP0aQ-iMC@v;tQ%uJGRKBRR z6@h9&`$nMwY$mUwbG&1Sw4*2eO%z4{)$QJBIvc2k=cg(K*3-01n6{)KX*fCsUf7$6 z?^VQ?=3woVc;R^0h@YRohW*Qhy8p$Z9{)%2#%xL- zJ)`=)dhddrpyeu8cm3R4tJ&swY`k=ixm2!I0Lhz9%#9VyK@vL2fAXDke{TqrIC(67 zoc;K#QUQx>mhLmvd4d5@^u9x3En@hAS)I`#%WqkKHkKuc<6~nUqF4F$tKr?+4hUfV zc9M3}QorD{OB>|BXb{wj_&BbZ zj7Mv}Bx&YJ+{^tkH8Vv>BdZb3!CGV~NTh`{2!5s|V2zj?o$QSo1k$t7!_>;*3T`*U zR0E_J5->G}n)V-(idaQ>a=epzy@7L4;^-`N@wss=Y`d-m{8;fKRUrl+#agrPJ@WBi z-o}VtP7r(jqoyNsw}?42{vyagq5o6o2*Aeru+Ee~{e}BJJ}B8_`TmDcF8u?7K4}U^VZSF)Gi>{}tzZO`p?Z4?FXu(+= zw`k-et&wL^&HGwZRFpRO-gBGrg|WWiHZPXQT8Hq_&&b8zioeNLT2z{T=k*DbnIAGT zeH9j`l2u=>n2dqNmeC5O`7QdQ>q#b-w~!@iw~Y)hICKlXmj|93Wh*NYaj$aGNfpO7-&2k>3KSJ|3pTZ+v7?#DT|e ztnOy8IlYTCzGHvMY^7wgZzQw#SlD?e(}E%InfrLARth|EYu=_+ZNNA-O<&elAFz_5 z88~q`-^kFLj86BiBxa1w>`1IJ39RWTUpRiQq~FriU;SY`y4en{nq2Q^N=GU>#E6N0 zj{1$z{`jhT?TZ|Vf^xZxqY5=o7>Rh6{ywtaT=<8G%~5`$>2Rb#M7|Va4g=vOXr9;`MoepZQk3BQ)YJ z-63dJb&qUMnUho&D*3S|kh9s)W0Fc0`eNS;Zlo{Q7JzpAqOkf{SVdtXg{V+IY1vck zHp6KxF)-vTpIpJdaY9uig$~{Jxs}Xth^0PwDF0^bXWi9M!@xBTr0BgaU^w)Fhr$c` z9)TF~ghjB63KiBT`Q*PWgyVzEK-1TUN^yJ{HoM`8n2@oX{jB#)THL}j3O827oW5ZMfmrG8m2 zyF5^e!qk^wEZ5%n$+ljf(7L!@ksq~&ckgpk9Io1i&$e~ zmXK7_h^ClJSiIR3(#Tg8HYvKx#VaNH0PJP?10hpSh<(jji^86Raf!Zt_dMCg9H^G) zJW4k?^jSUg-ge@|kgABPKP5;0k|_^lRnjh>DCY ze*SJ?V73ItFdE(o^a9PSLovONUy@#tL5o;qG39J%*C)i#-&y_d|9XsL8uk$mWIg^ls z91gb3ycgQaa<8wt{+O6mTZdeIe~oNVYvK5| z!TD@27wiRu(`lK_1TxGeXDbX%sYJ4UD4z-kLL?`+a?sxnJ-kr?0G7f(ZRo#`XTleU z`*`l7RdBnJ`6GBXlN75X0}kb*wl+-!}Sd5}J`A(Zi=g$BJ1qyuR)4 zQueY-=bt5ls&VOjSq`(T#>yk8c)BkoiXRjU0S93j`Pe*Qpkc5od zz6UE`8Y1!@_Eo)!g5u)xRSo$TC3VPuR;>29PSfE=3tkRz_Mhc>R4bt+nC^3I4=yG& z-_P{kWuHm^1XpYQf~pJ@4Ay(xCc5#>)HD4!CJsVI8F`=6j|cZeL?~s_(I^ZUNO{Ms z^1X7wj*Sb?|Gxb6;{9S1y z@K6Pu;v(a{$)PH_cAX&Y*B*c7cT604uS}cli87ndd1iWc8p zs8t27&uGX-AWdHwd42RdKbEL^J0CHkpx5B=nwfax=DqfRWJ{3{Ah)LcPL7 z&_h{G<>0uix?WtBnSQ9wJn1V3mQrmXOBXtBKrc{;q^k0qJsla9cf3b(GUl?+<0q0C zb#Sh;=EMz-0$~Zi?(Td7k$(8W=1X|qu(ix)H(35!QSJZLF?}xrEmFvW|0j) znSJEupWq_w^nYnKx5P%fgHS-0L(2hNrUJ*|U;(#}T(Tt;F8jaTj(MFG5~S!Y zeH*+di6q6zoY&NcN4NfK)xjOXNot~k={=%qudwh{*cSZHLu{K79(rJETlj=vrS|oI z1kT6DTOug6iQBh<*4_mKwgKFQcbfE*9)g-R?zdmHb?EuUVonW=OZVo296MhRfA#f& z{{uC+-;E?9_?&lgSN=Mub6oU0GSe)5&$No&1?^>y{NO}dek2F|hAnn+eCMks208^a zxcP>k%{}W6(|Xo6U+-BBUScn_5Y4Hg%Y@&E{_c%E`EO7RNEnym#h250WGar(lmW~! zL>vhBJI=PhHbbSqoP9(y=#2>UttJ4NE{%$vWRRSLMM5yH3NXQ<+(Al z6nI4Q`O~1Acia2F2Si8>GPJ>d+J639F5dB3z+;9P1e2bQ{lvb`-}^9U~1X#McshQ8TqeZmyp3))@)JUUI>>$T3;j{&!Hi8n?* zi+14AQG(#}?WX#vpC|3b5R{jf?D67iPI8UVZEU4qC;}?XGk*1Y!?N&R)X7oNC|mLI zueO52ma=^eq2RU9Ty55xI=WR0`ghTk);0rYmG)j3zq2U&J{?Uw3Xg;9mqhcgb#2!v z%zrXYzt2vfDWxmDe!YB*62UI$W)eu>DT50_=@eZlJfT45rE=0fe<*N zQrsJ*q_vWVYaM4TH-2W0wFU;x2Ao=)A1(vxVMorXRG)-|%9Cg0YsO-uJMK8Tb`D~| zz>O&}4qGLyFnPCKbZ%c%eMWJ<+H4K6ec{8eX||1v8=hhXU&iB@?(w|kBDDb(SVp7UBqiQk$*?9e~Fu5J?G#q zh1Gj9S%$MgRWU`)(2)q9P0#t2O-KB&$#0?}Gd7DyX2N-Ht>)`t(XlASC4S+3!UbQ+ zrK9C$Sblm0gVw{Yfm3nc{WWj{x&fd~KX(s>#ooAHe_LEYU{+Usv z95{2R)Ft_SWdyI^VDTyoHF$2J4^Qt(<1*t(5aBep3+>Fa640hNfMSaakMs7cYQT{;>BAT(lI!c|-zm65xE^VJJ3ZQ%#9m(p zH`|@OH!2*>$Iud&!DhFgM1s@uX)+w8^jF!QsT6M(elOgaSbw6_IeAv{ax4D>l@{Q7+VCUJ>`p|96a0spI7>-?;R@;r^wepV1YP zhWK}%4EJ2Z!{_+Egt8Mxkk8{VRUv(`%UrVwbh(K!A=Mc?QK#g`W!tR$JW(zgw z9S{RVhZN<`HwIJAL`xi%6jqY*PNkgGxU656Ck-c6Hq(lk{DGCvu|!-i9qcWb)YAWI zS--v!vpV(5Y<7ua*Q->VD4nIrsx6pC`7Wyhi;B3fgw;XfN^uT7ECmI zHk@jQX-%i5zjACIhXML^PB|X?b9z*7mL4|xPxQP60K6A$WV?27Avn?^L2P3G7~pa^ zfMs`B+rSclLht?8`mRyqnEDTS@mXrWdTFb+Fge?bHK1tJUsQWxh$sW@rlCY2>=i9gs#lYQ@i$!Y?ATgYMA_Z7^>y)5UJ zX-p~hgG=fHog2Wg^|}CZ>_MljT9@3b(>?o51;Q_NXlqCD%R~RjKax-h{rd=(S4ifL zO0C8@zEufbQFRWnpFsIp11hm60vvMMB*0kU2P`?3S(6D$0wCB6GE&&6fGaMq=idGo zrT7Y1qpt0@w5RiMZZqCAG`;p*Lz}-{W^~NUlY$i%GbMhRqC}1O)Pv9X-=Z#jU3%<@m2TjKXCanPz?U6t_ zr~u%mpy89~k^FxU+z+8RRRgpWG;2+#GxlC&v)(^0AO-gZL zLw`*3Sp8?}DzD85P2-}fvKe)WhV<2SPf#lWcAT+Gwbi7ql22=ox!n6KWtqZoqh~HB z!(Fi;(lDk`8vqH`{?`ZShgNlQHtphWqIf~NY5uMNqi)eUMb#6u+JAeHClh^dXx& zxOluTl*j@yNQKR6%0jLFz<>O$gQh5Ze6Clre6Mf&+eK7K#)|PAI2s!`_>QJg>3>aZ zofHDV?$nZJZ?XJv45?JOnNBj=76-;tSSj4hV`pMe4i%hri~~~C{B|#G_GvKane+Ur zZYVdiI%*0EmOMm)QP5kpKB;=$ZvFaX;2O4tfdRLo;W{jL-{1s%RPyz5f*(1_jPF@1k*0=FClOE?Z{&~Mfn%z!h3Q} z^xI*@B((#cGL4zuK+Pl|7Ug409FY+Mk?~Nbo30R}5j@58EXBQVh6oMoNav5R#M)8^%WZCbD5Jn@Ob&wDP;?jrsmDh3X2cl0#y(JY+! za)_v=+5R(_0E^y;Nn>+DQq8R9>IDFvg<`@4L1eZ9q16zh1r#2 z?~7_ObgQb$)7I|FuL=Akl z3mT{brUUsGA4GsqHNt_$MeG1ZtvY32axA1~$nAd>PaOeLf5`VK4JAiC8UT?3V9@%HSj# z;6^r?@#_m<4=qNL+J%Afcri+gMX;Q?xVU|&)0qV1O zkxi1MINR#D6uJ-bPp^Jl7x>k$2LB1m=(%R^@d9W%M@B`o%EzCC^|$pzr~k}<^FSJX zx)eUREp(D(U5e;_&Eh~84de7hIiop~2qB+TVL-5BL;z<_0+ASG;(MSw4>B3Svbqp; z+PL_=+*TsV8J+5lY3(8ev))o~hPFM-_U0RfbiUK2bS!w&b>{MpV;fb5i)$ZjC(z5L6kW z%-3POFZj?k@T;>857Mjpl!y5~pH1X^5}ABA<9ZB-p+Ig6Hd>7ox$ z78bRcJr2)uqoFw2rr93(~eaJVtm4Ajedvq+Ob!>L8nRO-n*@&Ok1;aW-I4apr{)i84XqJKmN^N;rwst z>3;#XS3xu|KPfVVxI1xE=vzCH;RtNezy=AuJo$xPysqg_A!5?o*aMf{gmM990n#U~ zRX3w(a0v)$r$7d$rm`7%KzoEdZlDK-Nge6m@Q?yd06o^uawpKzMK?Ld6SQH|U`0Gm zQpZR=t#O*4d8TFMAHdx$!RN-u9ljd8)DiHF5~*Qm;2M%+Q`KmWslfy~8<^3Ty z2XnE+b1SRgcwc&~ph6hWc{iq78!V#?f4cXN9Oc({*Hyq`MCiZyl@qb|*~OIaKJ?75Y7BEC8r;M{8hD<#m#<0a43JG?}6|0L)uO&T6FJe1K#NwFAs zU5`--x7Q&m8`RTKi7rLuzUMqYj3N=xB(yTx_ZcYck@E7F`h0j1p4@iN=+#dCjCL0F zb9X$WX&EU494`6oiLdr|jI2KjV_jP{6QU4MIUEa-@qez9lmp2>etfF{q!odVSl@+0 z@=N;KH?=(D!aKBNF`IZv!u!)b0TooS8l{N-RlOgz3O?>V@te%h;5jwXPv_|vly~3a zj$<<-VBI#R4ly@NLZ7z8+KbRY}$4IWrhdO)APkuwvdM z0{?A}XY`wfKLpa7oX!6oP^r&QZ&MwBstVQbMX~?e9^c{pS6amfF@@^5L z#%dn)h)0((aQ`_iFvPfHI$IsQ)5ci@@lR6bwps;{+7&iQU!{Y!$?a9)l?*q(oa4B* zAQpwS2ou8r+!FR8h>vU|30lk*H$JL*z~=kHA2>b1JF)h$biYM=Aewld)8ZN&9NY2! z>oc;|A8zh*56!m_7-(~(FAZ52Uuy9MR=3^bAZwzXLN39pSVUj5+(X-V`r||tdEe|0 z9saTpolf%>Sx{6PRfV@0*#5!t5u5lsOsPrw+|}U-NmRXw&iYS5d}rim{KJx{M5xa2 ziMgTRD(jyMki-~oi#JR2+^rcrrnVKYwc^Tr>b{6xd1=Zk|1FCuZ@#nEul8~0MTNB8 zF==wnh}M%1tLWIA2Bl32L2fkWE+T<$ z+tn}6RdH}&-42=Ydy2|Z2pazGC)m|b(c>M>;PQ#)UCz}xe+XypRUbD%<5U`Y0UJ_X zLlA1gejo%fa1e5^GIj#&_~-nLunC7y4YzaYI4ya9LZof6S%-5r@eujI;j5h0L60HM zE!u47Y<{^{9X_juD;ZULfLZNVJ zZ_u0e5MQmO_9qru>)qE*sJ??XE-}qALCv+SXesB7iy;H{s*f1Yw9isnj4c7 zYQE7}+`0)wO1z;FKjbHPL9`i^5^r-Tn}R`zO58Dn$8vt8h|v_IFGaX?=Zb`2XKZv4 zwvE1Kv1G31qE_X>qeVQ1Efh3=$4H+80(|-wjMdm<5m{B&?Q^6u9DT>)vaE|xI3<=V z^ufwRcWd=1(V7*RW2b`W3F%SRh71Fat+=wa3CyWLdsMql1;ooi>vXSS`xMM$FgKJ) z$a3eN;9iH673}qC=oU#2Mmwqt<}?%Nqlm+RLyp69jQ_Puz&6mhn=o6Ti_SZqo8qVZ z!?01aIfRr$41(o!^mz}r^ltD=e9-dusk}NKTXf(tVIE(SZPDQ?-;yu7qf@r@<(+G@qgu#dlXx*G3h5(Xd zhr8oRQ|f|ClU8Be#W3{fqyQnD$z>+3%|PlXO<`Wmo92EM4pUgeG2h*v7}Pj=Y%Uqc zvAikWR0`TCu+@F$T#4)%$osV_q0FDe*{a6-F4J5CdM}xu*KZZ0(VE;sE9%OPe0-n( zQ`}V;!0M%6IPP9&p9C!;ziyT?;uFGUAJ@)egQtV#-cjJ^J(Ha)ZX@mHqQ=kEtEAp|ZqE(m$-whObyw#9;Prm@ni zZ9;TB5so?_WqfZ{`{bTIMU47vB97KLiAj2*`{es-x6~SFe?zPpPSg+_e>?eA8z=@w zv{66xqSUh=fHtvI@${h4H@hnQ@mSDzPK2FVvqSQ_eB+wXPaoM*DK4oXS*(?d$fd1C z&JD&w95ekW>db}JucNWolU#k}l+)wAA{Mb8Mm7am?`w*_Dc4%NiN@j@`|axIEZyoE z15`SaPf0vyPClxq(#rkWOSWXv(c2R9s*cikVOM=V=&3vVQ;mWRfR z4-t&g-U^d>j49}}2g`ANz@YoZ@kjeYR&V6_Nk|EtrQt2W{{ zY3s0xz@+%+fm-e%=IOhfjvq~#ua>;EZHaf{=E`l(hsooc*hI;rM3}}C^K%@sYBg~~ zJz??&8A9$wMtSaD$=%V_K`(8H_AT#z6yqrDlesv->TWH5RLXY2gUrvD=G#FaicfJS z|4xtBN(VHjxTFWSWsL|H0XYKthEV%{(qSy`gu|bbsLT4ytYJ6sm+Kd8$Kii?;Rbi# z!ta>%f2a4H6}QlwMG_#}<>`%1*85 zEiW?1`Z8ypDQg6$Wcpr_PILYfPe}j!cRfh1{gTqI-C`N(yK41QG!+7RW*% z9Ac9@VMV6@;xya(4mnsOB$T|8gh088n2>vQKp^L#@zkekE}pkm?Qf!%tCP2-XV4-D zf{Q~wN=4>g`-9^j((#9=kc-PcG|57mUTq}FSzP3AiBG_vxz$60%pjYUF4(Q(LQ{Pl zY&F1A92HNlup@Z*X*iHI>O#=uROq^%6w!X5S)nx@p~CFtspjj6TI7x(c@btNKBMp+ zcLfcZpM{PGF$=3ELxtPDufPf^%|frtB$IMFKLdw5f{~&JIN@LCn50>dB5fh|@|$#u zIJDzWL=jS0LcwF+$*mQ}X~@Vyp_bZn!Z8Ji3Ja4WLMR>uhXN|DOuw7ciy{lfI`kYP5*Gbj zl2mqTZ}q2#A(&v;|HU>Y9xC-;Lr8`B)i(tN&@Zit@uQtgfd4^zX6r zKY~VB+7LO4A~A$I21o3Qj3tq+EaDZrOc+H7H_*}xYCgi#wV{TFQ<&&DWFmOCDK!$4vK(lVb|K12s{s@~*>o!tWFCao;@ANMTpF zE1-kqgvh8ik;es7Htma2jVX8clQK3Zg zK-htSkVc;7HH{`bONj_N7rAfT!vudwN+T?#l5EqOd zlA{pOp>@BT?-f#2UaosV?LUsmMBzNqbDX$I=W-3vhrp)LCwl75sF<^9iqy}dM&E*a zv^mBAjqbNxkTadNc{U;Cx*WsN&^z&(j{iwUq`Qg=?aWGT_=gUGl&-c^RqmPDw~_Yw zB}9fIwR#myN}tdAK$#2Bp9g_*k>#&h;-sGWd8Y;%!?iI;Ky=2QJQNa65eRA)>hGEyC#RcV1~x&yGA)(emsE&*#(i+ z^o!` z$Ui+A4u#1y)6tn;?^%-n9InbnkM*G5W~Uv2JePTk`-}2gVsp+h#@|{ZrKrVuy{g1sk%a7!C-vwRIb%*mKPY03MVuv>^zpT>s7bL#NHJ`>snPmD%wFr52%qOzC?>Jb$jW+R z248&1{`gsoC5FPc6%SvbnBJ#7$%N!w|L~WZgkFs}ev20u7S-%@a<+dqIZ$!QMxom- ze7uNiUrs+~tUXN^w+HP?GnyuL8T|0SA_<>^Tk=td{(;!-)CU*+5BlwuN6+K_8N8cY zS-GHnZQifa9G5-fHw>&Sczr&iOF@qua4d{vXtf@8p+rbo{t-Buyhm2W;Su$2?v544 z43?l`no+v-(w;7gJv4ii6nd=^7L)zK5g`Jg-PQFaYf~V16JEfHj99b zYZC*)*;(|{$T@@BU!Tj6Ua7^ z7U%iVsK41E+EC2(Qef=$MsqKCGs-_YcS7^Mx5g$xSA-f?9d^xXF|1{{pIPcFJAK=6 z4ei!S1z3v-QCBZ+FIgZ1IIOMv4mlU`Q@|szVG`oF9W-_glUQ_|kV2Me2Ut7k%y^^oV!Cr3bp*i9 zgp)JnXmd49RGh8<6f?MRNk$1WR^r zLHLg{JODJORLbO87uWrl5MO?AElqg}KcIvuCQ7#!l)*2OT;K!k)}g=irmoSt#X*Ch zm#fmZs@`)O$MUK69RE~mRt0bkol7t_G(m*FGp0)Hwub zfAn$u#abfI{vz4s&!YH|6Tq!Y*IEP84AAXKml)L`*7HuM`A@`Oad}uVA!@TVCM4_W z1_W{DpQD^sPyqoK@bm==^$e9JOhyETYN`~@Stbd7Egf1rNcES(#PoyS;tK47NqHrl z(F0F%V-ZOa3eO6AFHxr%fe__kseBD^jo&dJV@HBv3y&e%7T5~S=QO4GDB(kDU;Moc zttlh#1Yinrf8$t^K8WG^I_kuEOB@f@~O#EHc(Pt%fKF zFKZeDfeh3Sr(>^_&3`~jL_yB}A*X*Z*Y-a;TI$dfI`b7Fph(i7)CdwIb=~S#D{QlT zNBaBAg6~A#BsLJ2;~e#M*^&tUDsUUT*{%3mdJiOPTam9w5rE_jO8?HvXY2c0N0AA~ z*Ie8dvOR~MaCFJ-S$?pb%E}mG1E6WWqH(|{MMOte5paVN#sK>|zWPS89w=Z&-7GMB zk&CxsSOpq{TdlkKpI?Z_d<5SlU_)m^N0Diu$*18x;TW+1EUEj8!{uc!St(weB5ZpB zzaH7rThR5@ziD#$A=Lf=Qm(6=$t_+ECQ&*^Brc=T8D{N*6-xa%NMdWNe8=2f4-`x7 zqT?W>I_Uslh4>uM+#~F$o9bA&BAd89@NVL2`?zD6fm^=gi5`BgKt8<25K0F5-6(Hj z9m57}e~jd*%;%SUdLH+f98fq8VhnHYDJily)1iQ=IuoF&o_1TuB}&7AgBK#8uG9%K z4u(QMB&=w<75oOH{tKXq-Al)RaoSI)x}bpL;N0LiKVEv8@-qzok&MRLuLm$4(nmyE zgYi&uMJiy)qyp8`sGI|=a0l(2U|=062kaDj+-aEbPbG88t$RV)18}Pecfw?|bdnV2 zclX}g5tZ3tdK+e~aM?mBW$QKT>{Ii!d;lC=b`At#vKoa_D8h)UAfG`3Te4wY;IV99 zo$ReI_(`>IDlr$zdQ40qSj<`j&pm`|8gJt}fcct-l(ih@V@DsX*-hJ%byTfAVbFkl zSnGBhdeI(bdID(Fd;@CgXszc25P$p!XRlJqPKpWSi z{4)Pi80HZB+4IY;AUzw`hK3~LZ*V3cSRlwMk>;VQcat{q<7>uXyT6c9SoQn;A+tV~ zXjV|t%H3WJhm1GnY~l!iBt~L2Z)(L^Jt61HD%C zsVL9VBdm&-GM{P_jboV`24f)!)0=djuuKC^cn4ns-y%Qc{;KM)0KRX2(1m_`*KI~l zR&SF4E*NN6J*m{IA=ETNFfb!SaV2=eRK72h`6E*Hcp464iscb;yk^5$;8^YWMOt+H zn-=@BW`a`oC6P?Y&+q)cs?)?E3pf_V@r&&Unq?!Cb5SC%Ls2M}v`iczmn&BPfM_ZZ z3tnxd9x4c-;{@XyD98$ep|JBeT-;mwWD$!zpS_Z`HF^;d@RUW&$s~}h_=&Lak$UJA zfTUPy`onPzEHWTyC1#E0aU^0hBvKaHEX!(1r`~FqVgS;#*x~2N;vjO;jijR{S#A~t zseT%SMt}x=<8`E{O#7tFu-Qdt3y@UnoW-TkdQqh1ZU!JxL1G&*^iHppRf-0HrqOIU zinH(3Ol&UtQ6E=f5QQOVMN0GslI*@&{}?;BZsZpDW|eLLLW3AB#0!}X0wCLi`vVLg z(2r+QM3fL{oe%hlAN)<}VU+J@yXC8%D)t(t$Tv`ygxtqu(^_z+s0D_sy*L#ytI)9z z?E8l0jenF0r-y8}93>GEs8dR;<2pp9hguI4suIQg-L%}=x?mevhL+)EPoXEmP za72i_&&Nd3B4ETvP+&Hn&40K%4$-&3q(d!US=-_v!-aClD5?d{#o|u&LqL#345xWX z9*{6h#Bs>z!9yiWiMNq0ke#h_z(RJE>?~_NfwZXw=wS6<$iOQ)6QKB&flt2XWwnMY zYdRg4-%Lt=OpM1i55YHHAcFG8h(l@K(@4=iHU^ryCUiDwiW&AKtlz3tBeBc@$6uN$ z|3=%-uK|JM{lFlU_dZ~<%bPU+pW+>@kX8bch^@l8cOFTxHXy_^<7i553$Csb| zBuNB@AgdJf{yDz)NaJ@35paw`)!Nv2?eLflDf8-ck{9bf_unmS(;QoBx}f&^Onl@b z_mPpH9+r?SAYehf!d&cGe|8o&6l*umN4ac2Q#uUvXsIAOzyf266&U?L+)EJ&=qpF=xzo5Y>g$46u;y@s#i%89`B8%H|FBdmd@ zpQ=fg7i(E|jkbCS17E_JXs@!?L>xeelPTE-KM-^6;g9ef14XP$u`~%3ZM_$R2TVlL zfVOy7?@v0PrfyWxXE;&AnHb0^WTskTXo&B^d^h={M0XarA&tVF-Tv?ivOF?fI`d;> z+9-cHtFz?JG}C{RT=mgK{1nCNKFUYW$2b;BfaByP!;1T+4yj;!bvv=okntCvqg8N& zK44BDnR70Lf~1@Q!^VY0+6NN9fQGt82TV)X=b#2U3gtgYLm*U65cW&r z4=N(cOiU@w9wKdDvSG%RUVay-Bxhhh#3@%iT-tBPgl?szR9gOWhcp}_?#DKXHNWET zGRzF|Z{TbH%O%R6mF&0Dahs>Pe7m!gh&r@&mx zHjJAe9BF&fZ`xMNo*bCp0PcBDbSo-hxHPRN_0gqnX$L>u?Ya_hb7Y((QGfn6L>ct@ z*OngH@98dOF1`;RYcGo69w=*6tNUjYem@(3)-KcJ;#WwT>(Hq%sVTj~ui%}1C26LP zNuB+S2FUcRmT|poz~x9hbslw#wFYTT2r1Kto7<;&Y6%!7XiBTG7R-5mhz=2N%I0h? z^k_jo4E05?0;#NDNEMXu9!ET6_RJN1y|JCkLRDfKtM!41kn8D>fUY3G7S}dDHx1>@4KYdc!4{lchsKhK!d0`hp{zRz}hZEMl# z#jjyoBBWA^-^b+)#<-elUDbbc4Ja#DwB|_DvwZus7Ju@R4fL1GlM;%UV$BUphi)tr z4vuex?)T6s7vhL4&7PrRnuXCFtSfh;q<$G0T?9+Ntr)#zP*-^31 zLwoBshguu%Rs3NSjWN`bh>+u=rxL9;ZiDtr-`Eo>iYQu4lJxMY;R4&~Z?-p$2-c4A{_Do_6O6*;pX*+%Z z^kt3R)A_AX&zdH>Zzg4?=CA%;^bw#H(itdl^Sg?RdV}nfBGig>MQVF}gQ+7zuyS5} zOACO+AP^iYI!h}55YU-E$R|@RR;d<nB~c|{vtSlVmM3%5ixFGf?`@A%R8m8IG$N?)T|-; zQjT1ZChh0v8e2RZ&U%-C@k`R6yfMQj#dZ^ig{M zW7|lA3kO3R3DD6vdw-cAROi=0wai#n)7ZtEyKN4Y${YwHe&pIl{Wm8{W+%DL49x|ls^rqM~h?XPhJ{5%6gjLxOniL8*x%GOY z*ZBY_q=*RT0*Bj+Im}|pMFs(xJ5|lFipkWpRJFu3CgWzbq<;M7VE1+U^r;*69;jGqK-o9Jgv-~EV`c>=)TDk8(R&KG(ExC z7XY`z4{$E+{^5`I=3CGj^XNe#)&s}tyC37=?#B+7!#W#s`&wJ6Vf;HIt!l^ic>_h* zN#^#1h$5QVe^UHd)Py{Bb$d`YC8h|Q{b3l*$9J}@6-N?fbJlYkpIMXUPaQ~qlc%W^ zCm$;lYXdB)r&S-}o9p0WcNOPHV@Y+tW{zAB z6j!xYN)j%=DUTRvPc&Ndr{n=GO*F&r^803Zuj%X7uA@t#qY=;H9@XWxS4$TZW-~tc zT1Byp!7TcP?xm?_^Pf0ud8=ha@BZsZVWoa^*{LOjDH3kiw3ZQ1MSH>dIcAYZ-9Nb-Hn9T@LLpQ^FNxh zGO~qVk3y5Vq%+AYW`$PP*W$;LQxi*`OkrLCurOE)Z1vU2eY>XXWdChub!K3>|9A_P zx`>F)kT#_G@R|0JpPXV^4Vkt=k4lYKGw;!)ravy#htg6aG{Xj`55SncFdX+h;lA(O z`2h5P)bW4n{Iz#ji&xzyB_me>mGN7_0Wx_-LW0r4CN%g^{Zg-))&59d;_RVyNgxaT%^l^9KTFkwY`)Rl@Q`IV;Bfy0So?&8%iE8yObVi| zwUz=FgTOL(R=FrkiWdb+0&#!(_iNAV2=ur&9DHr1+>;AJ&W)lE z?|wnCmdOP_zfyZ0+rT5TnXUM4Jlz;^svpy^OJR)Rq1x*QW0L|j=ICL<5 z>J7ot4MoACKM&dB4EPG<|t*DXZKq&FubddErC$1^-fS9D1Mas zgXu*#;}gT?E^#^!Ov8rA1-lFt0#Lb<5sPCVOn-VsLdkdq>3)oTi#)~KnCvX6nCa88 zRQgi1{u0C zMDG*jxCbCdA@D)n%NM_L6O64(3^LzK|Dx#I%S%j{L)(90xKLBzK1>r46 zIkwsRW)MUar-2W~`Mqjtl)K~=;wwWLxu0z}P^YK?hNC#~>#yZzSG$jJ-`58q`E?0o+9Hs38rITIp51%@uN_{?F6%+y zluKaW%Onr!dios=GcF6D*}+Y=7{27KKvOM&vLNv_%pKEgaN?SjzR-f8wBWRHaC-!| zyUAca%$*#inmHJOTU^at~rGyf-9;u+BKSn1lsZu*H20VH`oamy;gdK24M-x`9 z0wE5cWk7N)RU$cm23TGnTCwO<)t+-P@ObH#S4%-K?4@s&Bn|e`)#L|MgZm+S#cEFT ziQHS!LAF*@MLOjbz4uQbT#@+Ar z-Uco-e4Ij)V6|P4PP9prhzXpzr;P_d*%0v7P1%Ko1dQcpunbwt}^#@CO2fK3-1|Km%Y`%3y^?Vi7OV zrZK;5X925oE6or1A&+qof8hK>!9Mlsp``%h>db38E!de!VLB94T`!l%2oyn!V8cu4 zfQevL855WKsEgyH7ayOjism}}BZh&G2oXw!3>GSKjt6nOg$)46!r_nrI`w@Meq9gK z3v{g39_|>XD*DF}L^8N^!uV`i#O`5#<#>>(Lez~iXqO_jD57ki6+PpA+y5q1Dv@Zf z`XCOtyoX9&rq+KqiiO(}FBWJJX;)HA(hMEmhF^HFDiAC3LX3-AxW3=Fv(F}Ff@22* zfvHayIez->-e&F~VGj9~Z!UEE=Vw;^V>!^KG1@ujM+GELxg-a&PGXX~y}6%qa-U{F z=AJs_gBzfjTQ6OQvPs<>hR8KJ>V1Ap|EvZ_VcT17+|JT!#o@~*a5g!ER)yTmRrD*d zS}1^E@bDH2K^50+qJ7@*6n#GoN}yOXzC5C0+P`}cy-QHOJi_}90i|_XF9;Gz>ls1x zaQeIkn^T(k^QxjBRmkK;hvVK~^{=?+A3!M1w-%Uc~Fp)*GKeG zx&p#C=ZZJ9%9D`$gHMlm!1zYq_p*nDK9RCblOq8Bw{yaC55OQ!>$lU^Y=)d%&FuV# z$K>4J$X2&|puLhY4PrXaK$v!w871u$#7*ieTZxk8xO)?a8PrO?|x(GP)KBk;4*$2CAJ$}ga zFVbS)w=0>#25Lx$v^WjU^)}-cW|}VL7ar!(X72hviK!c!?Kw~?tlxNhD4#$}2BHFP ztZI5Szgg*{UtpA8J1O9SR!uvGsq?%OmK_d=alvF2?${;y9jA&jY?44IT;g6!V_PtQ zAdKBXRIZJQXjDo*jpVIxA|#qXajSZ8p20gbU!g5fE>X3v{x##UfK$3S$Zw+WBL4 z|F`f}!fVr#JZ|t2#K5VmcCq1RiPa>`I2-$XR@cuTy|0^m(TZMM3hTMz<8>jKEl2T* zA*8!-0-az2lw!Vb?Uo6nb&a9m$MCIB%UB97iv5V!=Eg)Mf<2zB?7!`-zWN_#gAX9E zW*=p_6yVM|z*uj_*r=U!Ge5-k(=~9tU|X=vkVjij{W0D=vvd%Dj`h|x)z8MI(V@=H zC2{oU5UtM28tASSNh$no)alrPm!Z?W5(!KYyOX{aFRwtqRQdL4o^5963ZW%9g>f{|fe6{_l=E1}nYi4EC~ zRy$FlPRe)+rOk*x>#pBvpJC18%;WVDsTvcf5P2e=fgF?XLdUsLJD;S9W2fiZQT@dC zy~^M_(0T(j`j7Fi{1n}+3RpTa&t|=zmoxd5SaX&Ct0`0@r5TxXLK z^xKBksugZud82ebt=)|WnyO%zBH5mgpr9sZrbZ&T^g@15e_-zG99MDv1d$_yE`~W;vPQ(4lWKO%-tVzj4%zG z2*kKlW<`b=Ct>AD_$`1&IAK96?q@vG+4quABf^i>kF!xB_P0lLdcF@-i@aG)?i*b_ zF&R7tl}~i&i!e?T&w~UkVtwvgabwtrN4z{^e1g6o+Hc)FBw!nnrKB5%S4hC$wdg?k zpZ*}bnHlhj_~xd$|3p?3`Sk*_3v>n0VWjNz-B9YST3K$ zs>DBYEu|rvH|dC?vSQn&#Dcza_T*EszjVSa_rMTX{pdGp(@TTPGvp~pzqYcw8l{*( zL$U48)s7PPqV%FM++#Yk{<6w8RCz34i`vsqsgv+=^f#50JsG{1m-o^_hY>Fjt{mkg zOvvrG?(gLse0V$nDPh|HHCpePP><}>@+WNc0KE|s=0l0!*!%vG48N#A_mE+60&mWf z+TX(1Z$|(2dwmGvf$#faVGIJzTl@;Cvg754gsO#aBZjLhvQTXL>DL)h&t(+h06gD3 z;kXTOHZWa9Cli6IA0M0D&#z`<2~#Z0%8n(gkLiPm$$#^%4i(HK^5&N6=p~*ndr6)I zUS0x1a>&6)voE==MXk1XyICgjfl z9D4IW!crw7G6}G&*KHhCldaOM`YnQH(OSq-ab?wbL)a5d1cp^$&;H*BN<>6FbL|h$ ze8w7_A@bs|fr%s+hppX;^(;-fJN^2nG?k)gxev{z22x$jC`eM{1ZrPvaEDYi5j~V# z=`+2#ryV|hC1UyS%jJ~BFyqGM+@b9Brr7h_#5fZ=cB-tD!?ib%gAU2+oggIXhPkpvTSfhV! zN;zcu?NmF>x@X7$h*X9zgU}HQ1C4N?D8_(3vseGUs%%{}Hh;Fw>q1k<_L3And z5h^4man3tK3G0L7RFhbIqR~9P-k+p*OoO~UXG1ibl+y53IyeB}kF>B?8Uv8-yQBn> zD^EF2oL{wH162vv7(AJ#afDI-7;w3vC4*j;3)yZxq z8#Uwy?}dg~)*d!gb~dvwkqNHun=CgU()7x2^||*z-RO3icMtjLx4VI`NwDm2{Cx5v zQ$8XooPWQPzSuRnNvJMfA@y@{Rs8vkpQIZV=JH=72nE+#@Px_v(z1(5t$>9a?*D#5 zux@B!FjkI5C1CO7LyZnRsP7)KC4>{!t=?WXhdcaH?)p>)b@WF*^gn(G$$d;^;`4=n zVi0I`grygWa34~4rStXk~J&y z`hJ=~SBX3C{UD+j9=mSQ(ct*!IsN6|2{F8VZ#s-+@?GZ~KG^PhR^WD{m(ni*e6BG3 z0kNyy_CZ7b8(gPk%ig-viSQ{M-TjD$%7PBdKmI~s1%yA@{Rkz!^wc3S3>i_IG z$cNC>w-#~Kxo$oB(5@T@1r*?X7YnSZKBe)IgB|2jGOs(4S&FFSxDWW)+ z+US<^HQV*(CXQV2;e?+5bEg%^9}g!;1er(zL(?=KuYF;J+ZS|Nep)JOJ{) z&v;5*4#wdB`ElG^Ja}LHzt0#(gG&Sd`;0B5|K~6S&pVU+7RwBeGO9LgHc(Pk&6J=q zD|21#{GqbkWjju_dYamG;DH;eIA!UEpC$Uw?kS1 zFl4u&L@`LrmL4#Y`HK*MHL^X1|#XiN36 zC!_ayC<_C%A3TJnuyu0+fbh0Jb2PO=vur6x=RfZoOBv`C0+e&xpW2V!0_(ek|K-t_ z)c0?pP+GXiYz3IKy*oi`>xYVFniYXAm-Y6y^fM58G6K(C8Hgv&v>1r9zKc(PuB`|! zu;3$!HvOVlW^#U)27YBQB!M^K`TU;}&}@LX-pikcNkV%}py*TkMf{&l_>^ev92yx) z9aG>t_F{er$V;TVPMvc{m$>ePn$y$MPKx8fH-})NgZ!jO z9bcC!c z`S|J<2o@OB3#SC9U*O;>cn(dySWD{9a}eLMn0yLLf%7{45_ zHhktz;h{M2(fsa*xj6A;mv3pz-q(|b($-+#atB;E!PC4BxZ$JxDuc#vA50Rgn8 z&)`a5XF(tp-fBPYOoc0@#xe;TqJL$B4x$cRnRf-IBhKyg=hv{D-wpPl*w$f?Vl8^r zD%;~GVkcdxQw?S=Vs*=Aq#C6QP1H@z_A}1{jIuL>?)GcC;ML{gQm+uBYJRR)AbR6w zU|k|m|LJD18QM&ccBR@32vGumtkWW}G0q*z)XF824Fjc`Q}d6~SLE$34^0>oM_PX#ab1L0nFl0eFuF&Sv~eP}8>ed_R1Rf2|DOFub<5&2^7T06y$% zG8h32A7%)X5x@JBnnzqPbnLn&zR|~7b3>^&*kC_%@H+540QWBbhS?X(CDzZJ?vtQf zulGit0d2%K89^UkcBYs5c`Bd!QV~e3X~OyR>Q;#pVSn&M^osletpH=y<#c0U@xpu{ z?g_Wm5WcXuBr5DPOb6zR{t9M!F!9MO54Irc|ED&X$9bz|bI@JnZg~r67Ey62>~_sf z0$mi%V0S7zn?|j7g@>$zb-l#>J_8e*{DF#H;tDyoWACglaV$lvq(X2IoIhViv$*JabpvDKvwBhffYWL*K9BrOSUrWZI7I_EOc$8afdxT} zjL*qVRe_fabWpyMyEd#FfxMu6uMSEuZOwoyXMP%eP|9o?sk?yk$cm z3(02Q{Tp-H5QtQ9Eml$E*GH8s10%?b-Zi;W7+ZztQ>Bd2rDSP5(OH)=rA&4~lk(gZ zpjsUJ_^|}7j&)xENCUSQZ41V{&sq`2h4xvOOTme|n6vg)iM>vdl|W?5Y|-S4|Kc@I zj8+x3Z{a`(5%_=x0_Y1dEo z!Lx%00QY7CRuxwfuYbreAf_ zbV;i#I7nEPcL%6n93wa4g$m}bpv@~D@lR|{+Bszq=aPT;tOm`^U#~vg+h$6t^@?xx z)yI$bpjm$z4FTX{L(?nJ-fuehbUI-n2%x)j5qBakeACAB34%7_d8;C@j@<5wPK_J5 z8BHC$;4(8dBDhB4sl0;bJr{4bb+H>sY*K4)h^z}@>lQJY@x);7?+!~+Ro((sx9wF} z)h3*&yGu|wnupX61r2f+M)3>42~GzyE9KLA0UF z#b%#{%Z@S8#us<#WRNX#a%mz6eI#d|v2)HP#u2|#mK2nxurOigQ(+>;TV8iX#zUs; zM_Lnbx2y}Ej>#%$;#!5vtaf9OWgolu9U?s>Pez>d`Rkz((;U(-p`6D0>4#JsG*;Da zGz~`{aO~_S;qjvra}TCigFBc(Wf~Zub`6M;9w4zeIvSP?9+@%Wp@{F4MW(1r1qcM&T7cP+7w_K=i(FfJ}_M)SNE zgH>P*od{fPm|)LfCV?$tK#*J25=#AMLb3sKABm1?CE9N8_bpchS_F3Krsf48^s2}! z_taPjjf->=?GLB|p;_jE2y`vv3m8}c$hGWBcUO_|c+JM(E+QVjsX`Zu5%{v4jGV$467=Y)Ox z+F@=jS-6Xg0Le55Fi8j8du+W4p5NaUzJfIzpzY$SqrMrrOY+^2p+@Env?=A`Aca`v z)gH4>2o5Co7i^JmQSUAXtuQLac4a3`?BBk+D3gd|7Wj!yaDY!tH6Fyv^^^=KFJsgs z^DKqBJZW0F)RqO-Ty6wzoK|B|NEj2)@p=nmBGz`yg@_@CwxY%I$xRl>Gp%}L{4P$? zk#sW&6wb>{jf^Q*V36qa`{$ST#01Ge$zR~d9qfEe7JarqH!(ISJ;+gN=7cmAJ;|E(uNe-% zsmGzh_&{!3_+JjUgxJu*vYuqR&j{ji<>E0w zu%7F8Q{A>tufq;Eur`{Zq1Bs zwNBEF3(X$xYq4)+%#aShif{R@jhx>A^1M@!3r$hv=1Aw4^Ks#e+>@GknT>~2%TvZ- zs@Ol4Amk|OVK_z&Hpp(xWCGS9w7Vlu@aUfR#gh8b0%XoUeF8>$!j=2a?4<7AE(#+R zI>yjhVu}z(A~zm*7=b=9X;_3X0$e2Gb=}ittfJ_GVy7p1&&T2t;2=vevZnFz#m;_?DB|8WONWE`h8Db555oj z{zfwvdkc+Y2>2_dFk5{o=;w*FqerD~sJj>YZ;KA`qXL`~!5;-28 z?AZ%48qUd?OH*(M65lPm!}}NT$A^Z2$u()Y1w3KP@BCS2nRZn_ivS>ddb`emMyos1bQ&H|g>*GM|f`vY8(!J0V zr=DNrzsQNf7TW;|TU586RnJM62)y9Ff)DpryeF>AW!-@=E1Ao+vd4FQVw*}H9YY6Z z1&d<$e4T7XIL`7AbIRMVT-&ZE$9SZaN8ug9{09Xiuisb0N@Tv(Qf93Cdgh;%b5jPPfrnLC zt35ap3Pk+4>P#{l?=R||Gd5|vn=sfmNjMX8(hggl3H^7d5M}1v62M*@B#qSizw6_) zA`CIaDHIqb4Bd*nXlPlJ)#2C=pa?#4^RRCU&pdtROjNP z5x7+Mj`Nlyko;C-_wx=zX$teYSU*xP%FS2TG>7i_Kk>|IrEVWsL(#E!b>EsqaFF0c zyfqEEdr?`181+cfa1obTN9N-R^ygL7XkS~Nc(h;_Q9;TQ$J#3Ot?%4=^rkfaqfUY4 zetG#nk`Qy!rip03>EM`Aa|4%P)+sJ4E-*g~R3tuqi@ssP6NxmSAjpo{kB3Pvti*st zjE*KCZt)Gc3!q-bZjUhZ=`u%L|2go#oyeEch`o0cw4g10|F$h?M=oJhTbjlV5q;01 zBr6P-ra6>FokZZJskX8}#m@lcs|w!?)sy^)L!3d_(1JcJ9xuX2LTk?cVJIX}!9Fg+ zGU;sO)uznzI4Q0!LR~xRFx-&O>{L`!<5)XUynw!&EAN8-zZFp2GZ-bCVbkcf#E86O zAW!$AH+3Qb#jQ1hUQ+T-;N$?mKQKyoKG8gpW!m}n2M9NA`#aL8B(`Y%zozTI@5Bnj zw@9pX%}&jdLQXVQHmB;!k_rH3)ofhg5GOzkNniCK)O>`1(UsWnG|=(ZYaaJjJJ2c6 zkeIUfKE)Y-tZY+Hh@vsM0^Lkti&=}CH;Mz@vQ&b32nMzE zdU2izr`~+Ju8Dp8ZA+j46-9(ht7YGPtEDs(nY!?rxELtE8fR{6#nHu7N?L(E%gKc1 zK{Y8)6QN@6fG%8tnC@)AIR_luJmUM{fRky3eYgJ4_9lX2M;0M|Z7i9rda4m<9LZ}qs(Z3_3f@4vuQWsGaFsjJ-o zoG!+6mK!vF%*#*B+Mu%w4WcCp^{S(0uk7I{<)nj(pM|H9U9RVwh2<9U;OCr3>t}?b z?zNr}>8AqlrF_6K^*GJ9*_+57+@zjn)Pr?9a5G`5 zTarex@tJbtYU_P@^+a=lk6+*>vX06HwW;US6OVjWVfJMlnmcPN!EmIdNs_p|ZbVca z?pN*!@J1^TAc5&J<|x$3wVYLq;PP=2xM!-Xiua8FILfD&QBK-4Qv01fS>?Zt917SI z!C2;l43ah%@0;%z}U=AvR3nHz|G zCKMk3=C9h;V6`~Vckt7H%QcK5r+AS}p1Il0Cx9!W7GtuGuqE|P01w-G!1Yro+Z4Ub zqyPZ}hXrO!nA(wzHi#KO~L;>l7It8hO5QS zkHV!$$*ubb`bU_|?JF6yHM7l}*3}aw0@jn4pm`8LmK{dDKmGPZ|EeXqPxX1ivYd(q z<_4k|H}v6lU&D2X*R8Y4RC(QWN%kWyl+UFdnFV%NuW+Jk90%zntKdsZ?zY`_Eu}x8 z`BghnvamLBO1}HZH0NU7XIhStOwyzuLNoIQ8mz~0({ojv6i*m>f_KXQ<8*L-s|9wa z7pRU%DsU930YVPKKS^Y$6LAAN&$TSH>FzA5C z0>22AzuK|O5pRSLaj?#-Wm6iW0;WR0Wmh6x@{AhTwQv{sq=-M#LZwGHm*U)U{c2mt z@wg&IM0Pe&;exFHS?0vCgGGvMk33B^Siz<|4qqKY)8Acf32`4kr5}!SJE_Z@Mvvhc z-P{@E0IQG0)eS(?mdR4-{|a)8XufTN4$|0l`NZ`pLIp+`XZI@1x@0cYG|-GHqfggD z|6bM&782l-N+|dk+3Zh*Q8-((gp(iw+B#xYt6Fj=nJmk)N9(tE3%Tk`hDv+kL*;oq z4dm=~2X&Q$mS>tDQ}su6mKT?FEvzi6M5{H*S1mrpj>XZE8ya%C-$CZ*Tve@|R}(7v z?w0j(U}{DJZAS^)OxYT@`j72CX-n;ce?Fu69*@QnT8RcPTDB?zG!GW2w}f?AZ|4~_ zr_sKQntx{eSUe3W`}%Vj}Z2?aATwKC#d_ZN+LuZeX&>=X$SKt~o_=f4__BvRHSz*+(gk6qY(0%0?R0 zH~h4no8K)baWS3DIGSy$HWdoc9BwOE(x$1n{31`Q+u&VVlK6Gu&Zl~AQ}o(z?a`y| z2VE|0_w{~7;0!?286ZTNPUo>B3gl8hwZR)&s3e`Heuo9CY}9v}*7S+9oFgg!z{ji- z5E9aL;5ygen2urilsInqo$QqFyH@oT?Vfpy6^o6lzPoqI%osCulj+!_Opg6t zm5PXp8e<;vX_f?36zFjB9vQaT5I!<7H4W)<`MdZfV^+^{_^sM2t6zG~`<2>H2L`_z z>02IJtSvP*QtU2i6p#O2XC*wptbOOKLNkzCP*4!kU&qGsyyx@Rx-a~MBmA^x4imQ# z(TtkYSaUhkSWD5J)dlm!A==A}U)x-dJ1%PGR~`8`7liq4YVzhAZI`K5XS`ez8RhS& zvbo0omL-cWH_aav23;muFO7MReF>_WZ~M;w=+TLfp=D~5=!{L`i%*SXWI4)4^%pY} zmKV;Ks~R@}*LtbUPu@Et_FQy)f2VA(qcB`pd?9Zmk|(@8^dgh_J zsWB%&gltoE-amr+W$7dE?_ueg<~tM*s~qK4TO!Qlr`d?$o8orWKwQmjZD^SGkYR-h zzH|FNZb|37q}o4=&0O&8?k>o$TmG=}+>hm|ck|y1b>p$T@z4sl+II?|QsPDdzp{or y3;|z42^loOmq#io$_U_#faL$zAG&k}-yspX5>GmaZs)?^_NAS){sO9Sb literal 0 HcmV?d00001 diff --git a/assets/images/chat/pre_delivery_callback.png b/assets/images/chat/pre_delivery_callback.png new file mode 100644 index 0000000000000000000000000000000000000000..c9ea5fd2c98ece26d384d8dad0c8aaf7049057fc GIT binary patch literal 79219 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 rR`W#)y$01V0)WMk(0D{q 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%0Aw1w4fNauapQ+$YW~+-g+cXHnr)clJA+ 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%0DHqfJB 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%0AhzdpF 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 B)&Kwi literal 0 HcmV?d00001 diff --git a/assets/images/video-sdk/real-time-transcription-server.svg b/assets/images/video-sdk/real-time-transcription-server.svg index 58df3e56a..cb84966e9 100644 --- a/assets/images/video-sdk/real-time-transcription-server.svg +++ b/assets/images/video-sdk/real-time-transcription-server.svg @@ -1 +1 @@ -Implemented by youAgoraYour AppYour AppBusiness serverBusiness serverReal-Time TranscriptionReal-Time TranscriptionStart a taskStart real-time transcription<channel name>Check user privileges and payment options (optional)Send an acquire request to fetch a builderTokenReceive a builderToken in responseStore builderToken against appID and channel nameCreate JSON configuration for startingreal-time transcriptionSend a start request containing thebuilderToken and JSON configurationReceive the status and taskId in responseStore taskId against appID and channel nameSuccess <subtitle data uid>Display subtitlesSend text dataReceive data from <subtitle data uid>Parse subtitle data and display textQuery task statusCheck transcription task status<channel name>Retrieve taskId and builderTokenSend a query request containingthe taskId and builderTokenReceive the current task status in responseSend the status to the clientStop the taskStop real-time transcriptionRetrieve taskId and builderTokenSend a stop request containingthe taskId and builderTokenReceive a response confirming successRemove builderToken of <channel name>Remove taskId of <channel name>Confirm success \ No newline at end of file +Implemented by youAgoraYour AppYour AppBusiness serverBusiness serverReal-Time TranscriptionReal-Time TranscriptionStart a taskStart real-time transcription<channel name>Check user privileges and payment options (optional)Send an acquire request to fetch a builderTokenReceive a builderToken in responseStore builderToken against appID and channel nameCreate JSON configuration for startingreal-time transcriptionSend a start request containing thebuilderToken and JSON configurationReceive the status and taskId in responseStore taskId against appID and channel nameSuccess <subtitle data uid>Display subtitlesSend text dataReceive data from <subtitle data uid>Parse subtitle data and display textQuery task statusCheck transcription task status<channel name>Retrieve taskId and builderTokenSend a query request containingthe taskId and builderTokenReceive the current task status in responseSend the status to the clientStop the taskStop real-time transcriptionRetrieve taskId and builderTokenSend a stop request containingthe taskId and builderTokenReceive a response confirming successRemove builderToken of <channel name>Remove taskId of <channel name>Confirm success \ No newline at end of file diff --git a/cloud-recording/reference/rest-api/acquire.md b/cloud-recording/reference/rest-api/acquire.md index e5ab7b0cc..2e888f0ac 100644 --- a/cloud-recording/reference/rest-api/acquire.md +++ b/cloud-recording/reference/rest-api/acquire.md @@ -7,15 +7,15 @@ description: > Before starting a cloud recording, you need to call the `acquire` method get a resource ID. --- - -> Each resource ID can only be used for one recording session. - - Method:POST - Endpoint: /v1/apps/\/cloud_recording/acquire -> The request frequency limit is 10 requests per second for each [Agora account](../manage-agora-account#create-an-agora-account). Contact [Agora technical support](mailto:support@agora.io) if you want to raise the limit. +If this method call succeeds, you get a `resourceId` from the HTTP response body. The resource ID is valid for five minutes, so you need to [start recording](start) with this resource ID with it before it expires. -If this method call succeeds, you get a resource ID (`resourceId`) from the HTTP response body. The resource ID is valid for five minutes, so you need to [start recording](start) with this resource ID with it before it expires. + +* Each resource ID can only be used for one recording session. +* The request frequency limit is 10 requests per second for each [Agora account](../manage-agora-account#create-an-agora-account). Contact [Agora technical support](mailto:support@agora.io) if you want to raise the limit. + ## HTTP request @@ -23,14 +23,14 @@ The following parameter is required in the URL. | Parameter | Type | Description | | :-------- | :----- | :----------------------------------------------------------- | -| `appid` | String | Your [App ID](../manage-agora-account#get-the-app-id)。
  • In web page recording mode: Use the App ID for which the cloud recording service has been enabled.
  • In other modes: Use the same App ID as the channel to be recorded. Ensure that the cloud recording service has been enabled for this App ID.
| +| `appid` | String | Your [App ID](../manage-agora-account#get-the-app-id).
  • In web page recording mode: Use the App ID for which the cloud recording service has been enabled.
  • In other modes: Use the same App ID as the channel to be recorded. Ensure that the cloud recording service has been enabled for this App ID.
| The following parameters are required in the request body. -| Parameter | Type | Description | -| :-------------- | :----- |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `cname` | String |
  • In web page recording mode, use `cname` to distinguish between recording sessions. `cname` should not exceed 128 bytes. You can use a set of `appid`, `cname`, and `uid` to identify one session. As a best practice, if you want to record a web page in more than one session, you can use different user IDs to identify each session while using the same `cname` to relate to all sessions for that web page.
  • In other recording modes, use `cname` to set the name of the channel to be recorded.
| -| `uid` | String | A string that contains the user ID of the recording client, for example `"527841"`. The user ID needs to meet the following requirements:
  • It is a 32-bit unsigned integer within the range between 1 and (232-1).
  • It is unique and does not duplicate any existing user ID in the channel.
  • It is an integer; Cloud Recording does not support user account (which is a string), so all user IDs in the channel must be integers.
  • | +| Parameter | Type | Description | +| :-------------- | :----- |:------------------------------------| +| `cname` | String |
    • In web page recording mode, use `cname` to distinguish between recording sessions. `cname` should not exceed 128 bytes. You can use a set of `appid`, `cname`, and `uid` to identify one session. As a best practice, if you want to record a web page in more than one session, you can use different user IDs to identify each session while using the same `cname` to relate to all sessions for that web page.
    • In other recording modes, use `cname` to set the name of the channel to be recorded.
    | +| `uid` | String | A string that contains the user ID of the recording client, for example `"527841"`. The user ID needs to meet the following requirements:
  • It is a 32-bit unsigned integer within the range between 1 and (232-1).
  • It is unique and does not duplicate any existing user ID in the channel.
  • It is an integer; Cloud Recording does not support user account (which is a string), so all user IDs in the channel must be integers.
  • | | `clientRequest` | JSON | A specific client request that includes the following parameters:
    • `region`: (Optional) String, which is used to specify the region for connection. If you specify a region, the cloud recording server connects only to the Agora servers within that region. The following region settings are supported: `"CN"` (Mainland China), `"AP"` (Asia, excluding Mainland China), `"EU"` (Europe), or `"NA"` (North America).
    • `resourceExpiredHour:` (Optional) Number. Sets the time limit (in hours) for Cloud Recording RESTful API calls. Time starts counting when you successfully start a cloud recording and get an `sid` (the recording ID).
      • If you exceed the time limit, you can no longer call `query`, `update`, `updateLayout`, or `stop`.
      • The recording will not stop after exceeding the time limit. The maximum recording length is the value you set through the `maxRecordingHour` parameter of the `start` method.
      • The value range of `resourceExpiredHour` is [1, 720], and the default value is `72`.
    • `scene`: (Optional) Number. Sets the recording options.
      • `0`:Audio and video recording (Default) or [Postpone Audio Mixing](../../develop/individual-nontranscoding#implement-an-postpone-audio-mixing):
        • Audio and video recording: The recording service uploads the recording files to the third-party cloud storage you specify in real time after the recording ends.
        • Postpone Audio Mixing: The recording service merges and transcodes the recording files of all user IDs in the specified channel within 24 hours after the recording ends to generate an MP3/M4A/AAC file, and then uploads the file to the third-party cloud storage you specify. This scene is only applicable to the individual audio non-transcoding recording mode.
      • `1`: Web page recording.
      • `2`: Postpone transcoding. After setting this scene, the recording service transcodes the recording file to generate an MP4 file within 24 hours after recording, and uploads the MP4 file to the third-party cloud storage you specify. This scenario only applies to individual recording mode. Also set the `appsCollection` parameter in the `start` method.
    | ### Request example diff --git a/flexible-classroom/overview/pricing.md b/flexible-classroom/overview/pricing.md index b71b84234..f38c535c9 100644 --- a/flexible-classroom/overview/pricing.md +++ b/flexible-classroom/overview/pricing.md @@ -11,7 +11,7 @@ This page explains how calculates your monthly bill for , the billing terms and conditions within that contract take precedence. -The pricing on this page applies to one-to-one, small, large, and cloud classrooms only. For online proctoring pricing, contact sales@agora.io. +The pricing on this page applies to one-to-one, small, large, and cloud classrooms only. For online proctoring pricing, contact support@agora.io. ## pricing diff --git a/flexible-classroom/overview/product-features.mdx b/flexible-classroom/overview/product-features.mdx index 445d0c87f..2ae603ab8 100644 --- a/flexible-classroom/overview/product-features.mdx +++ b/flexible-classroom/overview/product-features.mdx @@ -40,7 +40,7 @@ The following figure shows the overall product architecture of : | Classroom type | Example | Applicable scene | Supported platform | |---|---|---|---| | 1-to-1 interactive teaching | One teacher provides exclusive online tutoring to one student. | Suitable for 1-to-1 personalized VIP tutoring. |
    • Web
    • Electron
    • Android
    • iOS
    | -| Small interactive online classroom | One teacher with multiple students watching and listening in real time. During the class, the teacher can invite students to *come on stage* to speak and interact with them using real-time audio and video. The class size limit is 200; contact sales@agora.io to extend it. | Suitable for teaching scenarios that emphasize peer learning, interactivity, and participation. The class size generally does not exceed 20 people. |
    • Web
    • Electron
    • Android
    • iOS
    | -| Large interactive live classroom | One teacher with multiple students watching and listening in real time. During the class, students can *raise their hands* to request to speak and interact with the teacher using real-time audio and video. The class size limit is 5,000; contact sales@agora.io to extend it. | Often used in open classes or diversion classes, where teachers deliver the lectures and assistant teachers help answer questions. |
    • Web
    • Electron
    • Android
    • iOS
    | -| Cloud classroom | The new UI style and interactive experience that are closer to education users' habits. One teacher interacting with multiple students using real-time audio and video. The class size limit is 50; contact sales@agora.io to extend it. | Suitable for small classroom teaching scenarios with strong interaction. The class size does not exceed 50 people. Having no more than 10-20 attendees is recommended. | Web | -| Online proctoring | Online proctoring refers to online monitoring of candidates' behavior through webcams, microphones, and screen sharing during online exams. The recommended online proctoring scenario is for one examiner to proctor 25 to 50 candidates at the same time. For more information, contact sales@agora.io. |
    • School exams
    • Certification exams
    • Recruitment
    |
    • Web
    • iOS
    | \ No newline at end of file +| Small interactive online classroom | One teacher with multiple students watching and listening in real time. During the class, the teacher can invite students to *come on stage* to speak and interact with them using real-time audio and video. The class size limit is 200; contact support@agora.io to extend it. | Suitable for teaching scenarios that emphasize peer learning, interactivity, and participation. The class size generally does not exceed 20 people. |
    • Web
    • Electron
    • Android
    • iOS
    | +| Large interactive live classroom | One teacher with multiple students watching and listening in real time. During the class, students can *raise their hands* to request to speak and interact with the teacher using real-time audio and video. The class size limit is 5,000; contact support@agora.io to extend it. | Often used in open classes or diversion classes, where teachers deliver the lectures and assistant teachers help answer questions. |
    • Web
    • Electron
    • Android
    • iOS
    | +| Cloud classroom | The new UI style and interactive experience that are closer to education users' habits. One teacher interacting with multiple students using real-time audio and video. The class size limit is 50; contact support@agora.io to extend it. | Suitable for small classroom teaching scenarios with strong interaction. The class size does not exceed 50 people. Having no more than 10-20 attendees is recommended. | Web | +| Online proctoring | Online proctoring refers to online monitoring of candidates' behavior through webcams, microphones, and screen sharing during online exams. The recommended online proctoring scenario is for one examiner to proctor 25 to 50 candidates at the same time. For more information, contact support@agora.io. |
    • School exams
    • Certification exams
    • Recruitment
    |
    • Web
    • iOS
    | \ No newline at end of file diff --git a/interactive-whiteboard/develop/migration-guide.md b/interactive-whiteboard/develop/migration-guide.md index 68ef06428..c47eec763 100644 --- a/interactive-whiteboard/develop/migration-guide.md +++ b/interactive-whiteboard/develop/migration-guide.md @@ -48,7 +48,7 @@ Agora automatically migrates all your projects from Netless to A Netless account only
    . diff --git a/interactive-whiteboard/reference/whiteboard-api/file-conversion.md b/interactive-whiteboard/reference/whiteboard-api/file-conversion.md index 6458767d9..3f45299a3 100644 --- a/interactive-whiteboard/reference/whiteboard-api/file-conversion.md +++ b/interactive-whiteboard/reference/whiteboard-api/file-conversion.md @@ -29,7 +29,7 @@ Pass in the following parameters in the request header: | Parameter | Category | Required/Optional | Description | | :------- | :----- | :------- |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `token` | string | Required | A `writer` or `admin` SDK token. You can obtain a token using one of the following methods:
  • Get an SDK token for testing purposes from . See [Get security credentials for your whiteboard project](/en/interactive-whiteboard/develop/enable-whiteboard#get-security-credentials-for-your-whiteboard-project).
  • Call the RESTful API. See [Generate an SDK token](/en/interactive-whiteboard/develop/generate-token-rest#generate-an-sdk-token-post).
  • Write code on your app server. See Generate a [token from your app server](/en/interactive-whiteboard/develop/generate-token-app-server).
  • | -| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • | +| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • `eu`: Frankfurt, Europe, which provides services to Europe.
  • | ### Request Body @@ -107,7 +107,7 @@ Pass in the following parameters in the request header: | Parameter | Category | Required/Optional | Description | |:----------| :------- | :---------------- |:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `token` | string | Required | The Task token. You can obtain a token using one of the following methods:
  • Call the RESTful API. See [Generate a task token](/en/interactive-whiteboard/develop/generate-token-rest#generate-a-task-token-post).
  • Write code on your app server. See [Generate a token from your app server](/en/interactive-whiteboard/develop/generate-token-app-server).
  • | -| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • | +| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `eu`: Frankfurt, Europe, which provides services to Europe.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • | ### Request Path @@ -193,7 +193,7 @@ Pass in the following parameters in the request header: | Parameter | Category | Required/Optional | Description | |:----------| :----- | :------- |:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `token` | string | Required | A `writer` or `admin` SDK token. You can obtain a token using one of the following methods:
  • Get an SDK token for testing purposes from Agora Console. See [Get security credentials for your whiteboard project](/en/interactive-whiteboard/develop/enable-whiteboard#get-security-credentials-for-your-whiteboard-project).
  • Call the RESTful API. See [Generate an SDK token](/en/interactive-whiteboard/develop/generate-token-rest#generate-an-sdk-token-post).
  • Write code on your app server. See Generate a [token from your app server](/en/interactive-whiteboard/develop/generate-token-app-server).
  • | -| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • | +| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • `eu`: Frankfurt, Europe, which provides services to Europe.
  • | ### Request example @@ -252,7 +252,7 @@ Pass in the following parameters in the request header: | Parameter | Category | Required/Optional | Description | | :-------- | :------- | :---------------- |:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `token` | string | Required | An SDK token. You can obtain a token using one of the following methods:
  • Call the RESTful API. See [Generate an SDK token](/en/interactive-whiteboard/develop/generate-token-rest#generate-an-sdk-token-post).
  • Write code on your app server. See [Generate a token from your app server](/en/interactive-whiteboard/develop/generate-token-app-server).
  • | -| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • | +| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `eu`: Frankfurt, Europe, which provides services to Europe.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • | ### Request Path @@ -314,7 +314,7 @@ Pass in the following parameters in the request header: | Parameter | Category | Required/Optional | Description | | :------- | :----- | :------- |:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `token` | string | Required | A `writer` or `admin` SDK token. You can obtain a token using one of the following methods::
  • Get an SDK token for testing purposes from Agora Console. See [Get security credentials for your whiteboard project](../../develop/enable-whiteboard#get-security-credentials-for-your-whiteboard-project).
  • Call the RESTful API. See [Generate an SDK token](/en/interactive-whiteboard/develop/generate-token-rest#generate-an-sdk-token-post).
  • Write code on your app server. See Generate a [token from your app server](/en/interactive-whiteboard/develop/generate-token-app-server).
  • | -| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • | +| `region` | string | Required | Specifies a data center to process the request:
  • `us-sv`: Silicon Valley, US, which provides services to North America and South America.
  • `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia.
  • `in-mum`: Mumbai, India, which provides services to India.
  • `eu`: Frankfurt, Europe, which provides services to Europe.
  • `cn-hz`: Hangzhou, China, which provides services to the areas not covered by other data centers.
  • | ### Request Body diff --git a/media-gateway/overview/product-overview.mdx b/media-gateway/overview/product-overview.mdx index 4fa432d77..36d1b395c 100644 --- a/media-gateway/overview/product-overview.mdx +++ b/media-gateway/overview/product-overview.mdx @@ -47,7 +47,7 @@ description: > > - allows users to directly push media streams into Agora’s Real-Time Voice and Video channels using the + allows users to directly push media streams into Agora’s Real-Time Voice and Video channels using the RTMP/SRT protocol. To facilitate distribution, Media Gateway also allows users to perform advanced transcoding processing on media streams. diff --git a/shared/agora-analytics/_api.mdx b/shared/agora-analytics/_api.mdx index 0b1d0339b..d97169131 100644 --- a/shared/agora-analytics/_api.mdx +++ b/shared/agora-analytics/_api.mdx @@ -1253,13 +1253,12 @@ When `300` is returned, you might get the following error messages: | 20003 | The upstream bitrate of the audio. | Kbps | 126 Kbps | | 20004 | The downstream bitrate of the audio. | Kbps | 108 Kbps | | 20005 | The freeze time in rendering the audio. | ms | 106.67 ms | -| 20006 | The upstream bitrate of the high-quality video stream. | Kbps | 472 Kbps | +| 20006 | The upstream bitrate of the low-quality video stream. | Kbps | 472 Kbps | | 20007 | The capturing frame rate of the video. | fps | 16 fps | | 20008 | The upstream frame rate of the high-quality video stream. | fps | 12 fps | -| 20009 | The downstream bitrate of the video. | Kbps | 309 Kbps | -| 20010 | The downstream frame rate of the video. | fps | 6 fps | +| 20009 | The downstream bitrate of the high-quality video. | Kbps | 309 Kbps | +| 20010 | The downstream frame rate of the high-quality video. | fps | 6 fps | | 20011 | The freeze time in rendering the video. | ms | 2000.50 ms | -| 20013 | Quality of Picture (QP) of the video. The lower the value, the higher the video quality. | —— | —— | | 20015 | The upstream packet loss rate of the audio. | % | 1% | | 20016 | The end-to-end packet loss rate of the audio. | % | 3% | | 20017 | The upstream packet loss rate of the video. | % | 5% | @@ -1269,8 +1268,17 @@ When `300` is returned, you might get the following error messages: | 20021 | The task scheduling delay. | ms | 2 ms | | 20022 | The round-trip time delay from the client to the local router. | ms | 3 ms | | 20023 | The upstream frame rate of the low-quality video stream. | fps | 108 fps | -| 20024 | The upstream bitrate of the low-quality video stream. | Kbps | 126 Kbps | +| 20024 | The upstream bitrate of the video stream. | Kbps | 126 Kbps | | 20025 | The sampling volume of the sent audio. | dB | 105 dB | | 20026 | The playback volume of the received audio. | dB | 98 dB | | 20027 | The width of the sent video. | —— | 360 | -| 20028 | The height of the sent video. | —— | 640 | \ No newline at end of file +| 20028 | The height of the sent video. | —— | 640 | +| 20030 | The downstream bitrate of the low-quality video stream. | Kbps | 100 Kbps | +| 20031 | The downstream frame rate of the low-quality video stream. | fps | 6 fps | +| 20032 | The width of the received low-quality video. | —— | 360 | +| 20033 | The height of the received low-quality video. | —— | 640 | +| 20034 | The width of the sent low-quality video. | —— | 360 | +| 20035 | The height of the sent low-quality video. | —— | 640 | +| 20036 | The WebRTC downstream packet loss rate of the video. | | | +| 20037 | The WebRTC upstream packet loss rate of the audio. | | | +| 20038 | The WebRTC upstream packet loss rate of the video. | | | \ No newline at end of file diff --git a/shared/agora-analytics/_pricing.mdx b/shared/agora-analytics/_pricing.mdx index 995cbc930..1fd7afc2b 100644 --- a/shared/agora-analytics/_pricing.mdx +++ b/shared/agora-analytics/_pricing.mdx @@ -191,7 +191,7 @@ To subscribe to an pricing plan, do the following: 3. Choose the plan you want to use, and click **Subscribe**. - **For the Enterprise pricing plan, contact sales@agora.io to discuss your subscription** + **For the Enterprise pricing plan, contact support@agora.io to discuss your subscription** 4. Follow the on-screen instructions to complete your payment. diff --git a/shared/broadcast-streaming-private-product/restful-api/_api-overview.mdx b/shared/broadcast-streaming-private-product/restful-api/_api-overview.mdx index 187649d20..266ba74c9 100644 --- a/shared/broadcast-streaming-private-product/restful-api/_api-overview.mdx +++ b/shared/broadcast-streaming-private-product/restful-api/_api-overview.mdx @@ -4,7 +4,7 @@ With the Agora Media Broadcast RESTful API, you can configure and manage the str This page is a basic introduction to the Media Broadcast RESTful API. -
    Media Broadcast is currently in public beta. To enable this service, contact sales@agora.io.
    +
    Media Broadcast is currently in public beta. To enable this service, contact support@agora.io.
    ## Functions diff --git a/shared/broadcast-streaming-private-product/restful-api/_domain-names.mdx b/shared/broadcast-streaming-private-product/restful-api/_domain-names.mdx index 2e0eebdf8..1b6369e86 100644 --- a/shared/broadcast-streaming-private-product/restful-api/_domain-names.mdx +++ b/shared/broadcast-streaming-private-product/restful-api/_domain-names.mdx @@ -3,7 +3,7 @@ import StatusCode from '@docs/shared/broadcast-streaming/restful-api/shared/http There are two types of domain names: stream-pushing domain names and stream-playing domain names (which mainly affect regional access and the deployment of the streams). The same live stream can be pushed or played through multiple different domain names. -> The domain name management function is in the beta stage. Contact [sales@agora.io]( mailto:sales@agora.io) before using it. +> The domain name management function is in the beta stage. Contact [support@agora.io]( mailto:support@agora.io) before using it. ## Add domain names diff --git a/shared/broadcast-streaming-private-product/restful-api/_entry-points.mdx b/shared/broadcast-streaming-private-product/restful-api/_entry-points.mdx index 3e40f8d4a..645049b67 100644 --- a/shared/broadcast-streaming-private-product/restful-api/_entry-points.mdx +++ b/shared/broadcast-streaming-private-product/restful-api/_entry-points.mdx @@ -5,7 +5,7 @@ Entry points are used to categorize the streams. You can configure functions suc Agora provides a default entry point `live` for your direct use. -> The entry point management function is in the beta stage. Contact sales@agora.io before using it. +> The entry point management function is in the beta stage. Contact support@agora.io before using it. ## Add entry points diff --git a/shared/broadcast-streaming-private-product/restful-api/_stream-authentication.mdx b/shared/broadcast-streaming-private-product/restful-api/_stream-authentication.mdx index b95a90c0b..c00960e39 100644 --- a/shared/broadcast-streaming-private-product/restful-api/_stream-authentication.mdx +++ b/shared/broadcast-streaming-private-product/restful-api/_stream-authentication.mdx @@ -1,7 +1,7 @@ import * as data from '@site/data/variables'; import StatusCode from '@docs/shared/broadcast-streaming/restful-api/shared/http-status-codes.mdx' -The stream authentication function is currently in beta. Contact [sales@agora.io](mailto:sales@agora.io) before using it. +The stream authentication function is currently in beta. Contact [support@agora.io](mailto:support@agora.io) before using it. ## Set a timestamp authentication key diff --git a/shared/broadcast-streaming/restful-api/_stream-authentication.mdx b/shared/broadcast-streaming/restful-api/_stream-authentication.mdx index 1c07165fd..69d7b4667 100644 --- a/shared/broadcast-streaming/restful-api/_stream-authentication.mdx +++ b/shared/broadcast-streaming/restful-api/_stream-authentication.mdx @@ -1,7 +1,7 @@ import * as data from '@site/data/variables'; import StatusCode from '@docs/shared/broadcast-streaming/restful-api/shared/http-status-codes.mdx' -The stream authentication function is currently in beta. Contact [sales@agora.io](mailto:sales@agora.io) before using it. +The stream authentication function is currently in beta. Contact [support@agora.io](mailto:support@agora.io) before using it. ## Set a timestamp authentication key diff --git a/shared/chat-sdk/client-api/messages/_message-receipts.mdx b/shared/chat-sdk/client-api/messages/_message-receipts.mdx index 6829c0cb9..2e694d3b0 100644 --- a/shared/chat-sdk/client-api/messages/_message-receipts.mdx +++ b/shared/chat-sdk/client-api/messages/_message-receipts.mdx @@ -2,9 +2,11 @@ import * as data from '@site/data/variables'; import Understand from '@docs/shared/chat-sdk/client-api/messages/message-receipts/understand/index.mdx'; import ProjectImplement from '@docs/shared/chat-sdk/client-api/messages/message-receipts/project-implementation/index.mdx'; -After a user sends a message to another chat user or chat group, this user expects to know whether the message is delivered or read. The Chat SDK provides the message receipt feature, which enables you to send a receipt to the message sender once the message is delivered or read. +The Chat SDK provides the message receipt feature that allows the user, after sending a message, to know whether the message is delivered or read. Also, the Chat SDK supports the conversation read receipt that allows the message sender to know whether the conversation is read. -This page introduces how to use the Chat SDK to implement message receipt functionalities in one-to-one chats and chat groups. +- Message delivery receipt: Available only to one-to-one chats. +- Message read receipt: Available to both one-to-one chats and group chats. +- Conversation read receipt: Available only to one-to-one chats. ## Understand the tech diff --git a/shared/chat-sdk/client-api/messages/message-receipts/project-implementation/web.mdx b/shared/chat-sdk/client-api/messages/message-receipts/project-implementation/web.mdx index b83a2e3e9..33b7bf2b9 100644 --- a/shared/chat-sdk/client-api/messages/message-receipts/project-implementation/web.mdx +++ b/shared/chat-sdk/client-api/messages/message-receipts/project-implementation/web.mdx @@ -8,18 +8,16 @@ To send a message delivery receipt, take the following steps: ```javascript const conn = new websdk.connection({ - appKey: "your appKey", - delivery: true - }); + appKey: "your appKey", + delivery: true, + }); ``` -2. Once the recipient receives the message, the SDK triggers `onDeliveredMessage` on the message sender's client, notifying the message sender that the message has been delivered to the recipient. - +2. Once the recipient receives the message, the SDK triggers `onDeliveredMessage` on the message sender's client, notifying that the message has been delivered to the recipient. ```javascript - conn.addEventHandler('customEvent', { - onReceivedMessage: function(message){}, // Received a receipt for message delivery to the server. - onDeliveredMessage: function(message){}, // Receive a receipt for message delivery to the client. - + conn.addEventHandler("customEvent", { + onReceivedMessage: function (message) {}, // Received a receipt for message delivery to the server. + onDeliveredMessage: function (message) {}, // Received a receipt for message delivery to the client. }); ``` @@ -27,100 +25,119 @@ To send a message delivery receipt, take the following steps: In both one-to-one chats and group chats, you can use message read receipts to notify the message sender that the message has been read. To minimize the method call for message read receipts, the SDK also supports conversation read receipts in one-to-one chats. -#### Conversation read receipts - -After the conversation is read, call `send` from the recipient's client to send a conversation read receipt: +#### One-to-one chat -```javascript -// One-to-one chat -var msg = new WebIM.message('channel'); -msg.set({ - to: 'username' -}); -WebIM.conn.send(msg.body); +The one-to-one chats support both conversation read receipts and message read receipts. We recommend you use both types of read receipts together to reduce the number of message read receipts: -// Group chat -var msg = new WebIM.message('channel'); -msg.set({ - to: 'groupid', - chatType: 'groupChat' -}); -WebIM.conn.send(msg.body); -``` +- If several messages are received when the chat page is not opened yet, send a conversation read receipt when the chat page is opened. +- If a message is received on an open chat page, send a message read receipt. -The message sender can receive the conversation read receipt in the `onChannelMessage` callback: +##### Conversation read receipts -```javascript -WebIM.conn.listen({ - onChannelMessage:function(message){ - ... - } -}) -``` +1. The message recipient sends a conversation read receipt. -#### Message read receipts + The message recipient opens the conversation page to check whether there are unread messages. If yes, call `send` to send a conversation read receipt. -Chat supports sending message read receipts in both one-to-one chats and chat groups. Refer to the following steps to implement message read receipt in one-to-one chats: + ```javascript + let option = { + chatType: "singleChat", // The chat type: singleChat for one-to-one. + type: "channel", // The type of read receipt: channel indicates the conversation read receipt. + to: "userId", // The user ID of the message recipient. + }; + let msg = WebIM.message.create(option); + conn.send(msg); + ``` -1. After the message is read, call `send` from the recipient's client to send the message read receipt +2. The message sender receives the conversation read receipt in the `onChannelMessage` callback. ```javascript - var bodyId = message.id; // The message ID. - var msg = new WebIM.message('read'); - msg.set({ - id: bodyId, - to: message.from + conn.addEventHandler("customEvent", { + onChannelMessage: (message) => {}, }); - conn.send(msg.body); ``` -2. On the message sender's client, listen for `onReadMessage` to receive the message read receipt: +##### Message read receipts + +For one-to-one chats, message read receipts are stored as long as messages on the Chat server. Specifically, message read receipts can be sent whenever the messages are available on the Chat server. The message storage period on the Chat server depends on your product plan. For details, see the [pricing plan details](../../reference/pricing-plan-details#message). + +Refer to the following steps to implement message read receipt in one-to-one chats: + +1. The message recipient sends a message read receipt. + + - If there are several unread messages in the conversation, to minimize the number of sent message read receipts, we recommend that a conversation read receipt be sent when the message recipient enters the conversation. + + ```javascript + let option = { + chatType: "singleChat", // The chat type: singleChat for one-to-one chat. + type: "channel", // The type of read receipt: channel indicates the conversation read receipt. + to: "userId", // The user ID of the message receipt. + }; + let msg = WebIM.message.create(option); + conn.send(msg); + ``` + + - If there is only one unread message in the conversation, after reading it, call `send` from the recipient's client to send the message read receipt. ```javascript - WebIM.conn.listen({ - onReadMessage:function(message){ - ... - } - }) + let option = { + type: "read", // The message read receipt. + chatType: "singleChat", // The chat type: singleChat for one-to-one chat. + to: "userId", // The user ID of the message receipt. + id: "id", // The ID of the message that requires the read receipt. + }; + let msg = WebIM.message.create(option); + conn.send(msg); ``` -Refer to the following steps to implement message read receipts in group chats. +2. The message sender listens for `onReadMessage` to receive the message read receipt. + + ```javascript + conn.addEventHandler("customEvent", { + onReadMessage: (message) => {}, + }); + ``` + +#### Group chat + +For a group chat, group members can determine whether to require message read receipts when sending a message. If yes, after a group member reads the message, the SDK sends a read receipt. In a group chat, the number of message read receipts that are sent for the message refers to the number of group members that have read this message. -1. When sending a chat group message, the group owner or admin can require the group message receipt: +The read receipts for group messages are valid only for three days. Specifically, if a read receipt is sent three days after the message is sent in the group, the Chat server does not record the group member that reads the message, nor sends the read receipt. + +1. When sending a message, a group member can set whether to require a message read receipt by setting `allowGroupAck` to `true`. ```javascript sendGroupReadMsg = () => { - let option = { - type: 'txt', // message type。 - chatType: 'groupChat', // Conversation type, here is group chat. - to: 'groupId', // The recipient of the message, which is the group ID. - msg: 'message content' // Message content. - msgConfig: { allowGroupAck: true } // Setting this message requires a read receipt. - } - - let msg = WebIM.message.create(option); - conn.send(msg).then((res) => { - console.log('send message success'); - }).catch((e) => { - console.log("send message error"); - }) - } + let option = { + type: 'txt', // Message type. + chatType: 'groupChat', // Conversation type: groupChat for group chat. + to: 'groupId', // The message recipient: group ID. + msg: 'message content' // Message content. + msgConfig: { allowGroupAck: true } // Setting that this message requires a read receipt. + } + + let msg = WebIM.message.create(option); + conn.send(msg).then((res) => { + console.log('send message success'); + }).catch((e) => { + console.log("send message error"); + }) + } ``` -2. After reading the group message, the recipient calls `send` to send the group message read receipt: +2. After reading the group message, the recipient calls `send` to send the message read receipt. ```javascript sendReadMsg = () => { - let option = { - type: 'read', // Whether the message has been read. - chatType: 'groupChat', // Conversation type, here is group chat. - id: 'msgId', // The message ID for which read receipts need to be sent. - to: 'groupId', // Group ID. - ackContent: JSON.stringify({}) // Receipt content. - } - let msg = WebIM.message.create(option); - conn.send(msg) - } + let option = { + type: "read", // Whether the message has been read. + chatType: "groupChat", // Conversation type: groupChat means group chat. + id: "msgId", // The message ID for which the read receipt is sent. + to: "groupId", // Group ID. + ackContent: JSON.stringify({}), // The content of the message read receipt. + }; + let msg = WebIM.message.create(option); + conn.send(msg); + }; ``` 3. The message sender receives the message read receipt by listening for either of the following callbacks: @@ -131,32 +148,33 @@ Refer to the following steps to implement message read receipts in group chats. // You can listen in onReadMessage when online. conn.addEventHandler('customEvent', { onReadMessage: (message) => { - let { mid } = message; - let msg = { - id: mid - }; - if(message.groupReadCount){ - // The message has been read. - msg.groupReadCount = message.groupReadCount[message.mid]; - } - }, - // Receipt is received when offline, and it will be monitored here after logging in. - onStatisticMessage: (message) => { - let statisticMsg = message.location && JSON.parse(message.location); - let groupAck = statisticMsg.group_ack || []; - } - }) + let { mid } = message; + let msg = { + id: mid, + }; + if (message.groupReadCount){ + // The message has been read. + msg.groupReadCount = message.groupReadCount[message.mid]; + } + }, + // You can listen for onStatisticMessage upon login when the read receipt is received when you are offline. + onStatisticMessage: (message) => { + let statisticMsg = message.location && JSON.parse(message.location); + let groupAck = statisticMsg.group_ack || []; + }, + }); ``` -4. After receiving the group message receipt, the sender can retrieve the detailed information of the users that have read the message: +4. After receiving the read receipt, the message sender can retrieve the detailed information of the group members that have read the message. ```javascript conn.getGroupMsgReadUser({ - msgId: 'messageId', // Message ID. - groupId: 'groupId' // Group ID. - }).then((res)=>{ - console.log(res) - }) + msgId: "messageId", // Message ID. + groupId: "groupId", // Group ID. + }) + .then((res) => { + console.log(res); + }); ``` \ No newline at end of file diff --git a/shared/chat-sdk/client-api/messages/message-receipts/understand/web.mdx b/shared/chat-sdk/client-api/messages/message-receipts/understand/web.mdx index 01167c502..ed8ceec79 100644 --- a/shared/chat-sdk/client-api/messages/message-receipts/understand/web.mdx +++ b/shared/chat-sdk/client-api/messages/message-receipts/understand/web.mdx @@ -1,16 +1,25 @@ -The logic for implementing the message delivery and read receipts are as follows: +The message delivery receipts and read receipts are implemented as follows: -- Message delivery receipts +- Message delivery receipt for one-to-one chats - 1. The message sender enables delivery receipts by setting `options.delivery` as `true` when creating the `connection` object. - 2. After the recipient receives the message, the SDK automatically sends a delivery receipt to the sender. - 3. The sender receives the delivery receipt by listening for `onDeliveredMessage`. + 1. The message sender enables delivery receipts by setting `delivery` as `true` when creating the `connection` object during SDK initialization. + 2. A user sends a message. + 3. After the recipient receives the message, the SDK automatically sends a delivery receipt to the sender. + 4. The sender receives the delivery receipt by listening for `onDeliveredMessage`. -- Conversation and message read receipts +- Conversation and message read receipts for one-to-one chats - 1. After reading the message, the recipient calls `send` to send a conversation or message read receipt. - 2. The sender receives the conversation or message receipt by listening for `onReadMessage`. + 1. A user sends a message. + 2. After reading the message, the recipient calls `send` to send a conversation or message read receipt. + 3. The sender receives the conversation or message receipt by listening for `onChannelMessage` or `onReadMessage`. + +- Message read receipt for group chats + + 1. A group member sends a message with `allowGroupAck` set to `true` to request message read receipts. + 2. After reading the message, the recipient calls `send` to send a read receipt. + 3. The sender receives the message read receipt by listening for `onReadMessage` when online or `onStatisticsMessage` when offline. + 4. The sender can know which group members have read the message by calling `getGroupMsgReadUser`. \ No newline at end of file diff --git a/shared/chat-sdk/develop/_setup-webhooks.mdx b/shared/chat-sdk/develop/_setup-webhooks.mdx index 348eb9cb9..f27961498 100644 --- a/shared/chat-sdk/develop/_setup-webhooks.mdx +++ b/shared/chat-sdk/develop/_setup-webhooks.mdx @@ -1,15 +1,12 @@ import * as data from '@site/data/variables'; -Chat supports HTTP callbacks (webhooks). After you set up HTTP callbacks for your Chat app, the Chat server sends notifications in the form of HTTP POST requests to your app server when specified events occur. - -You can use the HTTP callbacks to synchronize messages on your own server, or moderate message content. +Chat supports HTTP callbacks (webhooks) for synchronization of messages on your own server or moderation of message content. After you set up HTTP callbacks for your Chat app, the Chat server sends notifications in the form of HTTP POST requests to your app server when specified events occur. According to whether the message delivery is intervened, the callbacks are divided in two categories: +- Pre-delivery callbacks: Mainly used for content moderation. When the Chat server receives a message from the client app, it sends a request to your app server and waits for a response that decides if the message delivery is passed or rejected. Pre-delivery callbacks only apply to messages sent from your client apps. +- Post-delivery callbacks: Mainly used for data synchronization. When certain events occur, for example, a user sends out a message or gets offline, the Chat server sends a request to your app server and does not validate the response content. Post-delivery callbacks apply to messages and other events sent from you client and server apps. ## Understand the tech -According to whether the message delivery is intervened, the callbacks are divided in two categories: - -- Pre-delivery callbacks: Mainly used for content moderation. When the Chat server receives a message from the client app, it sends a request to your app server and waits for a response that decides if the message delivery is passed or rejected. Pre-delivery callbacks only apply to messages sent from your client apps. -- Post-delivery callbacks: Mainly used for data synchronization. When certain events occur, for example, a user sends out a message or gets offline, the Chat server sends a request to your app server and does not validate the response content. Post-delivery callbacks apply to messages and other events sent from you client and server apps. +**Difference between pre-delivery and post-delivery callbacks** The following table summarizes the differences between the two categories of callbacks. @@ -20,32 +17,24 @@ The following table summarizes the differences between the two categories of cal | Response required | Yes | No | | Typical use case | Content moderation | Chat history synchronization | -### Pre-delivery callbacks +**Callback security** -The following figure shows how the pre-delivery callbacks work. +For pre-delivery and post-delivery callbacks, the Chat server sends HTTP/HTTPS POST requests with JSON payloads to your app server. The requests are encoded in UTF-8 and the message in each request is signed with an MD5 signature. In each request header, the `Content-Type` field is `application/json`. -![Pre-delivery Callbacks](/images/chat/pre-delivery-callbacks.png) +For post-delivery callbacks, the message in requests is signed with an MD5 signature calculated with `org.apache.commons.codec.digest.DigestUtils#md5Hex`. -As shown in the figure, the workflow of pre-delivery callbacks is as follows: - -1. The Chat server receives a message from Client A. -2. The Chat server sends an HTTP request that contains the information of the message to your app server. -3. Your app server processes the received data and gets a result of whether the message delivery is passed or rejected. -4. Your app server sends the processing result in the form of HTTP response to the Chat server. -5. The Chat server receives the HTTP response and decides if the message delivery is passed. -6. If the message delivery is passed, the Chat server delivers the message to Client B. - -### Post-delivery callbacks +You can verify the signature to check whether the callbacks are sent from the Chat server. -As shown in the figure, the workflow of post-delivery callbacks is as follows: +1. Retrieve the following information: + - The callback ID, which is the `callId` parameter in the request body of the callback. + - The secret assigned to the callback rule. You can find it on the callback rule list on the **Callback** page on the [Agora console](https://console.agora.io/). -![Post-delivery Callbacks](/images/chat/post-delivery-callbacks.png) + ![](/images/chat/callback_secret.png) -As shown in the figure, the workflow of post-delivery callbacks is as follows: + - The callback timestamp, which is the timestamp parameter in the request body of the callback. -1. The Chat server receives a message or other event from a client or server. -2. The Chat server sends an HTTP request that contains the information of the message or event to your app server. -3. Your app server sends an HTTP response to the Chat server to indicate that the callback is received. +2. Calculate the [MD5](https://en.wikipedia.org/wiki/MD5) value of the concatenated string of the callback ID, the secret, and the callback timestamp. +3. Check if the calculated value equals to the secret parameter in the request body. If yes, the callback is sent by Agora Chat. ## Prerequisites @@ -60,7 +49,7 @@ To use the HTTP callbacks, you must meet the following requirements: To receive the HTTP callbacks, you need to configure rules for the pre- or post-delivery callbacks in Agora Console. -1. Log in to Agora Console and find your project on the Project Management page, then click the edit button. +1. Log in to Agora Console and find your project on the **Project Management** page, then click the edit button. 2. Find **Chat** on the project editing page, and click **Configure**. 3. Choose **Features** > **Callback** and click **Add Callback Address** on the **Callback** page. @@ -71,8 +60,8 @@ To receive the HTTP callbacks, you need to configure rules for the pre- or post- - Rule Name: Enter a name for the rule. Under one project, each rule must have a unique name. - Chat Type: Select the types of chat this rule applies to. - Message Type: Select the types of messages this rule applies to. - - Timeout: (Optional) Specify the time (in ms) that the Agora Chat server should wait for the HTTP responses. The default value is 200 ms. If the response times out, the Agora Chat server continues with the fallback action. - - Fallback Action: (Optional) Select the action of the Agora Chat server when the HTTP response times out or an error is returned. The default value is **Passed**. + - Timeout: (Optional) Specify the time (in ms) that the Chat server should wait for the HTTP responses. The default value is 200 ms. If the response times out, the Chat server continues with the fallback action. + - Fallback Action: (Optional) Select the action of the Chat server when the HTTP response times out or an error is returned. The default value is **Passed**. - Report Error: (Optional) Set whether to notify the message sender when their message is rejected. The default value is **No**, indicating that the sender is not notified of the message delivery failure. - Status: Set whether to enable this rule. The default value is **Enabled**. - Callback Address: Enter the URL of your app server for receiving the pre-delivery callbacks. Both HTTP and HTTPS URLs are allowed. @@ -91,62 +80,124 @@ The rules take effect immediately. Note the following for the rule configurations: -- By default, you can add four rules for the pre- and post-delivery callbacks in total. To extend the limit, contact support@agora.io. -- The rule configuration only supports message events. To receive notifications of other events, contact support@agora.io. -- If you have set both pre- and post-delivery callbacks, and a message is rejected after the pre-delivery callback returns, the post-delivery callbacks are not triggered. +- By default, you can add four rules for the pre- and post-delivery callbacks in total. To extend the limit, contact [support@agora.io](mailto:support@agora.io). +- The rule configuration only supports message events. To receive notifications of other events, contact [support@agora.io](mailto:support@agora.io). -## Next steps +## Pre-delivery callbacks -To enhance the security of the callbacks, Chat includes a signature in the request body of each callback. You can verify the signature to check whether the callbacks are sent from the Chat server. +The following figure shows how the pre-delivery callbacks work. -To verify the signature in a callback, do the following: +![](/images/chat/pre_delivery_callback.png) -1. Retrieve the following information: - - The callback ID, which is the callId parameter in the request body of the callback. - - The secret assigned to the callback rule. You can find this value on the Chat configuration page in Agora Console. - - ![1645523345319](/images/chat/callback_secret.png) - - - The callback timestamp, which is the timestamp parameter in the request body of the callback. +As shown in the figure, the workflow of pre-delivery callbacks is as follows: -2. Calculate the [MD5](https://en.wikipedia.org/wiki/MD5) value of the concated string of the callback ID, the secret, and the callback timestamp. -3. Check if the calculated value equals to the secret parameter in the request body. If yes, the callback is sent by Chat. +1. The Chat server receives a message from Client A. +2. The Chat server sends an HTTP request that contains the information of the message to your app server. +3. Your app server processes the received data and sends the processing result in the form of HTTP response to the Chat server. +4. The Chat server receives the HTTP response and decides if the message delivery is passed. +5. If the message delivery is passed, the Chat server delivers the message to Client B. + +The Chat server determines whether to send the message according to the HTTP response received from your app server. If the HTTP status code is 200 in the response, the Chat server handles the message as specified in the matching pre-delivery callback rule. If a response error occurs, including the required field `valid` being absent or fields being of an incorrect type, the Chat server handles the message as specified by **Fallback Action** in the matching pre-delivery callback rule and `custom internal error` is reported on the client (only when **Report Error** on the **Pre Send tab** page is set to **Yes** on the Agora Console). + +
    For pre-delivery callbacks, if your app server does not return the HTTP code 200 and the valid status, the Chat server does not resend the callback and takes the fallback action specified by the applicable rule.
    + +### HTTP request and response + +#### Request header + +| Field | Description | +| :------------- | :---------------------------------- | +| `Content-Type` | The parameter type. The value is `application/json`. | -## Reference +#### Request body -This sections provides the details of the HTTP requests and responses. +| Field | Type | Description | +| :---------------- | :------------------------ |:------------------------ | +| `callId` | String | The callback ID which is the unique identifier assigned to each callback. The callback ID is in the format of `{appKey}_{uuid}`, where the value of `uuid` is randomly generated. | +| `timestamp` | Number | The Unix timestamp when the Chat server receives the message, in milliseconds. | +| `chat_type` | String | The chat type:
    • `chat`: One-to-one chats.
    • `groupchat`: Chat groups and chat rooms.
    | +| `group_id` | String | The group or chat room where the message included in the request is to be sent. This parameter is valid only for group and room chats. | +| `from` | String | The user ID of the message sender. | +| `to` | String | The user ID of the message recipient. This parameter is valid only for one-to-one chats. | +| `msg_id` | String | The ID of the message for which the callback request is sent. This ID is the same as the `msg_id` generated by the Chat server when the message is sent to the recipient. | +| `payload` | JSON | The message content which matches the [content of the `payload` parameter in historical messages retrieved with the REST API](https://docs.agora.io/en/agora-chat/restful-api/message-management?platform=android#content-of-historical-messages). | +| `securityVersion`| String | The security check version which is 1.0.0. | +| `security` | String | The signature used to identify whether the HTTP callback request is from the Chat server. The signature is an MD5 hash in the format of `{callId}+{secret}+{timestamp}`, where `secret` is generated by the Chat server to produce the signature and is displayed on the callback rule list on the **Callback** page on the . | -### HTTP request +#### Response body -When certain events occur in your Chat app, the Chat server sends HTTP POST requests with JSON payloads. The character encoding is UTF-8. The Content-Type field in all HTTP request headers is `application/json`. +The HTTP responses cannot exceed 1,000 characters; otherwise, the callbacks fail as the Chat server deems the responses as attack packets. -### HTTP response +| Field | Type | Required | Description | +| :-------- | :----- | :----------------- | :----------- | +| `valid` | Boolean | Yes | Controls whether the message is appropriate according to the rules specified on your app server:
    • `true`: The message is valid and the Chat server should deliver the message;
    • `false`: The message is invalid and the Chat server should reject the message.
    | +| `code` | String | No | Custom pre-delivery callback error description on the client. The value of the `code` field is displayed as the error on the client only when **Report Error** on the **Pre Send** tab page is set to **Yes** on the Agora Console. Callback errors are displayed as follows on the client:
    • If `code` contains the content of the string type, the content is reported as the error;
    • If `code` is not included in the response, `custom logic denied` is displayed.
    • If `code` is returned as an empty string, `Message blocked by external logic` is displayed on a mobile client;
    • If no response is received within the specified period, the default error `custom internal error` is reported.
    • If a response error occurs, including the `valid` field being absent or fields being of an incorrect type, `custom internal error` is reported.
    | +| `payload` | Object | No | The modified message content.
    Currently, only the text content is allowed. The modified content must be in the same format as the original message and cannot exceed 1 KB. If it is unnecessary to modify the message, ignore this field. | -For the pre-delivery callbacks, the Chat server accepts HTTP responses that contain a JSON body as in the following example: +#### Request example + +```shell +{ + "callId":"easemob-demo#test_XXXX-dp01-6c50-XXXX-cf3b48b20e7e", + "timestamp":1600060847294, + "chat_type":"groupchat", + "group_id":"16934809238921545", + "from":"user1", + "to":"user2", + "msg_id":"8924312242322", + "payload":{ + // Message content + }, + "securityVersion":"1.0.0", + "security":"2ca02c394bef9e7abc83958bcc3156d3" +} +``` + +#### Response example ```json { - "valid": true, - "code": "HX:10000" + "valid": true, + "code": "HX:10000", + "payload": { + // Modified message content. + // Only text contents are allowed. + } } ``` -- `valid`: Boolean. Whether the message is valid according to the processing result on your app server: - - true: The message is valid and the Chat server should deliver the message. - - false: The message is invalid and the Chat server should reject the message. -- `code`: String. Custom information. +## Post-delivery callbacks + +The workflow of post-delivery callbacks is as follows: + +![](/images/chat/post_delivery_callback.png) + +As shown in the figure, the workflow of post-delivery callbacks is as follows: + +1. The Chat server receives a message or other event from a client or server. +2. The Chat server sends an HTTP request that contains the information of the message or event to your app server. +3. Your app server sends an HTTP response to the Chat server to indicate that the callback is received. + +If you have set both pre- and post-delivery callbacks, and a message is rejected after the pre-delivery callback returns, the post-delivery callbacks are not triggered. + +For post-delivery callback request examples, see [event callbacks](../reference/callbacks-events). + +The Chat server places full trust in callback responses received from your app server without verifying them. As long as the returned HTTP status code is 200, the Chat server regards that the callback succeeds. + +Responses to the requests cannot exceed 1,000 characters; otherwise, the callbacks fail as the Chat server deems the responses as attack packets. + +**Retry logic** -For the post-delivery callbacks, ensure that the response content does not exceed 1,000 characters. +For post-delivery callbacks, the Chat server records a notification failure and tries resending the callback once again. If the second attempt fails, the Chat server stops trying. -### Retry logic +If 90 notification failures occur in 30 seconds, the callback rules involving the app server will be temporarily disabled for 5 minutes. -- For pre-delivery callbacks, if your app server does not return the HTTP code 200 and the valid status, the Chat server does not resend the callback and takes the fallback action specified by the applicable rule. +## Status codes -- For post-delivery callbacks, the Chat server records a notification failure and tries resending the callback once in one of the following situations: +For details, see [HTTP Status Codes](../reference/http-status-codes). - - Your server does not respond in 60 seconds. - - The HTTP status code received from your server is not 200. +## FAQ -If the second try fails, the Chat server stops trying. +Q: Why is the message delivered to the intended recipient even though the value of the `valid` field is `false` in the pre-delivery callback response? -If 90 notification failures occur in 30 seconds, the corresponding callback rule is automatically turned off for five minutes. (To query and resend the missed notifications, use the Callback APIs.) \ No newline at end of file +A: Maybe your server fails to return the pre-delivery callback response within the period specified with the **Timeout** parameter in the pre-delivery callback rule on the **Pre Send** page on the . In this case, the message is delivered if **Fallback Action** on the **Pre Send** page page is set to **Passed**. To avoid this issue, you are advised to increase the value of the **Timeout** parameter (200 milliseconds by default), for example, to 1000 milliseconds. diff --git a/shared/cloud-gateway/overview/_product-overview.mdx b/shared/cloud-gateway/overview/_product-overview.mdx index 68575d617..073a7b572 100644 --- a/shared/cloud-gateway/overview/_product-overview.mdx +++ b/shared/cloud-gateway/overview/_product-overview.mdx @@ -37,7 +37,7 @@ The Gateway Server SDK supports the following architectures: - arm64 - x86-64 -If you need to use the SDK on other architectures, contact sales@agora.io. +If you need to use the SDK on other architectures, contact support@agora.io. ## Application scenarios diff --git a/shared/common/_channel-management-api.mdx b/shared/common/_channel-management-api.mdx index 6e3df83fa..808e68a20 100644 --- a/shared/common/_channel-management-api.mdx +++ b/shared/common/_channel-management-api.mdx @@ -87,7 +87,6 @@ A user who is kicked out of a channel (that is when you set `privileges` as `joi - Unity: The `OnConnectionStateChangedHandler` callback reports `CONNECTION_CHANGED_BANNED_BY_SERVER(3)`. - React Native: The `ConnectionStateChanged` callback reports `BannedByServer(3)`. - Flutter: The `ConnectionStateChanged` callback reports `BannedByServer(3)`. -- Cocos Creator: The `onConnectionStateChanged` callback reports `CONNECTION_CHANGED_BANNED_BY_SERVER(3)`. #### Prototype diff --git a/shared/common/project-setup/electron.mdx b/shared/common/project-setup/electron.mdx index c6bd811f2..e4a9ad86f 100644 --- a/shared/common/project-setup/electron.mdx +++ b/shared/common/project-setup/electron.mdx @@ -19,4 +19,4 @@ npm i agora-electron-sdk ``` Make sure the path to your project folder does not contain any spaces. This might cause error during the installation. - + \ No newline at end of file diff --git a/shared/interactive-whiteboard/qps-pricing.mdx b/shared/interactive-whiteboard/qps-pricing.mdx index 3fc59799a..8ba4d71a3 100644 --- a/shared/interactive-whiteboard/qps-pricing.mdx +++ b/shared/interactive-whiteboard/qps-pricing.mdx @@ -39,7 +39,7 @@ The unit prices are as follows: By default, the file conversion feature provided by processes one file conversion request per second, that is, the queries per second (QPS) value equals 1, and billing for this feature is based on the number of pages successfully converted. -If the default QPS value does not meet your needs because your whiteboard project requires a larger number of concurrent conversion requests per second, you can contact [sales@agora.io](mailto:sales@agora.io) to adjust the project's QPS configurations and start QPS-based billing. +If the default QPS value does not meet your needs because your whiteboard project requires a larger number of concurrent conversion requests per second, you can contact [support@agora.io](mailto:support@agora.io) to adjust the project's QPS configurations and start QPS-based billing. ## Cost calculation @@ -55,7 +55,7 @@ Note the following: This section illustrates how calculates the cost for file conversion using QPS-based pricing. -Suppose that you have enabled the file conversion feature in the Hangzhou data center for whiteboard project A, and that the file conversion feature in other data centers for the same project remains disabled. You expect a surge in concurrent file conversion requests from said project. Therefore, you send the following information to [sales@agora.io](mailto:sales@agora.io) to request adjustments to the project's QPS configurations: +Suppose that you have enabled the file conversion feature in the Hangzhou data center for whiteboard project A, and that the file conversion feature in other data centers for the same project remains disabled. You expect a surge in concurrent file conversion requests from said project. Therefore, you send the following information to [support@agora.io](mailto:support@agora.io) to request adjustments to the project's QPS configurations: - The App Identifier for whiteboard project A. - Data center: Hangzhou, China. @@ -94,7 +94,7 @@ After the new configuration takes effect, the QPS-based file conversion charges -Now suppose that this QPS configuration soon proves to be insufficient for your business needs, so you contact [sales@agora.io](mailto:sales@agora.io) once again to increase the QPS value for file conversion to images from 5 to 11, and you request that this change take effect on April 11. +Now suppose that this QPS configuration soon proves to be insufficient for your business needs, so you contact [support@agora.io](mailto:support@agora.io) once again to increase the QPS value for file conversion to images from 5 to 11, and you request that this change take effect on April 11. In this case, Agora takes the changing value of QPS value into account when calculating the file conversion charges for April as follows: @@ -146,7 +146,7 @@ If you decide to apply for QPS-based billing for the file conversion of your whi ### Configure the QPS -When contacting [sales@agora.io](mailto:sales@agora.io) to configure QPS-based billing, you need to provide the following information: +When contacting [support@agora.io](mailto:support@agora.io) to configure QPS-based billing, you need to provide the following information: - The App Identifier of the whiteboard project whose QPS needs to be adjusted. For details, see [Get security credentials for your whiteboard project](../develop/enable-whiteboard#get-security-credentials-for-your-whiteboard-project). diff --git a/shared/interactive-whiteboard/uikit-sdk/android.mdx b/shared/interactive-whiteboard/uikit-sdk/android.mdx index a30c8e805..13097e9c3 100644 --- a/shared/interactive-whiteboard/uikit-sdk/android.mdx +++ b/shared/interactive-whiteboard/uikit-sdk/android.mdx @@ -107,7 +107,7 @@ Data center, containing the following enumeration values: - `IN_MUM`: Mumbai, India, the service area covers India. -- `EU`: London, UK, the service area covers Europe. +- `EU`: Frankfurt, Germany, the service area covers Europe. ### FastUserPayload diff --git a/shared/interactive-whiteboard/uikit-sdk/ios.mdx b/shared/interactive-whiteboard/uikit-sdk/ios.mdx index 2adb382ea..cd4aaf418 100644 --- a/shared/interactive-whiteboard/uikit-sdk/ios.mdx +++ b/shared/interactive-whiteboard/uikit-sdk/ios.mdx @@ -55,7 +55,7 @@ Data center, containing the following enumerations: - `US`: Silicon Valley, USA, service area covers North America and South America. - `SG`: Singapore, the service area covers Singapore, East Asia, and Southeast Asia. - `IN`: Mumbai, India, service area covers India. -- `GB`: London, UK, service area covers Europe. +- `EU`: Frankfurt, Germany, the service area covers Europe. #### FastUserPayload diff --git a/shared/interactive-whiteboard/uikit-sdk/web.mdx b/shared/interactive-whiteboard/uikit-sdk/web.mdx index 3d516fdea..a75fb7973 100644 --- a/shared/interactive-whiteboard/uikit-sdk/web.mdx +++ b/shared/interactive-whiteboard/uikit-sdk/web.mdx @@ -486,7 +486,7 @@ This method deletes all buttons in the extension center, but does not delete the - `us-sv`: Silicon Valley, United States, which provides services to North America and South America. - `sg`: Singapore, which provides services to Singapore, East Asia, and Southeast Asia. - `in-mum`: Mumbai, India, which provides services to India. - - `gb-lon`: London, United Kingdom, which provides services to Europe. + - `eu`: Frankfurt, Germany, which provides services to Europe. - `joinRoom`: (Required) Object. Parameters for joining a room: - `uid`: String. The unique identifier of a user in string format. The maximum length is 1,024 bytes. Ensure that the `uid` of each user in the same room is unique. - `uuid`: String. The room UUID, that is, the unique identifier of a room. See the value of the `uuid` parameter in the response body after a successful call of [Create a room (POST)](/interactive-whiteboard/reference/whiteboard-api/room-management#create-a-room-post). diff --git a/shared/iot/develop/_licensing.mdx b/shared/iot/develop/_licensing.mdx index feb3e1b89..9c8704a5f 100644 --- a/shared/iot/develop/_licensing.mdx +++ b/shared/iot/develop/_licensing.mdx @@ -12,7 +12,7 @@ The following figure shows the overall process of using an device Follow the steps below to add a license to your devices. ### Apply for a license -To apply for a license, contact sales-us@agora.io and provide the following information: +To apply for a license, contact support@agora.io and provide the following information: | Name | Description | |------|------------------------| @@ -133,7 +133,7 @@ To facilitate development and testing, Agora offers the following types of licen Best practice is to use a trial license before the product is officially launched. To switch to a commercial license, follow these steps: -1. Contact sales-us@agora.io to apply for a commercial license. After successfully applying for a license, you can check the PID of the license in the **License Usage** page of the . +1. Contact support@agora.io to apply for a commercial license. After successfully applying for a license, you can check the PID of the license in the **License Usage** page of the . 1. Call the activation API to activate a new license and pass in the PID of the new license and the `licenseKey` which is consistent with the old license. 1. Write and read a new license to the device. 1. Call the initialization method of the SDK with the new license. diff --git a/shared/media-gateway/get-started/_quickstart.mdx b/shared/media-gateway/get-started/_quickstart.mdx index 61be438f9..64a7525f3 100644 --- a/shared/media-gateway/get-started/_quickstart.mdx +++ b/shared/media-gateway/get-started/_quickstart.mdx @@ -1,4 +1,4 @@ - enables users to push content to using standard streaming + enables users to push content to using standard streaming protocols such as RTMP and SRT. The channel host automatically publishes this streamed content to the correct channel. Possible use cases are: @@ -19,19 +19,19 @@ interruptions if the host leaves the channel. ## Understand the tech -Using [ RESTful API](../../api-reference?platform=rest), you generate a streaming key. This key allows you to push online media streams as live video source streams into Agora channels. +Using [ RESTful API](../../api-reference?platform=rest), you generate a streaming key. This key allows you to push online media streams as live video source streams into Agora channels. ![Flow diagram](/images/media-gateway/media-gateway-flow.svg) -With , you can employ advanced transcoding capabilities on media streams for enhanced distribution. To enable and configure transcoding options, you use the [ RESTful API](../../api-reference?platform=rest). When transcoding is enabled, you can set parameters such as resolution, frame rate, bit rate, and whether to enable video streams with high and low resolutions. +With , you can employ advanced transcoding capabilities on media streams for enhanced distribution. To enable and configure transcoding options, you use the [ RESTful API](../../api-reference?platform=rest). When transcoding is enabled, you can set parameters such as resolution, frame rate, bit rate, and whether to enable video streams with high and low resolutions. ## Setup -To activate the , contact [Agora support](mailto:support@agora.io). When you activate , you specify your access area to optimize the transmission quality of the media stream. +To activate the , contact [Agora support](mailto:support@agora.io). When you activate , you specify your access area to optimize the transmission quality of the media stream. ## Implementation -The [ RESTful API](../../api-reference?platform=rest) supports the following interfaces: +The [ RESTful API](../../api-reference?platform=rest) supports the following interfaces: | API | Description | |:----|:------------------------| @@ -40,9 +40,9 @@ The [ RESTful API](../../api-reference?platform=rest) supports t | `Query` | Query information about stream keys, such as the bound UID, the bound channel name, and validity. | | `Delete` | Destroy a stream key. | -To use the RESTful API and obtain the relevant code, refer to the [API reference](../../api-reference?platform=rest). If you need to push multiple streams to the same channel, use a unique uid to generate each stream key. +To use the RESTful API and obtain the relevant code, refer to the [API reference](../../api-reference?platform=rest). If you need to push multiple streams to the same channel, use a unique uid to generate each stream key. -The stream key generation method depends on whether you use the Agora domain name or a custom domain name. To use the Agora domain name, create a stream key using the [ RESTful API](../../api-reference?platform=rest). +The stream key generation method depends on whether you use the Agora domain name or a custom domain name. To use the Agora domain name, create a stream key using the [ RESTful API](../../api-reference?platform=rest). #### Generate the stream key locally @@ -97,7 +97,7 @@ console.log(`streamkey is ${streamkey}`); ## Test Media Gateway -This section shows you how to test Agora using [OBS Studio](https://obsproject.com/), a free and open-source, cross-platform streaming app. Take the following steps to start streaming using OBS Studio: +This section shows you how to test Agora using [OBS Studio](https://obsproject.com/), a free and open-source, cross-platform streaming app. Take the following steps to start streaming using OBS Studio: 1. [Download](https://obsproject.com/download) and install OBS studio. @@ -123,7 +123,7 @@ This section shows you how to test Agora using [OBS Studio](htt To use your own domain name, please contact [Agora technical support](mailto:support@agora.io) for configuration. - * **Stream key**: A valid stream key, acquired using the [ RESTful API](../../api-reference?platform=rest) or generated locally, that corresponds to your server domain name. + * **Stream key**: A valid stream key, acquired using the [ RESTful API](../../api-reference?platform=rest) or generated locally, that corresponds to your server domain name. 1. Set streaming options to avoid B-frames in source streams: @@ -155,7 +155,7 @@ This section shows you how to test Agora using [OBS Studio](htt You see a video stream displayed in the channel, with the `uid` you used to generate the stream key. -1. Use the `Configure`, `Query`, and `Delete` [ RESTful API](../../api-reference?platform=rest) interfaces to manage your stream. +1. Use the `Configure`, `Query`, and `Delete` [ RESTful API](../../api-reference?platform=rest) interfaces to manage your stream. ## Reference @@ -163,11 +163,11 @@ This section contains information that completes the information in this page, o ### REST API -Refer to the [ RESTful API](../../api-reference?platform=rest) for parameter details and to obtain the calling code for your platform. +Refer to the [ RESTful API](../../api-reference?platform=rest) for parameter details and to obtain the calling code for your platform. ### Supported formats and protocosl - supports the following media streaming formats and protocols: + supports the following media streaming formats and protocols: * Video codec: H.264, H.265 * Audio codec: AAC, OPUS diff --git a/shared/media-gateway/reference/_best-practice.mdx b/shared/media-gateway/reference/_best-practice.mdx index e4406260f..27b9199d5 100644 --- a/shared/media-gateway/reference/_best-practice.mdx +++ b/shared/media-gateway/reference/_best-practice.mdx @@ -1,10 +1,10 @@ import SwitchDomainName from '@docs/shared/common/_switch-domain-name.mdx'; -This document presents the best practice to reliably integrate in your app. Before reading this document, follow the [ quickstart](../get-started/quickstart) to understand the basic process of using . +This document presents the best practice to reliably integrate in your app. Before reading this document, follow the [ quickstart](../get-started/quickstart) to understand the basic process of using . ## API call limits -The Agora server limits the call rate of the API, and returns the `429 (Too Many Requests)` status code when the limit rate is exceeded. If you have higher call rate requirements, please contact [Agora technical support](mailto:support@agora.io). +The Agora server limits the call rate of the API, and returns the `429 (Too Many Requests)` status code when the limit rate is exceeded. If you have higher call rate requirements, please contact [Agora technical support](mailto:support@agora.io). | API | Calling rate limit per project | |:----|:-----------------------------| @@ -42,11 +42,11 @@ Implement the following best practice: ## Troubleshooting checklist -Refer to the following checklist to quickly confirm if each integration requirement for ensuring the connectivity and reliability of the service has been met. +Refer to the following checklist to quickly confirm if each integration requirement for ensuring the connectivity and reliability of the service has been met. | # | Importance | Check | |:--|:-----------|:------------| -| 1 | required | The service has been enabled for your App ID. | +| 1 | required | The service has been enabled for your App ID. | | 2 | required | The API call rate is below the maximum limit. See [API Call Limits](#api-call-limits) for details. | | 3 | required | The number of concurrent tasks in a project is less than 50. For details, see the [maximum number of concurrent tasks](#maximum-number-of-concurrent-tasks). | | 4 | required |
    • The `region` is set to the geographical region of your media stream source.
    • The `region` code is in lowercase.
    | diff --git a/shared/media-gateway/reference/_release-notes.mdx b/shared/media-gateway/reference/_release-notes.mdx index 6e9649748..9168e1490 100644 --- a/shared/media-gateway/reference/_release-notes.mdx +++ b/shared/media-gateway/reference/_release-notes.mdx @@ -1,4 +1,4 @@ -This page provides the release notes for . +This page provides the release notes for . ## 2023.07 diff --git a/shared/media-pull/reference/_restful-api.mdx b/shared/media-pull/reference/_restful-api.mdx index be97a7aac..f8ae14cde 100644 --- a/shared/media-pull/reference/_restful-api.mdx +++ b/shared/media-pull/reference/_restful-api.mdx @@ -558,4 +558,4 @@ This section summarizes some important considerations when using the tasks are allowed to run simultaneously for each project. You can contact [sales@agora.io](mailto:sales@agora.io) to get a higher quota. | ★★★★☆ | +| The default maximum number of concurrent tasks is 20, which means that a maximum of 20 tasks are allowed to run simultaneously for each project. You can contact [support@agora.io](mailto:support@agora.io) to get a higher quota. | ★★★★☆ | diff --git a/shared/signaling/beginners-guide/index.mdx b/shared/signaling/beginners-guide/index.mdx index 3e0791918..b3068dd3a 100644 --- a/shared/signaling/beginners-guide/index.mdx +++ b/shared/signaling/beginners-guide/index.mdx @@ -24,7 +24,50 @@ To learn more about specific scenarios, [contact](mailto:rtm-support@agora.io) the team. -## How to get started? +## Enable in + +Before using , you need to enable it for each app ID in and configure its main features. + +Take these steps in the new version of . If you are using the old one, switch to the new version by clicking **Switch to the new version** at the top of the screen. + +### Enable + +1. Select your project on the Projects page and click the corresponding pencil icon to configure it. + + ![configure_project](/images/signaling/configure_project.png) + +1. Go to **All features** > **Signaling** > **Basic information** and select a data center in the dropdown. + + ![project_settings_signaling](/images/signaling/project_settings_signaling.png) + +1. Go to **Subscriptions** > **Signaling** and subscribe to a plan. + + ![signaling-pricing-page](/images/signaling/signaling-pricing-plans.png) + + Once subscribed, you will be able to unsubscribe from the same page. + +### Configure features + +1. Go to **All features** > **Signaling** > **Presence Configuration** and configure the following: + + - Maximum number of instant events + - Timed event notification interval + - Event notification debounce time + + ![signaling-presence-configuration](/images/signaling/signaling-presence-configuration.png) + +1. Go to **All features** > **Signaling** > **Storage Configuration** and toggle the following: + + - Using storage + - User attribute callback + - Channel attribute callback + - Distributed lock + + ![signaling-storage-configuration](/images/signaling/signaling-storage-configuration.png) + +1. [Raise a support ticket](https://agora-ticket.agora.io/) to activate the Stream Channel, if necessary. The support team confirms activation through a ticket update. + +## Getting started Browse the following documents for more information or to get started with integration quickly: diff --git a/shared/signaling/limitations/android.mdx b/shared/signaling/limitations/android.mdx deleted file mode 100644 index 571b86a0e..000000000 --- a/shared/signaling/limitations/android.mdx +++ /dev/null @@ -1,45 +0,0 @@ - - - -## Call limit - -The call limit is for one RtmClient instance. If an operation corresponds to multiple methods, the number of the method calls of an operation equals the sum of the method calls of all corresponding methods in a specific time frame. - -
    You can increase the call limit of an API by creating multiple RtmClient instances.
    - -| Operation | Method | Call limit | -| ----------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------ | -| Log in the | login | 2 calls per second | -| Retrieve member count of specified channel(s) | getChannelMemberCount | 1 call per second | -| Join a different channel each time | join | 50 calls every 3 seconds | -| Join the same channel each time | join | 2 calls every 5 seconds | -| Send messages |
  • sendMessageToPeer
  • sendMessageToPeer
  • sendMessage
  • sendMessage
  • | 180 calls every three seconds | -| Retrieve a member list of the channel | getMembers | 5 calls every 2 seconds | -| Renew the token| RtmClient.renewToken | 2 calls per second | -| Query the online status of the specified users | queryPeersOnlineStatus | 10 calls every 5 seconds | -| Set user attributes |
  • setLocalUserAttributes
  • addOrUpdateLocalUserAttributes
  • deleteLocalUserAttributesByKeys
  • clearLocalUserAttributes
  • | 10 calls every 5 seconds | -| Get user attributes |
  • getUserAttributes
  • getUserAttributesByKeys
  • | 40 calls every 5 seconds | -| Set channel attributes |
  • setChannelAttributes
  • addOrUpdateChannelAttributes
  • deleteChannelAttributesByKeys
  • clearChannelAttributes
  • | 10 calls every 5 seconds | -| Get channel attributes |
  • getChannelAttributes
  • getChannelAttributesByKeys
  • | 10 calls every 5 seconds | -| Subscribes to the online status of the specified user(s) | subscribePeersOnlineStatus | 10 calls every 5 seconds | -| Unsubscribes from the online status of the specified user(s) | unsubscribePeersOnlineStatus | 10 calls every 5 seconds | -| Gets a list of the peers, to whose specific status you have subscribed. | queryPeersBySubscriptionOption | 10 calls every 5 seconds | - - - -## String size - -- The maximum size of a peer-to-peer or channel message is 32 KB. See RtmMessage.setText. -- The maximum size of the content in a call invitation is 8 KB. See LocalInvitation.setContent. -- The maximum size of the response in a call invitation is 8 KB. See RemoteInvitation.setResponse. - -## Encoding - -- Channel and peer-to-peer messages, invitation content, and invitation response must be in UTF-8 format. -- The `filePath` parameter of the following methods must be in UTF-8 format: - - createFileMessageByUploading - - createImageMessageByUploading - - downloadMediaToFile - - -
    \ No newline at end of file diff --git a/shared/signaling/limitations/cpp-x-platform.mdx b/shared/signaling/limitations/cpp-x-platform.mdx deleted file mode 100644 index 15cb1293b..000000000 --- a/shared/signaling/limitations/cpp-x-platform.mdx +++ /dev/null @@ -1,43 +0,0 @@ - -## Call limit - -The call limit is for one IRtmService instance. If an operation corresponds to multiple methods, the number of the method calls of an operation equals the sum of the method calls of all corresponding methods in a specific time frame. - -You can increase the call limit of an API by creating multiple IRtmService instances. - -| Operation | Method | Call limit | -| ----------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------ | -| Log in to the | login | 2 calls per second | -| Retrieve member count of specified channels | getChannelMemberCount | 1 call per second | -| Join a different channel each time | join | 50 calls every 3 seconds | -| Join the same channel each time | join | 2 calls every 5 seconds | -| Send messages |
  • sendMessageToPeer
  • sendMessageToPeer
  • sendMessage
  • sendMessage
  • | 180 calls every three seconds | -| Retrieve a member list of the channel | getMembers | 5 calls every 2 seconds | -| Renew the token| renewToken | 2 calls per second | -| Query the online status of the specified users | queryPeersOnlineStatus | 10 calls every 5 seconds | -| Set user attributes |
  • setLocalUserAttributes
  • addOrUpdateLocalUserAttributes
  • deleteLocalUserAttributesByKeys
  • clearLocalUserAttributes
  • | 10 calls every 5 seconds | -| Get user attributes |
  • getUserAttributes
  • getUserAttributesByKeys
  • | 40 calls every 5 seconds | -| Set channel attributes |
  • setChannelAttributes
  • addOrUpdateChannelAttributes
  • deleteChannelAttributesByKeys
  • clearChannelAttributes
  • | 10 calls every 5 seconds | -| Get channel attributes |
  • getChannelAttributes
  • getChannelAttributesByKeys
  • | 10 calls every 5 seconds | -| Subscribe to the online status of the specified users | subscribePeersOnlineStatus | 10 calls every 5 seconds | -| Unsubscribe from the online status of the specified users | unsubscribePeersOnlineStatus | 10 calls every 5 seconds | -| Get a list of the peers whose status you have subscribed to | queryPeersBySubscriptionOption | 10 calls every 5 seconds | - - - - -## String size - -- The maximum size of a peer-to-peer or channel message is 32 KB. See [`IMessage.setText. -- The maximum size of the content in a call invitation is 8 KB. See [`ILocalCallInvitation.setContent. -- The maximum size of the response in a call invitation is 8 KB. See [`IRemoteCallInvitation.setResponse. - -## Encoding - -- Channel and peer-to-peer messages, the invitation content, and the invitation response must be in UTF-8 format. -- The `filePath` parameter of the following methods must be in UTF-8 format: -- createFileMessageByUploading -- createImageMessageByUploading -- downloadMediaToFile - - diff --git a/shared/signaling/limitations/cpp.mdx b/shared/signaling/limitations/cpp.mdx deleted file mode 100644 index 3c8024b7e..000000000 --- a/shared/signaling/limitations/cpp.mdx +++ /dev/null @@ -1,7 +0,0 @@ -import Text from './cpp-x-platform.mdx'; - - - - - - \ No newline at end of file diff --git a/shared/signaling/limitations/index.mdx b/shared/signaling/limitations/index.mdx index 8fce423be..91a0cb07f 100644 --- a/shared/signaling/limitations/index.mdx +++ b/shared/signaling/limitations/index.mdx @@ -1,16 +1,8 @@ -import Android from './android.mdx'; -import Ios from './ios.mdx'; -import Linux from './linux.mdx'; -import Macos from './macos.mdx'; -import Unity from './unity.mdx'; -import Web from './web.mdx'; -import Windows from './windows.mdx'; - ## API call limit Unless otherwise specified below, limit the API call frequency by a single client to 20 calls per second. If the number of calls per second exceeds 20, some calls are ignored by the SDK. If you need to call more APIs per second, contact [rtm@agora.io](mailto:rtm@agora.io). -### General +## General | Item | Soft limit | Hard limit | Comments | |:---:|:---:|:---:|:---:| @@ -20,7 +12,7 @@ Unless otherwise specified below, limit the API call frequency by a single clien | Number of stream channels per app ID | Unlimited | N/A | Channel resources are public, users can take them as needed. | | User ID length | 64 ASCII characters | 64 ASCII characters | Exceeding the soft limit produces an error. | -### Message channel +## Message channel | Item | Soft limit | Hard limit | Comments | |:---:|:---:|:---:|:---:| @@ -32,7 +24,7 @@ Unless otherwise specified below, limit the API call frequency by a single clien | Channel name length | 64 ASCII characters | 64 ASCII characters | Exceeding the soft limit produces an error. | | Custom message type length | 32 ASCII characters | 32 ASCII characters | Exceeding the soft limit produces an error. | -### Stream channel +## Stream channel | Item | Soft limit | Hard limit | Comments | |:---:|:---:|:---:|:---:| @@ -42,7 +34,7 @@ Unless otherwise specified below, limit the API call frequency by a single clien | Number of topics per channel | Unlimited | N/A | | | Channel name length | 64 ASCII characters | 64 ASCII characters | Exceeding the soft limit produces an error. | -### Topic +## Topic | Item | Soft limit | Hard limit | Comments | |:---:|:---:|:---:|:---:| @@ -52,10 +44,10 @@ Unless otherwise specified below, limit the API call frequency by a single clien | Number of users subscribed to a topic by a client | 64 | 64 | A single client can subscribe up to 64 user IDs to a single topic. Exceeding the soft limit produces an error. | | Number of publishers in a topic | Unlimited | N/A | | | Topic name length | 8 ASCII characters | 8 ASCII characters | The topic name length will be extended to 64 ASCII characters in future releases. | -| Message packet size | 32 KB | 32 KB | Exceeding the soft limit produces an error. To change the limit, contact [rtm@agora.io](mailto:rtm@agora.io). | +| Message packet size | 1 KB | 1 KB | Exceeding the soft limit produces an error. To change the limit, contact [rtm@agora.io](mailto:rtm@agora.io). | | Custom message type length | 32 ASCII characters | 32 ASCII characters | Exceeding the soft limit produces an error. | -### Presence +## Presence | Item | Soft limit | Hard limit | Comments | |:---:|:---:|:---:|:---:| @@ -63,7 +55,7 @@ Unless otherwise specified below, limit the API call frequency by a single clien | Number of temporary user state key/value pairs | 32 pairs | 32 pairs | Exceeding the soft limit produces an error. | | Number of temporary user states cached before joining the channel | 100 | 100 | Exceeding the soft limit produces an error. | -### Storage +## Storage | Item | Soft limit | Hard limit | Comments | |:---:|:---:|:---:|:---:| @@ -77,7 +69,7 @@ Unless otherwise specified below, limit the API call frequency by a single clien | Number of channel metadata sets per app ID | 1 million | N/A | | | Number of user metadata sets per app ID | 1 million | N/A | To change the limit, contact [rtm@agora.io](mailto:rtm@agora.io). | -### Lock +## Lock | Item | Soft limit | Hard limit | Comments | |:---:|:---:|:---:|:---:| @@ -88,18 +80,9 @@ Unless otherwise specified below, limit the API call frequency by a single clien | Number of locks per app ID | 1 million | N/A | Exceeding the soft limit produces an error. To change the limit, contact [rtm@agora.io](mailto:rtm@agora.io). | | Lock acquisition API call frequency | 10 times/sec | N/A | | -## String size - -The maximum size of the response in a call invitation is 8 KB. - -## Unicode support - -Supports channel and peer-to-peer messages, invitation content, and invitation response in UTF-8 only. +## Miscellaneous - - - - - - - +- The number of RESTful API requests per second per app ID are limited to 500. To extend the limit, contact support@agora.io. +- The max number of concurrent users is 50,000. To extend the limit, contact support@agora.io. +- The max number of daily active users is 500,000. To extend the limit, contact support@agora.io. +- The max number of users in a single channel is 50,000. To extend the limit, contact support@agora.io. diff --git a/shared/signaling/limitations/ios.mdx b/shared/signaling/limitations/ios.mdx deleted file mode 100644 index 749714b1c..000000000 --- a/shared/signaling/limitations/ios.mdx +++ /dev/null @@ -1,8 +0,0 @@ -import Text from './oc.mdx'; - - - - - - - \ No newline at end of file diff --git a/shared/signaling/limitations/java.mdx b/shared/signaling/limitations/java.mdx deleted file mode 100644 index 659a4fcf3..000000000 --- a/shared/signaling/limitations/java.mdx +++ /dev/null @@ -1,45 +0,0 @@ - - -## API call limit - -The call limit is for one RtmClient instance. If an operation corresponds to multiple methods, the number of the method calls of an operation equals the sum of the method calls of all corresponding methods in a specific time frame. - -You can increase the call limit of an API by creating multiple RtmClient instances. - -| Function | Method | Call limit | -| -------------------------------------------------- | ------------------------------------------------------------ | ------------------------------- | -| Log in to the | login | Two calls per second | -| Retrieve member count of specified channels | getChannelMemberCount | One call per second | -| Join a different channel each time | join | 50 calls every three seconds | -| Join the same channel each time | join | Two calls every five seconds | -| Send messages |
  • sendMessageToPeer
  • sendMessageToPeer
  • sendMessage
  • | 1,500 calls every three seconds | -| Retrieve a member list of the channel | getMembers | Five calls every two seconds | -| Renew the token | renewToken | Two calls per second | -| Query the online status of the specified users | queryPeersOnlineStatus | 100 calls every five seconds. | -| Set user attributes |
  • setLocalUserAttributes
  • addOrUpdateLocalUserAttributes
  • deleteLocalUserAttributesByKeys
  • clearLocalUserAttributes
  • | 100 calls every five seconds | -| Get user attributes |
  • getUserAttributes
  • getUserAttributesByKeys
  • | 400 calls every 5 seconds | -| Set channel attributes |
  • setChannelAttributes
  • addOrUpdateChannelAttributes
  • deleteChannelAttributesByKeys
  • clearChannelAttributes
  • | 100 calls every five seconds | -| Get channel attributes |
  • getChannelAttributes
  • getChannelAttributesByKeys
  • | 400 calls every five seconds | -| Subscribe to the online status of the specified users | subscribePeersOnlineStatus | 10 calls every five seconds. | -| Unsubscribe from the online status of the specified users | unsubscribePeersOnlineStatus | 10 calls every five seconds. | -| Get a list of the peers, to whose specific status you have subscribed | queryPeersBySubscriptionOption | 10 calls every five seconds. | - - -## String size - -- The maximum size of a peer-to-peer or channel message is 32 KB. See RtmMessage.setText. -- The maximum size of the content in a call invitation is 8 KB. See LocalInvitation.setContent. -- The maximum size of the response in a call invitation is 8 KB. See RemoteInvitation.setResponse. - -## Unicode support - -- Channel and peer-to-peer messages, invitation content, and invitation response must be in UTF-8 format. -- The `filePath` parameter of the following methods must be in UTF-8 format: - - createFileMessageByUploading - - createImageMessageByUploading - - downloadMediaToFile - - - -
    - diff --git a/shared/signaling/limitations/linux.mdx b/shared/signaling/limitations/linux.mdx deleted file mode 100644 index 1ddfabea7..000000000 --- a/shared/signaling/limitations/linux.mdx +++ /dev/null @@ -1,7 +0,0 @@ -import CPP from './cpp.mdx'; -import JAVA from './java.mdx'; - - - - - diff --git a/shared/signaling/limitations/macos.mdx b/shared/signaling/limitations/macos.mdx deleted file mode 100644 index 6b5fc83fb..000000000 --- a/shared/signaling/limitations/macos.mdx +++ /dev/null @@ -1,8 +0,0 @@ -import Text from './oc.mdx'; - - - - - - - \ No newline at end of file diff --git a/shared/signaling/limitations/oc.mdx b/shared/signaling/limitations/oc.mdx deleted file mode 100644 index 09f0af9b0..000000000 --- a/shared/signaling/limitations/oc.mdx +++ /dev/null @@ -1,42 +0,0 @@ - -## Call limit - -The call limit is for one AgoraRtmKit instance. If an operation corresponds to multiple methods, the number of the method calls of an operation equals the sum of the method calls of all corresponding methods in a specific time frame. - -
    You can increase the call limit of an API by creating multiple AgoraRtmKit instances.
    - -| Operation | Method | Call limit | -| ----------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------ | -| Log in to the | loginByToken | 2 calls per second | -| Retrieve member count of specified channels | getChannelMemberCount | 1 call per second | -| Join a different channel each time | joinWithCompletion | 50 calls every 3 seconds | -| Join the same channel each time | joinWithCompletion | 2 calls every 5 seconds | -| Send messages|
  • sendMessage
  • sendMessage
  • sendMessage
  • sendMessage
  • | 180 calls every three seconds | -| Retrieve a member list of the channel | getMembersWithCompletion: | 5 calls every 2 seconds | -| Renew the token | renewToken | 2 calls per second | -| Query the online status of the specified users. | queryPeersOnlineStatus | 10 calls every 5 seconds | -| Set user attributes |
  • setLocalUserAttributes
  • addOrUpdateLocalUserAttributes
  • deleteLocalUserAttributesByKeys
  • clearLocalUserAttributes
  • | 10 calls every 5 seconds | -| Get user attributes |
  • getUserAttributes
  • getUserAttributesByKeys
  • | 40 calls every 5 seconds | -| Set channel attributes |
  • setChannelAttributes
  • addOrUpdateChannelAttributes
  • deleteChannelAttributesByKeys
  • clearChannelAttributes
  • | 10 calls every 5 seconds | -| Get channel attributes |
  • getChannelAttributes
  • getChannelAttributesByKeys
  • | 10 calls every 5 seconds | -| Subscribe to the online status of the specified users | subscribePeersOnlineStatus | 10 calls every 5 seconds | -| Unsubscribe from the online status of the specified users | unsubscribePeersOnlineStatus | 10 calls every 5 seconds | -| Get a list of the peers whose status you have subscribed to. | queryPeersBySubscriptionOption | 10 calls every 5 seconds | - - - -## String size - -- The maximum size of a peer-to-peer or channel message is 32 KB. See AgoraRtmMessage. -- The maximum size of the content in a call invitation is 8 KB. See AgoraRtmLocalInvitation. -- The maximum size of the response in a call invitation is 8 KB. See AgoraRtmRemoteInvitation. - -## Encoding - -- Channel and peer-to-peer messages, the invitation content, and the invitation response must be in UTF-8 format. -- The `filePath` parameter of the following methods must be in UTF-8 format: - - createFileMessageByUploading:withRequest:completion: - - createImageMessageByUploading:withRequest:completion: - - downloadMedia:toFile:withRequest:completion: - - diff --git a/shared/signaling/limitations/unity.mdx b/shared/signaling/limitations/unity.mdx deleted file mode 100644 index bb27b440a..000000000 --- a/shared/signaling/limitations/unity.mdx +++ /dev/null @@ -1,46 +0,0 @@ - - -## Call limit - -The call limit is for one `IRtmService` instance. If an operation corresponds to multiple methods, the number of the method calls of an operation equals the sum of the method calls of all corresponding methods in a specific time frame. - -
    You can increase the call limit of an API by creating multiple IRtmService instances.
    - - -| Operation | Method | Call limit | -| ----------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------ | -| Log in to the | Login | 2 calls per second | -| Retrieve member count of specified channels |GetChannelMemberCount | 1 call per second | -| Join a different channel each time | Join | 50 calls every 3 seconds | -| Join the same channel each time | Join | 2 calls every 5 seconds | -| Send messages |
  • SendMessageToPeer
  • SendMessageToPeer
  • SendMessage
  • SendMessage
  • | 180 calls every three seconds | -| Retrieve a member list of the channel | GetMembers | 5 calls every 2 seconds | -| Renew the token| RenewToken | 2 calls per second | -| Query the online status of the specified users | QueryPeersOnlineStatus | 10 calls every 5 seconds | -| Set user attributes |
  • DeleteLocalUserAttributesByKeys
  • ClearLocalUserAttributes
  • | 10 calls every 5 seconds | -| Get user attributes |
  • GetUserAttributes
  • GetUserAttributesByKeys
  • | 40 calls every 5 seconds | -| Set channel attributes |
  • SetChannelAttributes
  • DeleteChannelAttributesByKeys
  • ClearChannelAttributes
  • | 10 calls every 5 seconds | -| Get channel attributes |
  • GetChannelAttributes
  • GetChannelAttributesByKeys
  • | 10 calls every 5 seconds | -| Subscribe to the online status of the specified users | SubscribePeersOnlineStatus | 10 calls every 5 seconds | -| Unsubscribe from the online status of the specified users | UnsubscribePeersOnlineStatus | 10 calls every 5 seconds | -| Get a list of the peers whose status you have subscribed to |QueryPeersBySubscriptionOption| 10 calls every 5 seconds | - - - -## String size - -- The maximum size of a peer-to-peer or channel message is 32 KB. See IMessage.SetText. -- The maximum size of the content in a call invitation is 8 KB. See ILocalCallInvitation.SetContent. -- The maximum size of the response in a call invitation is 8 KB. See IRemoteCallInvitation.GetResponse. - -## Encoding - -- Channel and peer-to-peer messages, the invitation content, and the invitation response must be in UTF-8 format. -- The `filePath` parameter of the following methods must be in UTF-8 format: - - CreateFileMessageByUploading - - CreateImageMessageByMediaId - - DownloadMediaToFile - - - -
    \ No newline at end of file diff --git a/shared/signaling/limitations/web.mdx b/shared/signaling/limitations/web.mdx deleted file mode 100644 index 3c97a67b5..000000000 --- a/shared/signaling/limitations/web.mdx +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/shared/signaling/limitations/windows.mdx b/shared/signaling/limitations/windows.mdx deleted file mode 100644 index 974cb3ccc..000000000 --- a/shared/signaling/limitations/windows.mdx +++ /dev/null @@ -1,7 +0,0 @@ -import Text from './cpp-x-platform.mdx'; - - - - - - \ No newline at end of file diff --git a/shared/signaling/prerequisites.mdx b/shared/signaling/prerequisites.mdx index 61a3e5333..1863b9bff 100644 --- a/shared/signaling/prerequisites.mdx +++ b/shared/signaling/prerequisites.mdx @@ -4,24 +4,7 @@ To test the code used in this page you need to have: -- Enabled in [ Console](https://console.agora.io/v2). To do so: - - 1. Select your project on the [Project Management](https://console.agora.io/v2/project-management) page and click the corresponding pencil icon to configure it. - - ![configure_project](/images/signaling/configure_project.png) - - 1. Go to **All features** > **Signaling** > **Basic information** and select a data center in the dropdown. - - ![project_settings_signaling](/images/signaling/project_settings_signaling.png) - - 1. Go to **Subscriptions** > **Signaling** and subscribe to a plan. - - ![signaling-pricing-page](/images/signaling/signaling-pricing-plans.png) - - Once subscribed, you will be able to unsubscribe from the same page. - -- [Raised a support ticket](https://agora-ticket.agora.io/) to activate the Stream Channel, if necessary. - - The support team confirms activation through a ticket update. +- Enabled in . See [Enable ](../get-started/beginners-guide#enable-signaling). +- [Raised a support ticket](https://agora-ticket.agora.io/) to activate the Stream Channel, if necessary. The support team confirms activation through a ticket update. Signaling 2.x is an enhanced version compared to 1.x with a wide range of new features. It follows a new pricing structure. Please visit the [Pricing](../overview/pricing) page for details. \ No newline at end of file diff --git a/shared/signaling/reference/_pricing.mdx b/shared/signaling/reference/_pricing.mdx index d73132dab..b2e9a48d3 100644 --- a/shared/signaling/reference/_pricing.mdx +++ b/shared/signaling/reference/_pricing.mdx @@ -1,6 +1,6 @@ -## Pricing concepts +## How usage is measured is priced based on the total number of messages, peak connections, and storage usage of your account in a calendar month. @@ -18,18 +18,14 @@ For example, if a client sends 1 message to a Message Channel, and the channel i For example, if a client sends a message to a Topic in the Stream Channel, and this Topic is subscribed by 10 people, it is counted as 1 sent message and 10 received messages, for a total of 11 messages. -Even if message filtering is enabled on the client, it does not have any impact on message metering. The client-side message filtering function is only for the convenience of developers, and the messages are actually delivered. -The asynchronous callback generated by publishing a message in the Message Channel or Stream Channel is not counted in the number of messages. -Messages sent using the RESTful API are also counted as messages. -If a client does not subscribe to a channel or topic, it does not receive any messages. + Even if message filtering is enabled on the client, it does not have any impact on message metering. The client-side message filtering function is only for the convenience of developers, and the messages are actually delivered.
    • The asynchronous callback generated by publishing a message in the Message Channel or Stream Channel is not counted in the number of messages.
    • Messages sent using the RESTful API are also counted as messages.
    • +
    • If a client does not subscribe to a channel or topic, it does not receive any messages.
    ### Presence Each Presence event notification published is counted as one message, such as the client’s entry into the channel, leaving the channel, timeout notification, and status change notification. Each Presence event notification received in the channel counts as one message. For example, if a client enters a channel, and 10 other clients subscribe to the channel and listen to the Presence event notifications in the channel, then this counts as 1 sent Presence event notification, and the remaining 10 clients receive a total of 10 presence event notifications. That is a total of 11 messages. -The client message filtering function has no impact on the presence event notification count. -If a client does not want to send the Presence event when joining the Stream Channel or subscribing to the Message Channel, setting `withPresence` to `false` does not affect the calculation of the number of messages. -If a client does not join a Stream Channel or subscribe to a Message Channel, it does not receive the Presence event notification of the channel. +
    • The client message filtering function has no impact on the presence event notification count.
    • If a client does not want to send the Presence event when joining the Stream Channel or subscribing to the Message Channel, setting `withPresence` to `false` does not affect the calculation of the number of messages.
    • If a client does not join a Stream Channel or subscribe to a Message Channel, it does not receive the Presence event notification of the channel.
    ### Storage Setting, querying, updating, and deleting any piece of Channel Metadata in the Message Channel or Stream Channel is counted as 1 message. @@ -38,30 +34,19 @@ Any 1 Channel Metadata change event notification received in a Message Channel o Setting, querying, updating, and deleting any piece of User Metadata is counted as 1 message. Receiving 1 change notification of User Metadata is counted as 1 message. For example, if the client sets 1 User Metadata for a user, and the User Metadata is subscribed by 10 people, it is deemed that 1 message has been published and 10 messages have been received, for a total of 11 messages. -Client message filtering has no impact on Channel Metadata or User Metadata change notification counts. The client message filtering settings are as follows: - -* Set `withMetadata` to `false` if the client does not want to receive Channel Metadata or User Metadata change notifications when joining a Stream Channel or subscribing to a Message Channel. -* If a client does not join the Stream Channel or subscribe to a Message Channel, it does not receive the Channel Metadata change notification of the channel. -* If the client does not subscribe to other users’ User Metadata, it will not receive other users’ User Metadata change notifications. +Client message filtering has no impact on Channel Metadata or User Metadata change notification counts. The client message filtering settings are as follows:
    • Set `withMetadata` to `false` if the client does not want to receive Channel Metadata or User Metadata change notifications when joining a Stream Channel or subscribing to a Message Channel.
    • If a client does not join the Stream Channel or subscribe to a Message Channel, it does not receive the Channel Metadata change notification of the channel.
    • If the client does not subscribe to other users’ User Metadata, it will not receive other users’ User Metadata change notifications.
    ### Locks Any operations such as lock setting, query, release, deprivation, and deletion are counted as 1 message. Any 1 lock change event notification received in a Message Channel or Stream Channel is counted as one message. For example, if the client sets a lock on a channel, and the channel is subscribed by 10 people, and these users listen to the lock change notification, it is regarded as publishing 1 message and receiving 10 messages, for a total of 11 messages. -In , a message is calculated in 1 KB. Therefore, if you send a message package with a size of 10 KB to a channel or Topic subscribed by 100 people, it will be counted as 10 inbound messages and 1,000 outbound messages to give a total of 1,010 messages. +In , a message is calculated in 1 KB. Therefore, if you send a message package with a size of 10 KB to a channel or Topic subscribed by 100 people, it will be counted as 10 inbound messages and 1,000 outbound messages to give a total of 1,010 messages. ### Storage occupancy Storage in generates cloud storage occupancy. measures the total storage occupancy, and bills the amount for the month by sampling the customer's actual cloud storage occupancy at 1-hour intervals in a natural month and then accumulating them. The calculation formula is as follows: -_Storage fees = number of days in the month * 24 hours * storage usage per hour * sampling rate_ - -For example, if you have 100 GB of storage and you are using a sampling rate of 10%, then your storage fees for a 30-day month would be: - -_Storage fees = 30 days * 24 hours * 100 GB/hour * 10% = 72,000 GB_ - -This would be equivalent to 72 TB, which is a common unit of measurement for storage capacity. -It is important to note that this formula is just a general guideline. The actual storage fees you are charged may vary depending on your provider and your specific contract. +![Signaling storage calculation formula](/images/signaling/signaling-storage-calculation-formula.png) ### Peak connections diff --git a/shared/signaling/release-notes/web.mdx b/shared/signaling/release-notes/web.mdx index 5e09905fb..3eda18e33 100644 --- a/shared/signaling/release-notes/web.mdx +++ b/shared/signaling/release-notes/web.mdx @@ -10,6 +10,25 @@ import * as lock from '@docs/shared/signaling/reference/api-ref/shared/_lock.mdx +### v2.1.9 + +v2.1.9 was released on March 12, 2024. + +#### Improvements + +This release optimizes the logic of the client-side encryption. When the length of the `salt` parameter is less than 32 bytes, the SDK automatically pads it with zeros to reach the required length. + +#### Fixed issues + +This release fixed the following issues: + +- After calling `renewToken` to renew the token, some services were not functioning correctly, resulting in unexpected disconnection. +- When the duration of disconnection exceeded the configured value of the `presenceTimeout` parameter, the value of the `reason` parameter reported in the `status` event notification was incorrect. +- Under poor network conditions, the SDK occasionally failed to restore subscriptions to the lock and storage services. +- In specific scenarios, calling `acquireLock` method did not return the result. +- When a local user left the last topic the user joined, remote users occasionally received both the `REMOTE_JOIN` and `REMOTE_LEAVE` topic events. +- The `messageType` parameter types of the `messageEvent` callbacks. + ### v2.1.7 v2.1.7 was released on January 22, 2024. diff --git a/shared/variables/global.js b/shared/variables/global.js index 532d97961..92bff9e61 100644 --- a/shared/variables/global.js +++ b/shared/variables/global.js @@ -164,6 +164,8 @@ export const ACCG = 'Global Accelerator'; export const RTT = 'Real-Time Transcription'; +export const MG = 'Media Gateway'; + export const TEMPL = 'Templates'; export const RTEE = 'Extensions'; @@ -243,8 +245,6 @@ export const ELE = 'Electron'; export const UNI = 'Unity'; export const FLU = 'Flutter'; export const REA = 'React Native'; -export const COC = 'Cocos Creator'; -export const CO2_AN = 'Cocos2d-x-Android'; export const SS = 'Server side'; export const ATW = 'Technical Writer'; diff --git a/shared/video-sdk/_billing.mdx b/shared/video-sdk/_billing.mdx index 6c2e7f49f..d7eca44e3 100644 --- a/shared/video-sdk/_billing.mdx +++ b/shared/video-sdk/_billing.mdx @@ -47,7 +47,7 @@ This section describes the additional charges applicable to your account. As of November 2021, Singapore charges [8% Singapore Goods and Services Tax (GST)](https://www.iras.gov.sg/taxes/goods-services-tax-(gst)/basics-of-gst/goods-and-services-tax-(gst)-what-it-is-and-how-it-works) on invoices for all services provided to accounts located in Singapore. determines the account location based on the tax identification number, contact address, or billing address that you have provided. All GST collected from Singapore accounts is paid to the Singapore tax authority. -If you have any questions, contact sales@agora.io. +If you have any questions, contact support@agora.io. #### Fee deduction diff --git a/shared/video-sdk/develop/real-time-transcription/reference/index.mdx b/shared/video-sdk/develop/real-time-transcription/reference/index.mdx index 250435457..986a9bf3a 100644 --- a/shared/video-sdk/develop/real-time-transcription/reference/index.mdx +++ b/shared/video-sdk/develop/real-time-transcription/reference/index.mdx @@ -12,8 +12,8 @@ import Windows from './windows.mdx'; - Android: onStreamMessage - Electron: onStreamMessage - Flutter: onStreamMessage -- iOS: receiveStreamMessageFromUid -- macOS:receiveStreamMessageFromUid +- iOS: rtcEngine(_:receiveStreamMessageFromUid:streamId:data:) +- macOS: rtcEngine(_:receiveStreamMessageFromUid:streamId:data:) - Unity: onStreamMessage - Windows: onStreamMessage diff --git a/shared/video-sdk/develop/spatial-audio/project-implementation/unreal.mdx b/shared/video-sdk/develop/spatial-audio/project-implementation/unreal.mdx index 367e15e6f..84b4f2de2 100644 --- a/shared/video-sdk/develop/spatial-audio/project-implementation/unreal.mdx +++ b/shared/video-sdk/develop/spatial-audio/project-implementation/unreal.mdx @@ -177,6 +177,6 @@ To implement these features in your , take the following steps } ``` -Spatial audio is currently experimental. Contact sales-us@agora.io to activate this function. If you need further support, please contact [ technical support](mailto:support@agora.io). +Spatial audio is currently experimental. Contact support@agora.io to activate this function. If you need further support, please contact [ technical support](mailto:support@agora.io). \ No newline at end of file diff --git a/shared/video-sdk/get-started/get-started-sdk/project-implementation/poc3.mdx b/shared/video-sdk/get-started/get-started-sdk/project-implementation/poc3.mdx index f4322242c..f07e90016 100644 --- a/shared/video-sdk/get-started/get-started-sdk/project-implementation/poc3.mdx +++ b/shared/video-sdk/get-started/get-started-sdk/project-implementation/poc3.mdx @@ -90,7 +90,6 @@ The following code examples show how to implement these steps in your instance and join a channel @@ -197,4 +196,3 @@ The following code examples show how to implement these steps in your provides the `mNativeLibPath` attribute in the `RtcEngineConfig` class to support dynamic loading of the required `.so` files. Refer to the following steps to implement this feature: - -1. Download the latest version of the SDK and decompress it. -2. Integrate `agora-rtc-sdk.jar` into your project. -3. Upload the `.so` files for all architectures to your server and make sure that the app can download the `.so` files for the target architecture over the network. -4. When the app runs, it checks for the existence of an `.so` file. If not found, it downloads the `.so` file and saves it to the private directory of the app. -5. When calling `create` to create and initialize an `RtcEngine` instance, set the `mNativeLibPath` config parameter to the app private directory where the `.so` file is located. -6. After calling `create` successfully, the SDK automatically loads the `.so` file from the specified path. - -> This method is only suitable for manually integrating the Android SDK, not for integration through Maven Central. - \ No newline at end of file diff --git a/shared/video-sdk/reference/known-issues/flutter.mdx b/shared/video-sdk/reference/known-issues/flutter.mdx index b62e708f8..ec7e6ebf6 100644 --- a/shared/video-sdk/reference/known-issues/flutter.mdx +++ b/shared/video-sdk/reference/known-issues/flutter.mdx @@ -2,7 +2,7 @@ The list of known issues page is continuously updated as the systems evolve. Agora suggests you regularly upgrade to the latest version of the SDK, which includes new features, bug fixes and improvements. -- Flutter SDK v4.2.3 +- Flutter SDK v6.2.3 **Android 14 screen sharing issue** @@ -12,7 +12,7 @@ The list of known issues page is continuously updated as the systems evolve. Ago - When integrating the SDK, setting the Android `targetSdkVersion` to 34 may cause the screen sharing feature to be unavailable or even cause the application to crash. -- Flutter SDK v4.2.6 +- Flutter SDK v6.2.6 **AirPods Pro Bluetooth connection issue (iOS)** diff --git a/shared/video-sdk/reference/release-notes/android.mdx b/shared/video-sdk/reference/release-notes/android.mdx index 3bebec655..b3fb8d35d 100644 --- a/shared/video-sdk/reference/release-notes/android.mdx +++ b/shared/video-sdk/reference/release-notes/android.mdx @@ -68,6 +68,20 @@ This release has optimized the implementation of some functions, which involved The `LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE` enumeration has been changed to `LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT`. +8. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + +9. **Removing `IAgoraEventHandler` interface** + + This release deletes the `IAgoraEventHandler` interface class. All callback events that were previously managed under this class are now processed through the `IRtcEngineEventHandler` interface class. + + #### New features 1. **Custom mixed video layout on the receiving end** @@ -129,7 +143,7 @@ This release has optimized the implementation of some functions, which involved 1. **Optimization of video pre-processing methods** - This release adds overloaded methods with the `souкceType` parameter for the following 5 video preprocessing methods, which support specifying the media source type for applying video preprocessing effects by passing in `sourceType` (for example, applying on a custom video capture media source): + This release adds overloaded methods with the `sourceType` parameter for the following 5 video preprocessing methods, which support specifying the media source type for applying video preprocessing effects by passing in `sourceType` (for example, applying on a custom video capture media source): - setBeautyEffectOptions [2/2] - setLowlightEnhanceOptions [2/2] @@ -511,7 +525,7 @@ This release introduces `startCameraCapture`. By calling this method multiple ti **6. Channel media relay** -This release introduces `startOrUpdateChannleMediaRelay` and `startOrUpdateChannleMediaRelayEx`, allowing for a simpler and smoother way to start and update media relay across channels. With these methods, developers can easily start the media relay across channels and update the target channels for media relay with a single method. Additionally, the internal interaction frequency has been optimized, effectively reducing latency in function calls. +This release introduces `startOrUpdateChannelMediaRelay` and `startOrUpdateChannelMediaRelayEx`, allowing for a simpler and smoother way to start and update media relay across channels. With these methods, developers can easily start the media relay across channels and update the target channels for media relay with a single method. Additionally, the internal interaction frequency has been optimized, effectively reducing latency in function calls. **7. Custom audio tracks** diff --git a/shared/video-sdk/reference/release-notes/electron.mdx b/shared/video-sdk/reference/release-notes/electron.mdx index 7ca6d7317..b2b8736a3 100644 --- a/shared/video-sdk/reference/release-notes/electron.mdx +++ b/shared/video-sdk/reference/release-notes/electron.mdx @@ -31,7 +31,7 @@ This release has optimized the implementation of some functions, involving renam **Note:** For specific renaming of enumerations, please refer to [API changes](#api-changes). -2. **Channel media relay** +1. **Channel media relay** To improve interface usability, this release removes some methods and callbacks for channel media relay. Use the alternative options listed in the table below: @@ -41,7 +41,7 @@ This release has optimized the implementation of some functions, involving renam | `startChannelMediaRelayEx`,`updateChannelMediaRelayEx` | `startOrUpdateChannelMediaRelayEx` | | `onChannelMediaRelayEvent` | `onChannelMediaRelayStateChanged` | -3. **Reasons for local video state changes** +1. **Reasons for local video state changes** This release makes the following modifications to the enumerations in the LocalVideoStreamReason class: @@ -49,7 +49,16 @@ This release has optimized the implementation of some functions, involving renam - The value of `LocalVideoStreamReasonScreenCaptureResumed` (formerly `LocalVideoStreamReasonScreenCaptureResumed`) has been changed from `24` to `29`. - The `LocalVideoStreamReasonCodecNotSupport` enumeration has been changed to `LocalVideoStreamReasonCodecNotSupport`. -4. **Audio loopback capturing** +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + + +1. **Audio loopback capturing** - Before v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will not be disabled. - As of v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will be disabled as well. If you need to enable audio loopback capturing, you need to enable the audio module by calling the enableAudio method and then call enableLoopbackRecording. @@ -493,7 +502,7 @@ This release introduces `startCameraCapture` and `startScreenCaptureBySourceType **5. Channel media relay** -This release introduces `startOrUpdateChannleMediaRelay` and `startOrUpdateChannleMediaRelayEx`, allowing for a simpler and smoother way to start and update media relay across channels. With these methods, developers can easily start the media relay across channels and update the target channels for media relay with a single method. Additionally, the internal interaction frequency has been optimized, effectively reducing latency in function calls. +This release introduces `startOrUpdateChannelMediaRelay` and `startOrUpdateChannelMediaRelayEx`, allowing for a simpler and smoother way to start and update media relay across channels. With these methods, developers can easily start the media relay across channels and update the target channels for media relay with a single method. Additionally, the internal interaction frequency has been optimized, effectively reducing latency in function calls. **6. Custom audio tracks** diff --git a/shared/video-sdk/reference/release-notes/flutter.mdx b/shared/video-sdk/reference/release-notes/flutter.mdx index 51525f604..9d9c3b3d6 100644 --- a/shared/video-sdk/reference/release-notes/flutter.mdx +++ b/shared/video-sdk/reference/release-notes/flutter.mdx @@ -34,7 +34,7 @@ This release has optimized the implementation of some functions, involving renam **Note:** For specific renaming of enumerations, please refer to [API changes](#api-changes). -2. **Channel media relay** +1. **Channel media relay** To improve interface usability, this release removes some methods and callbacks for channel media relay. Use the alternative options listed in the table below: @@ -44,11 +44,11 @@ This release has optimized the implementation of some functions, involving renam |
    • `startChannelMediaRelayEx`
    • `updateChannelMediaRelayEx`
    | `startOrUpdateChannelMediaRelayEx` | | `onChannelMediaRelayEvent` | `onChannelMediaRelayStateChanged` | -3. **Audio route** +1. **Audio route** Starting with this release, `routeBluetooth` in AudioRoute is renamed to `routeHeadsetbluetooth`, representing a Bluetooth device using the HFP protocol. `routeBluetoothSpeaker`(10) is added to represent a Bluetooth device using the A2DP protocol. -4. **Reasons for local video state changes** +1. **Reasons for local video state changes** This release makes the following modifications to the enumerations in the LocalVideoStreamReason class: @@ -56,7 +56,15 @@ This release has optimized the implementation of some functions, involving renam - The value of `localVideoStreamReasonScreenCaptureResumed` (formerly `localVideoStreamReasonScreenCaptureResumed`) has been changed from 24 to 29. - The `localVideoStreamErrorEncodeFailure` enumeration has been changed to `localVideoStreamReasonCodecNotSupport`. -5. **Audio loopback capturing (Windows, macOS)** +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + +1. **Audio loopback capturing (Windows, macOS)** - Before v6.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will not be disabled. - As of v6.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will be disabled as well. If you need to enable audio loopback capturing, you need to enable the audio module by calling the enableAudio method and then call enableLoopbackRecording. diff --git a/shared/video-sdk/reference/release-notes/ios.mdx b/shared/video-sdk/reference/release-notes/ios.mdx index 801da4466..7f3665332 100644 --- a/shared/video-sdk/reference/release-notes/ios.mdx +++ b/shared/video-sdk/reference/release-notes/ios.mdx @@ -59,6 +59,15 @@ This release has optimized the implementation of some functions, involving renam - The `AgoraLocalVideoStreamErrorEncodeFailure` enumeration has been changed to `AgoraLocalVideoStreamReasonCodecNotSupport`. +6. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + #### New features 1. **Custom mixed video layout on the receiving end** @@ -373,7 +382,7 @@ v4.2.2 was released on July 27, 2023. This release includes the following additional improvements: -1. The SDK automacially adjusts the frame rate of the sending end based on the screen sharing scenario. Especially in document sharing scenarios, this feature avoids exceeding the expected video bitrate on the sending end to improve transmission efficiency and reduce network burden. +1. The SDK automatically adjusts the frame rate of the sending end based on the screen sharing scenario. Especially in document sharing scenarios, this feature avoids exceeding the expected video bitrate on the sending end to improve transmission efficiency and reduce network burden. 2. To help users understand the reasons for more types of remote video state changes, the `AgoraVideoRemoteReasonCodecNotSupport` enumeration has been added to the `remoteVideoStateChangedOfUid` callback, indicating that the local video decoder does not support decoding the received remote video stream. #### Issues fixed @@ -681,7 +690,7 @@ For more information about registering video observers and subscription options, As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -> To enable this feature, contact [sales-us@agora.io](https://docs.agora.io/cn/video-call-4.x/sales-us@agora.io). +> To enable this feature, contact [support@agora.io](https://docs.agora.io/cn/video-call-4.x/support@agora.io). **5. Camera capture options** diff --git a/shared/video-sdk/reference/release-notes/macos.mdx b/shared/video-sdk/reference/release-notes/macos.mdx index 13b6ee101..ca2b4079a 100644 --- a/shared/video-sdk/reference/release-notes/macos.mdx +++ b/shared/video-sdk/reference/release-notes/macos.mdx @@ -51,6 +51,15 @@ This release has optimized the implementation of some functions, involving renam - Before v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will not be disabled. - As of v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will be disabled as well. If you need to enable audio loopback capturing, you need to enable the audio module by calling the enableAudio method and then call enableLoopbackRecording. +5. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + #### New features 1. **Local preview with multiple views** @@ -105,7 +114,7 @@ This release has optimized the implementation of some functions, involving renam - `AgoraAudioLocalReasonNoRecordingDevice`: No recording device is available. Remind your users to check whether the microphone is connected to the device properly in the control plane of the device or if the microphone is working properly. - `AgoraAudioLocalReasonNoPlayoutDevice`: No playback device is available. Remind your users to check whether the speaker is connected to the device properly in the control plane of the device or if the speaker is working properly. -5. **Other Improvements** +5. **Other improvements** This release also includes the following improvements: diff --git a/shared/video-sdk/reference/release-notes/react-native.mdx b/shared/video-sdk/reference/release-notes/react-native.mdx index f96e58ce9..f2255147e 100644 --- a/shared/video-sdk/reference/release-notes/react-native.mdx +++ b/shared/video-sdk/reference/release-notes/react-native.mdx @@ -5,6 +5,16 @@ import KnownIssues from '@docs/shared/video-sdk/reference/known-issues/react-nat +### v4.3.0-build.1 + +v4.3.0-build.1 was released on March 19, 2024. + +#### Issues fixed + +This release fixed the following issue: + +Directly calling `engine.release` to destroy the engine without prior call of `engine.unregisterEventHandler` to remove all callback events could lead to App crashes (Android). + ### v4.3.0 v4.3.0 was released on February 28, 2024. diff --git a/shared/video-sdk/reference/release-notes/unity.mdx b/shared/video-sdk/reference/release-notes/unity.mdx index 26085d6a8..600c49a4a 100644 --- a/shared/video-sdk/reference/release-notes/unity.mdx +++ b/shared/video-sdk/reference/release-notes/unity.mdx @@ -52,6 +52,24 @@ This release has optimized the implementation of some functions, involving renam - The value of `LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_RESUMED` (formerly `LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_RESUMED`) has been changed from 24 to 29. - The `LOCAL_VIDEO_STREAM_ERROR_CODEC_NOT_SUPPORT` enumeration has been changed to `LOCAL_VIDEO_STREAM_REASON_CODEC_NOT_SUPPORT`. +4. **Audio route** + + Starting with this release, `routeBluetooth` in AudioRoute is renamed to `ROUTE_BLUETOOTH_DEVICE_HFP`, representing a Bluetooth device using the HFP protocol. `ROUTE_BLUETOOTH_DEVICE_A2DP`(10) is added to represent a Bluetooth device using the A2DP protocol + +5. **Audio loopback capturing (Windows, macOS)** + + - Before v4.3.0, if you called the DisableAudio method to disable the audio module, audio loopback capturing would not be disabled. + - As of v4.3.0, if you call the DisableAudio method to disable the audio module, audio loopback capturing will be disabled as well. If you need to enable audio loopback capturing, you need to enable the audio module by calling the EnableAudio method and then call EnableLoopbackRecording. + +6. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + #### New features 1. **Local preview with multiple views** @@ -62,15 +80,23 @@ This release has optimized the implementation of some functions, involving renam 2. Call SetupLocalVideo to set the second view: Set the `position` parameter to `POSITION_POST_CAPTURER` in `VideoCanvas`, the video observed here has the effect of video preprocessing. 3. Observe the local preview effect: The first view is the original video of a real person; the second view is the virtual portrait after video preprocessing (including image enhancement, virtual background, and local preview of watermarks) effects. -2. **Query Device Score** +1. **Custom mixed video layout on the receiving end (Android, iOS)** + + To facilitate customized layout of mixed video stream at the receiver end, this release introduces the OnTranscodedStreamLayoutInfo callback. When the receiver receives the channel's mixed video stream sent by the video mixing server, this callback is triggered, reporting the layout information of the mixed video stream and the layout information of each sub-video stream in the mixed stream. The receiver can set a separate `view` for rendering the sub-video stream (distinguished by `subviewUid`) in the mixed video stream when calling the SetupRemoteVideo method, achieving a custom video layout effect. + + When the layout of the sub-video streams in the mixed video stream changes, this callback will also be triggered to report the latest layout information in real time. + + Through this feature, the receiver end can flexibly adjust the local view layout. When applied in a multi-person video scenario, the receiving end only needs to receive and decode a mixed video stream, which can effectively reduce the CPU usage and network bandwidth when decoding multiple video streams on the receiving end. + +1. **Query Device Score** This release adds the QueryDeviceScore method to query the device's score level to ensure that the user-set parameters do not exceed the device's capabilities. For example, in HD or UHD video scenarios, you can first call this method to query the device's score. If the returned score is low (for example, below 60), you need to lower the video resolution to avoid affecting the video experience. The minimum device score required for different business scenarios is varied. For specific score recommendations, please contact [technical support](mailto:support@agora.io). -3. **Select different audio tracks for local playback and streaming** +1. **Select different audio tracks for local playback and streaming** This release introduces the SelectMultiAudioTrack method that allows you to select different audio tracks for local playback and streaming to remote users. For example, in scenarios like online karaoke, the host can choose to play the original sound locally and publish the accompaniment in the channel. Before using this function, you need to open the media file through the OpenWithMediaSource method and enable this function by setting the `enableMultiAudioTrack` parameter in MediaSource. -4. **Others** +1. **Others** This release has passed the test verification of the following APIs and can be applied to the entire series of RTC 4.x SDK. @@ -120,6 +146,9 @@ This release fixed the following issues: **Added** + +- OnTranscodedStreamLayoutInfo +- VideoLayout - The `subviewUid` member in VideoCanvas - EnableCustomAudioLocalPlayback - QueryDeviceScore diff --git a/shared/video-sdk/reference/release-notes/web.mdx b/shared/video-sdk/reference/release-notes/web.mdx index 4f576d5b2..490e7b1a0 100644 --- a/shared/video-sdk/reference/release-notes/web.mdx +++ b/shared/video-sdk/reference/release-notes/web.mdx @@ -11,6 +11,14 @@ See [Supported platforms](../overview/supported-platforms). +### v4.20.2 + +v4.20.2 was released on March 21, 2024. + +#### Fixed issues + +This release fixes the issue where the browser would modify the captured video resolution when calling createCustomVideoTrack in certain scenarios. + ### v4.20.1 v4.20.1 was released on February 28, 2024. diff --git a/shared/video-sdk/reference/release-notes/windows.mdx b/shared/video-sdk/reference/release-notes/windows.mdx index 9e8c3fb5a..d07074da4 100644 --- a/shared/video-sdk/reference/release-notes/windows.mdx +++ b/shared/video-sdk/reference/release-notes/windows.mdx @@ -54,6 +54,15 @@ This release has optimized the implementation of some functions, involving renam - As of v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will be disabled as well. If you need to enable audio loopback capturing, you need to enable the audio module by calling the enableAudio method and then call enableLoopbackRecording. +5. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + #### New features 1. **Local preview with multiple views** @@ -357,7 +366,7 @@ v4.2.2 was released on july 27, 2023. This release includes the following additional improvements: -1. The SDK automacially adjusts the frame rate of the sending end based on the screen sharing scenario. Especially in document sharing scenarios, this feature avoids exceeding the expected video bitrate on the sending end to improve transmission efficiency and reduce network burden. +1. The SDK automatically adjusts the frame rate of the sending end based on the screen sharing scenario. Especially in document sharing scenarios, this feature avoids exceeding the expected video bitrate on the sending end to improve transmission efficiency and reduce network burden. 2. To help users understand the reasons for more types of remote video state changes, the `REMOTE_VIDEO_STATE_REASON_CODEC_NOT_SUPPORT` enumeration has been added to the `onRemoteVideoStateChanged` callback, indicating that the local video decoder does not support decoding the received remote video stream. #### Issues fixed diff --git a/shared/voice-sdk/reference/known-issues/flutter.mdx b/shared/voice-sdk/reference/known-issues/flutter.mdx index 44b044a71..53a3fa850 100644 --- a/shared/voice-sdk/reference/known-issues/flutter.mdx +++ b/shared/voice-sdk/reference/known-issues/flutter.mdx @@ -2,7 +2,7 @@ The list of known issues page is continuously updated as the systems evolve. Agora suggests you regularly upgrade to the latest version of the SDK, which includes new features, bug fixes and improvements. -- Flutter SDK v4.2.6 +- Flutter SDK v6.2.6 **AirPods Pro Bluetooth connection issue (iOS)** diff --git a/shared/voice-sdk/reference/release-notes/android.mdx b/shared/voice-sdk/reference/release-notes/android.mdx index 9cd499b6d..c5b6ab844 100644 --- a/shared/voice-sdk/reference/release-notes/android.mdx +++ b/shared/voice-sdk/reference/release-notes/android.mdx @@ -43,6 +43,19 @@ This release has optimized the implementation of some functions, which involved Since this release, `RouteBluetooth` is renamed to `AUDIO_ROUTE_BLUETOOTH_DEVICE_HFP`, representing a Bluetooth device using the HFP protocol. The `AUDIO_ROUTE_BLUETOOTH_DEVICE_A2DP`(10) is added to represent a Bluetooth device using the A2DP protocol. +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + +1. **Removing `IAgoraEventHandler` interface** + + This release deletes the `IAgoraEventHandler` interface class. All callback events that were previously managed under this class are now processed through the `IRtcEngineEventHandler` interface class. + #### New features 1. **Query device score** @@ -330,7 +343,7 @@ As of v4.2.0, you can use the following methods to open files with a URI startin **3. Channel media relay** -This release introduces `startOrUpdateChannleMediaRelay` and `startOrUpdateChannleMediaRelayEx`, allowing for a simpler and smoother way to start and update media relay across channels. With these methods, developers can easily start the media relay across channels and update the target channels for media relay with a single method. Additionally, the internal interaction frequency has been optimized, effectively reducing latency in function calls. +This release introduces `startOrUpdateChannelMediaRelay` and `startOrUpdateChannelMediaRelayEx`, allowing for a simpler and smoother way to start and update media relay across channels. With these methods, developers can easily start the media relay across channels and update the target channels for media relay with a single method. Additionally, the internal interaction frequency has been optimized, effectively reducing latency in function calls. **4. Custom audio tracks** @@ -419,7 +432,7 @@ This release adds the `setHeadphoneEQParameters` method, which is used to adjust As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -> To enable this feature, contact sales-us@agora.io. +> To enable this feature, contact support@agora.io. **3. Multi-channel management** @@ -627,7 +640,7 @@ To make it easier for users to integrate the Agora SDK and reduce the SDK's pack **3. Brand-new AI Noise Suppression** -The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v3.7.x). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To enable this feature, contact [sales-us@agora.io](mailto:sales-us@agora.io). +The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v3.7.x). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To enable this feature, contact [support@agora.io](mailto:support@agora.io). **4. Ultra-high audio quality** @@ -635,7 +648,7 @@ To make the audio clearer and restore more details, this release adds the `ULTRA **5. Spatial audio** -This feature is in experimental status. To enable this feature, contact [sales-us@agora.io](mailto:sales-us@agora.io). Contact [technical support](mailto:support@agora.io) if needed. +This feature is in experimental status. To enable this feature, contact [support@agora.io](mailto:support@agora.io). Contact [technical support](mailto:support@agora.io) if needed. You can set the spatial audio for the remote user as following: diff --git a/shared/voice-sdk/reference/release-notes/electron.mdx b/shared/voice-sdk/reference/release-notes/electron.mdx index cd873382f..5ecb5892c 100644 --- a/shared/voice-sdk/reference/release-notes/electron.mdx +++ b/shared/voice-sdk/reference/release-notes/electron.mdx @@ -39,6 +39,15 @@ This release has optimized the implementation of some functions, involving renam | `startChannelMediaRelayEx`,`updateChannelMediaRelayEx` | `startOrUpdateChannelMediaRelayEx` | | `onChannelMediaRelayEvent` | `onChannelMediaRelayStateChanged` | +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + 1. **Audio loopback capturing** - Before v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will not be disabled. @@ -399,7 +408,7 @@ This release adds the `setHeadphoneEQParameters` method, which is used to adjust As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -
    To enable this feature, contact sales@agora.io.
    +
    To enable this feature, contact support@agora.io.
    **8. Register extensions (Windows)** @@ -567,7 +576,7 @@ To make it easier for users to integrate the Agora SDK and reduce the SDK's pack **3.Brand-new AI Noise Suppression** The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. -> **_NOTE:_** To experience this feature, contact sales@agora.io. +> **_NOTE:_** To experience this feature, contact support@agora.io. **5. Ultra-high audio quality** diff --git a/shared/voice-sdk/reference/release-notes/flutter.mdx b/shared/voice-sdk/reference/release-notes/flutter.mdx index fc6b67282..cb7dd27a3 100644 --- a/shared/voice-sdk/reference/release-notes/flutter.mdx +++ b/shared/voice-sdk/reference/release-notes/flutter.mdx @@ -48,6 +48,14 @@ This release has optimized the implementation of some functions, involving renam Starting with this release, `routeBluetooth` in AudioRoute is renamed to `routeHeadsetbluetooth`, representing a Bluetooth device using the HFP protocol. `routeBluetoothSpeaker`(10) is added to represent a Bluetooth device using the A2DP protocol. +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. 1. **Audio loopback capturing (Windows, macOS)** @@ -508,7 +516,7 @@ This release adds the `setHeadphoneEQParameters` method, which is used to adjust As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -
    To enable this feature, contact sales@agora.io.
    +
    To enable this feature, contact support@agora.io.
    **9. Register extensions (Windows)** @@ -710,7 +718,7 @@ To make it easier for users to integrate the Agora SDK and reduce the SDK's pack 3. **Brand-new AI Noise Suppression** - The SDK supports a new version of Noise Suppression (versus the basic AI Noise Suppression in agora_rtc_engine: ^5.x). Compared to the previous Noise Suppression, the new AI Noise Suppression has better vocal fidelity, cleaner noise suppression, and add the Dereverberation capability. To enable this feature, contact [sales-us@agora.io](mailto:sales-us@agora.io). + The SDK supports a new version of Noise Suppression (versus the basic AI Noise Suppression in agora_rtc_engine: ^5.x). Compared to the previous Noise Suppression, the new AI Noise Suppression has better vocal fidelity, cleaner noise suppression, and add the Dereverberation capability. To enable this feature, contact [support@agora.io](mailto:support@agora.io). **4. Ultra-high audio quality** @@ -720,7 +728,7 @@ To make audios sound clearer and stay true to the original sound of audio files, **5. Spatial audio** -> **_NOTE:_** This feature is in experimental status. To enable this feature, contact sales-us@agora.io. Contact Technical Support if needed. +> **_NOTE:_** This feature is in experimental status. To enable this feature, contact support@agora.io. Contact Technical Support if needed. You can set the spatial audio for the remote user as following: diff --git a/shared/voice-sdk/reference/release-notes/ios.mdx b/shared/voice-sdk/reference/release-notes/ios.mdx index 1bf866e2a..33a32f649 100644 --- a/shared/voice-sdk/reference/release-notes/ios.mdx +++ b/shared/voice-sdk/reference/release-notes/ios.mdx @@ -35,7 +35,7 @@ This release has optimized the implementation of some functions, involving renam **Note:** For specific renaming of enumerations, please refer to [API changes](#api-changes). -2. **Channel media relay** +1. **Channel media relay** To improve interface usability, this release removes some methods and callbacks for channel media relay. Use the alternative options listed in the table below: @@ -45,10 +45,19 @@ This release has optimized the implementation of some functions, involving renam |
    • `startChannelMediaRelayEx`
    • `updateChannelMediaRelayEx`
    | `startOrUpdateChannelMediaRelayEx` | | `didReceiveChannelMediaRelayEvent`| `channelMediaRelayStateDidChange` | -3. **Audio route** +1. **Audio route** Starting with this release, `AgoraAudioOutputRoutingBluetooth` in AgoraAudioOutputRouting is renamed to `AgoraAudioOutputRoutingBluetoothDeviceHfp`, representing a Bluetooth device using the HFP protocol. `AgoraAudioOutputRoutingBluetoothDeviceA2dp`(10) is added to represent the audio route to a Bluetooth device using the A2DP protocol. +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + #### New features 1. **Query Device Score** @@ -426,7 +435,7 @@ This release adds the `setHeadphoneEQParameters` method, which is used to adjust As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -> To enable this feature, contact sales-us@agora.io. +> To enable this feature, contact support@agora.io. **3. Multi-channel management** @@ -602,8 +611,8 @@ To make it easier for users to integrate the Agora SDK and reduce the SDK's pack **4. Brand-new AI Noise Suppression** -The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v3.7.x). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To experience this feature, contact sales-us@agora.io. -The SDK supports a new version of Noise Suppression (in comparison to the basic Noise Suppression in v3.7.0). The new AI Noise Suppression has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To experience this feature, contact sales-us@agora.io. +The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v3.7.x). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To experience this feature, contact support@agora.io. +The SDK supports a new version of Noise Suppression (in comparison to the basic Noise Suppression in v3.7.0). The new AI Noise Suppression has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To experience this feature, contact support@agora.io. **5. Ultra-high audio quality** @@ -611,7 +620,7 @@ To make the audio clearer and restore more details, this release adds the `Agora **6. Spatial audio** -This feature is in experimental status. To enable this feature, contact sales-us@agora.io. Contact [Technical Support](mailto:support@agora.io) if needed. +This feature is in experimental status. To enable this feature, contact support@agora.io. Contact [Technical Support](mailto:support@agora.io) if needed. You can set the spatial audio for the remote user as following: diff --git a/shared/voice-sdk/reference/release-notes/macos.mdx b/shared/voice-sdk/reference/release-notes/macos.mdx index 8bd7d32c6..2bcd2ce34 100644 --- a/shared/voice-sdk/reference/release-notes/macos.mdx +++ b/shared/voice-sdk/reference/release-notes/macos.mdx @@ -30,7 +30,7 @@ This release has optimized the implementation of some functions, involving renam **Note:** For specific renaming of enumerations, please refer to [API changes](#api-changes). -2. **Channel media relay** +1. **Channel media relay** To improve interface usability, this release removes some methods and callbacks for channel media relay. Use the alternative options listed in the table below: @@ -40,11 +40,21 @@ This release has optimized the implementation of some functions, involving renam |
    • `startChannelMediaRelayEx`
    • `updateChannelMediaRelayEx`
    | `startOrUpdateChannelMediaRelayEx` | | `didReceiveChannelMediaRelayEvent` | `channelMediaRelayStateDidChange` | -3. **Audio loopback capturing** +1. **Audio loopback capturing** - Before v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will not be disabled. - As of v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will be disabled as well. If you need to enable audio loopback capturing, you need to enable the audio module by calling the enableAudio method and then call enableLoopbackRecording. +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + + #### New features 1. **Query device score** @@ -403,7 +413,7 @@ This release adds the `setHeadphoneEQParameters` method, which is used to adjust As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -> To enable this feature, contact sales-us@agora.io. +> To enable this feature, contact support@agora.io. **3. Multi-channel management** @@ -582,7 +592,7 @@ To make it easier for users to integrate the Agora SDK and reduce the SDK's pack **4. Brand-new AI Noise Suppression** -The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v3.7.x). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To experience this feature, contact sales-us@agora.io. +The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v3.7.x). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To experience this feature, contact support@agora.io. **5. Ultra-high audio quality** @@ -590,7 +600,7 @@ To make the audio clearer and restore more details, this release adds the `Agora **6. Spatial audio** -This feature is in experimental status. To enable this feature, contact sales-us@agora.io. Contact [Technical Support](mailto:support@agora.io) if needed. +This feature is in experimental status. To enable this feature, contact support@agora.io. Contact [Technical Support](mailto:support@agora.io) if needed. You can set the spatial audio for the remote user as following: diff --git a/shared/voice-sdk/reference/release-notes/react-native.mdx b/shared/voice-sdk/reference/release-notes/react-native.mdx index dd3e187d8..41bddec36 100644 --- a/shared/voice-sdk/reference/release-notes/react-native.mdx +++ b/shared/voice-sdk/reference/release-notes/react-native.mdx @@ -5,6 +5,16 @@ import KnownIssues from '@docs/shared/voice-sdk/reference/known-issues/react-nat +### v4.3.0-build.1 + +v4.3.0-build.1 was released on March 19, 2024. + +#### Issues fixed + +This release fixed the following issue: + +Directly calling `engine.release` to destroy the engine without prior call of `engine.unregisterEventHandler` to remove all callback events could lead to App crashes (Android). + ### v4.3.0 v4.3.0 was released on February 28, 2024. @@ -34,7 +44,7 @@ This release has optimized the implementation of some functions, involving renam **Note:** For specific renaming of enumerations, please refer to [API changes](#api-changes). -2. **Channel media relay** +1. **Channel media relay** To improve interface usability, this release removes some methods and callbacks for channel media relay. Use the alternative options listed in the table below: @@ -44,10 +54,19 @@ This release has optimized the implementation of some functions, involving renam | `startChannelMediaRelayEx`,`updateChannelMediaRelayEx` | `startOrUpdateChannelMediaRelayEx` | | `onChannelMediaRelayEvent` | `onChannelMediaRelayStateChanged` | -3. **Audio route** +1. **Audio route** Starting with this release, `RouteBluetooth` in AudioRoute is renamed to `RouteBluetoothDeviceHFP`, representing a Bluetooth device using the HFP protocol. `RouteBluetoothDeviceA2DP`(10) is added to represent a Bluetooth device using the A2DP protocol. +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + #### New features 1. **Query device score** @@ -428,7 +447,7 @@ This release adds the following features applicable to spatial audio effect scen As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -
    To enable this feature, contact sales@agora.io.
    +
    To enable this feature, contact support@agora.io.
    **7. Multi-channel management** @@ -572,7 +591,7 @@ To make it easier for users to integrate the Agora SDK and reduce the SDK's pack **3.Brand-new AI Noise Suppression** The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. -> **_NOTE:_** To experience this feature, contact sales@agora.io. +> **_NOTE:_** To experience this feature, contact support@agora.io. **4. Ultra-high audio quality** @@ -580,7 +599,7 @@ To make the audio clearer and restore more details, this release adds the `Ultra **5. Spatial audio** -> **_NOTE:_** This feature is in experimental status. To enable this feature, contact sales@agora.io. Contact technical support if needed. +> **_NOTE:_** This feature is in experimental status. To enable this feature, contact support@agora.io. Contact technical support if needed. You can set the spatial audio for the remote user as following: diff --git a/shared/voice-sdk/reference/release-notes/unity.mdx b/shared/voice-sdk/reference/release-notes/unity.mdx index d9a6cfacf..8b5d94843 100644 --- a/shared/voice-sdk/reference/release-notes/unity.mdx +++ b/shared/voice-sdk/reference/release-notes/unity.mdx @@ -34,7 +34,7 @@ This release has optimized the implementation of some functions, involving renam **Note:** For specific renaming of enumerations, please refer to [API changes](#api-changes). -2. **Channel media relay** +1. **Channel media relay** To improve interface usability, this release removes some methods and callbacks for channel media relay. Use the alternative options listed in the table below: @@ -44,6 +44,25 @@ This release has optimized the implementation of some functions, involving renam |
    • `startChannelMediaRelayEx`
    • `updateChannelMediaRelayEx`
    | `startOrUpdateChannelMediaRelayEx` | | `onChannelMediaRelayEvent` | `onChannelMediaRelayStateChanged` | +1. **Audio route** + + Starting with this release, `routeBluetooth` in AudioRoute is renamed to `ROUTE_BLUETOOTH_DEVICE_HFP`, representing a Bluetooth device using the HFP protocol. `ROUTE_BLUETOOTH_DEVICE_A2DP`(10) is added to represent a Bluetooth device using the A2DP protocol + +1. **Audio loopback capturing (Windows, macOS)** + + - Before v4.3.0, if you called the DisableAudio method to disable the audio module, audio loopback capturing would not be disabled. + - As of v4.3.0, if you call the DisableAudio method to disable the audio module, audio loopback capturing will be disabled as well. If you need to enable audio loopback capturing, you need to enable the audio module by calling the EnableAudio method and then call EnableLoopbackRecording. + +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + + #### New features 1. **Query device score** @@ -528,7 +547,7 @@ This release adds the `SetHeadphoneEQParameters` method, which is used to adjust As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -
    To enable this feature, contact sales-us@agora.io.
    +
    To enable this feature, contact support@agora.io.
    **9. Register extensions (Windows)** @@ -715,7 +734,7 @@ To make it easier for users to integrate the Agora SDK and reduce the SDK's pack **3. Brand-new AI Noise Suppression** -The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To experience this feature, contact sales-us@agora.io. +The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. To experience this feature, contact support@agora.io. **5. Ultra-high audio quality** @@ -723,7 +742,7 @@ To make the audio clearer and restore more details, this release adds the `ULTRA **6. Spatial audio** -> **_NOTE:_** This feature is in experimental status. To enable this feature, contact sales-us@agora.io. Contact [Technical Support](mailto:support@agora.io) if needed. +> **_NOTE:_** This feature is in experimental status. To enable this feature, contact support@agora.io. Contact [Technical Support](mailto:support@agora.io) if needed. You can set the spatial audio for the remote user as following: diff --git a/shared/voice-sdk/reference/release-notes/windows.mdx b/shared/voice-sdk/reference/release-notes/windows.mdx index 3b42f510a..b35884a21 100644 --- a/shared/voice-sdk/reference/release-notes/windows.mdx +++ b/shared/voice-sdk/reference/release-notes/windows.mdx @@ -46,6 +46,15 @@ This release has optimized the implementation of some functions, involving renam - As of v4.3.0, if you call the disableAudio method to disable the audio module, audio loopback capturing will be disabled as well. If you need to enable audio loopback capturing, you need to enable the audio module by calling the enableAudio method and then call enableLoopbackRecording. +1. **Log encryption behavior changes** + + For security and performance reasons, as of this release, the SDK encrypts logs and no longer supports printing plaintext logs via the console. + + Refer to the following solutions for different needs: + + - If you need to know the API call status, please check the API logs and print the SDK callback logs yourself. + - For any other special requirements, please contact [technical support](mailto:support@agora.io) and provide the corresponding encrypted logs. + #### New features 1. **Query Device Score** @@ -424,7 +433,7 @@ This release adds the `setHeadphoneEQParameters` method, which is used to adjust As of this release, the SDK supports MPUDP protocol, which enables you to connect and use multiple paths to maximize the use of channel resources based on the UDP protocol. You can use different physical NICs on both mobile and desktop and aggregate them to effectively combat network jitter and improve transmission quality. -> To enable this feature, contact sales-us@agora.io. +> To enable this feature, contact support@agora.io. **3. Register extensions** @@ -665,7 +674,7 @@ To make it easier for users to integrate the Agora SDK and reduce the SDK's pack **3.Brand-new AI Noise Suppression** The SDK supports a new version of AI noise reduction (in comparison to the basic AI noise reduction in v3.7.x). The new AI noise reduction has better vocal fidelity, cleaner noise suppression, and adds a dereverberation option. -
    To experience this feature, contact sales@agora.io.
    +
    To experience this feature, contact support@agora.io.
    **4. Ultra-high audio quality** @@ -673,7 +682,7 @@ To make the audio clearer and restore more details, this release adds the `ULTRA **5. Spatial audio** -
    This feature is in experimental status. To enable this feature, contact sales@agora.io. Contact technical support if needed.
    +
    This feature is in experimental status. To enable this feature, contact support@agora.io. Contact technical support if needed.
    You can set the spatial audio for the remote user as following: diff --git a/signaling/reference/limitations.mdx b/signaling/reference/limitations.mdx index 3d0bf2b4b..3b9c6a3c7 100644 --- a/signaling/reference/limitations.mdx +++ b/signaling/reference/limitations.mdx @@ -13,16 +13,5 @@ This page provides a brief overview of the restrictions of the Agora -## Miscellaneous -- The number of RESTful API requests per second per App ID are limited to 500. To extend the limit, contact support@agora.io. -- The max number of concurrent users is 50,000. To extend the limit, contact support@agora.io. -- The max number of daily active users is 500,000. To extend the limit, contact support@agora.io. -- The max number of users in a single channel is 50,000. To extend the limit, contact support@agora.io. -- Notifications of a member joining or leaving the channel are automatically disabled when the number of channel members exceeds 512. -- The current version supports querying the online status of up to 256 users. -- You can subscribe to the online status of up to 512 users in one method call, and you can subscribe to the online status of up to 512 users. -- Attribute settings in one user attribute operation must not exceed 16 KB in size. Attribute settings in one channel attribute operation must not exceed 32 KB in size. Each attribute (key/value pair) must not exceed 8 KB in size. You must not set over 32 key/value pairs for one attribute operation. -- Each file or image you upload to the Agora server stays for seven days. The corresponding media ID also stays valid for seven days. -- Each file or image to upload must not exceed 30 MB in size. -- Each client instance can only support up to nine upload and download processes at the same time. +