UNPKG

zego-express-engine-reactnative

Version:

React Native Zego Express Video for Android & iOS

693 lines 198 kB
<!doctype html> <html class="default no-js"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>ZegoEventListener | zego-express-engine-reactnative</title> <meta name="description" content="Documentation for zego-express-engine-reactnative"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="../assets/css/main.css"> </head> <body> <header> <div class="tsd-page-toolbar"> <div class="container"> <div class="table-wrap"> <div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base=".."> <div class="field"> <label for="tsd-search-field" class="tsd-widget search no-caption">Search</label> <input id="tsd-search-field" type="text" /> </div> <ul class="results"> <li class="state loading">Preparing search index...</li> <li class="state failure">The search index is not available</li> </ul> <a href="../index.html" class="title">zego-express-engine-reactnative</a> </div> <div class="table-cell" id="tsd-widgets"> <div id="tsd-filter"> <a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a> <div class="tsd-filter-group"> <div class="tsd-select" id="tsd-filter-visibility"> <span class="tsd-select-label">All</span> <ul class="tsd-select-list"> <li data-value="public">Public</li> <li data-value="protected">Public/Protected</li> <li data-value="private" class="selected">All</li> </ul> </div> <input type="checkbox" id="tsd-filter-inherited" checked /> <label class="tsd-widget" for="tsd-filter-inherited">Inherited</label> <input type="checkbox" id="tsd-filter-externals" checked /> <label class="tsd-widget" for="tsd-filter-externals">Externals</label> <input type="checkbox" id="tsd-filter-only-exported" /> <label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label> </div> </div> <a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a> </div> </div> </div> </div> <div class="tsd-page-title"> <div class="container"> <ul class="tsd-breadcrumb"> <li> <a href="../globals.html">Globals</a> </li> <li> <a href="../modules/_zegoexpresseventhandler_.html">&quot;ZegoExpressEventHandler&quot;</a> </li> <li> <a href="_zegoexpresseventhandler_.zegoeventlistener.html">ZegoEventListener</a> </li> </ul> <h1>Interface ZegoEventListener</h1> </div> </div> </header> <div class="container container-main"> <div class="row"> <div class="col-8 col-content"> <section class="tsd-panel tsd-hierarchy"> <h3>Hierarchy</h3> <ul class="tsd-hierarchy"> <li> <span class="target">ZegoEventListener</span> </li> </ul> </section> <section class="tsd-panel-group tsd-index-group"> <h2>Index</h2> <section class="tsd-panel tsd-index-panel"> <div class="tsd-index-content"> <section class="tsd-index-section tsd-is-external"> <h3>Properties</h3> <ul class="tsd-index-list"> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#imrecvbarragemessage" class="tsd-kind-icon">IMRecv<wbr>Barrage<wbr>Message</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#imrecvbroadcastmessage" class="tsd-kind-icon">IMRecv<wbr>Broadcast<wbr>Message</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#imrecvcustomcommand" class="tsd-kind-icon">IMRecv<wbr>Custom<wbr>Command</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#apicalledresult" class="tsd-kind-icon">api<wbr>Called<wbr>Result</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#audioroutechange" class="tsd-kind-icon">audio<wbr>Route<wbr>Change</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#captureddatarecordprogressupdate" class="tsd-kind-icon">captured<wbr>Data<wbr>Record<wbr>Progress<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#captureddatarecordstateupdate" class="tsd-kind-icon">captured<wbr>Data<wbr>Record<wbr>State<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#capturedsoundlevelupdate" class="tsd-kind-icon">captured<wbr>Sound<wbr>Level<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#debugerror" class="tsd-kind-icon">debug<wbr>Error</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#enginestateupdate" class="tsd-kind-icon">engine<wbr>State<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#localdeviceexceptionoccurred" class="tsd-kind-icon">local<wbr>Device<wbr>Exception<wbr>Occurred</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#mixerrelaycdnstateupdate" class="tsd-kind-icon">mixer<wbr>RelayCDNState<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#mixersoundlevelupdate" class="tsd-kind-icon">mixer<wbr>Sound<wbr>Level<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#networkquality" class="tsd-kind-icon">network<wbr>Quality</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#networkspeedtesterror" class="tsd-kind-icon">network<wbr>Speed<wbr>Test<wbr>Error</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#networkspeedtestqualityupdate" class="tsd-kind-icon">network<wbr>Speed<wbr>Test<wbr>Quality<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#playermediaevent" class="tsd-kind-icon">player<wbr>Media<wbr>Event</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#playerqualityupdate" class="tsd-kind-icon">player<wbr>Quality<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#playerrecvaudiofirstframe" class="tsd-kind-icon">player<wbr>Recv<wbr>Audio<wbr>First<wbr>Frame</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#playerrecvsei" class="tsd-kind-icon">player<wbr>RecvSEI</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#playerrecvvideofirstframe" class="tsd-kind-icon">player<wbr>Recv<wbr>Video<wbr>First<wbr>Frame</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#playerrendervideofirstframe" class="tsd-kind-icon">player<wbr>Render<wbr>Video<wbr>First<wbr>Frame</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#playerstateupdate" class="tsd-kind-icon">player<wbr>State<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#playervideosizechanged" class="tsd-kind-icon">player<wbr>Video<wbr>Size<wbr>Changed</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publishercapturedaudiofirstframe" class="tsd-kind-icon">publisher<wbr>Captured<wbr>Audio<wbr>First<wbr>Frame</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publishercapturedvideofirstframe" class="tsd-kind-icon">publisher<wbr>Captured<wbr>Video<wbr>First<wbr>Frame</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publisherqualityupdate" class="tsd-kind-icon">publisher<wbr>Quality<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publisherrelaycdnstateupdate" class="tsd-kind-icon">publisher<wbr>RelayCDNState<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publisherrendervideofirstframe" class="tsd-kind-icon">publisher<wbr>Render<wbr>Video<wbr>First<wbr>Frame</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publisherstateupdate" class="tsd-kind-icon">publisher<wbr>State<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publisherstreamevent" class="tsd-kind-icon">publisher<wbr>Stream<wbr>Event</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publishervideoencoderchanged" class="tsd-kind-icon">publisher<wbr>Video<wbr>Encoder<wbr>Changed</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#publishervideosizechanged" class="tsd-kind-icon">publisher<wbr>Video<wbr>Size<wbr>Changed</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#remotecamerastateupdate" class="tsd-kind-icon">remote<wbr>Camera<wbr>State<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#remotemicstateupdate" class="tsd-kind-icon">remote<wbr>Mic<wbr>State<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#remotesoundlevelupdate" class="tsd-kind-icon">remote<wbr>Sound<wbr>Level<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#roomextrainfoupdate" class="tsd-kind-icon">room<wbr>Extra<wbr>Info<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#roomonlineusercountupdate" class="tsd-kind-icon">room<wbr>Online<wbr>User<wbr>Count<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#roomstatechanged" class="tsd-kind-icon">room<wbr>State<wbr>Changed</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#roomstateupdate" class="tsd-kind-icon">room<wbr>State<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#roomstreamextrainfoupdate" class="tsd-kind-icon">room<wbr>Stream<wbr>Extra<wbr>Info<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#roomstreamupdate" class="tsd-kind-icon">room<wbr>Stream<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#roomtokenwillexpire" class="tsd-kind-icon">room<wbr>Token<wbr>Will<wbr>Expire</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#roomuserupdate" class="tsd-kind-icon">room<wbr>User<wbr>Update</a></li> <li class="tsd-kind-property tsd-parent-kind-interface tsd-is-external"><a href="_zegoexpresseventhandler_.zegoeventlistener.html#videoobjectsegmentationstatechanged" class="tsd-kind-icon">video<wbr>Object<wbr>Segmentation<wbr>State<wbr>Changed</a></li> </ul> </section> </div> </section> </section> <section class="tsd-panel-group tsd-member-group tsd-is-external"> <h2>Properties</h2> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="imrecvbarragemessage" class="tsd-anchor"></a> <h3>IMRecv<wbr>Barrage<wbr>Message</h3> <div class="tsd-signature tsd-kind-icon">IMRecv<wbr>Barrage<wbr>Message<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>roomID<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, messageList<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegobarragemessageinfo.html" class="tsd-signature-type">ZegoBarrageMessageInfo</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:589</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>The callback triggered when Barrage Messages are received.</p> </div> <p>Available since: 1.5.0 Description: This callback is used to receive barrage messages sent by other users in the same room. Use cases: Generally used in scenarios where there is a large number of messages sent and received in the room and the reliability of the messages is not required, such as live barrage. When to trigger: After calling [loginRoom] to log in to the room, if a user in the room sends a barrage message through the [sendBarrageMessage] function, this callback will be triggered. Restrictions: None Caution: Barrage messages sent by users themselves will not be notified through this callback. When there are a large number of barrage messages in the room, the notification may be delayed, and some barrage messages may be lost. Related callbacks: Develop can receive room broadcast messages through [onIMRecvBroadcastMessage], and can receive room custom signaling through [onIMRecvCustomCommand].</p> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>Room ID. Value range: The maximum length is 128 bytes.</p> </dd> <dt>param</dt> <dd><p>List of received messages. Value range: Up to 50 messages can be received each time.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>roomID<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, messageList<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegobarragemessageinfo.html" class="tsd-signature-type">ZegoBarrageMessageInfo</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>roomID: <span class="tsd-signature-type">string</span></h5> </li> <li> <h5>messageList: <a href="../classes/_zegoexpressdefines_.zegobarragemessageinfo.html" class="tsd-signature-type">ZegoBarrageMessageInfo</a><span class="tsd-signature-symbol">[]</span></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="imrecvbroadcastmessage" class="tsd-anchor"></a> <h3>IMRecv<wbr>Broadcast<wbr>Message</h3> <div class="tsd-signature tsd-kind-icon">IMRecv<wbr>Broadcast<wbr>Message<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>roomID<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, messageList<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegobroadcastmessageinfo.html" class="tsd-signature-type">ZegoBroadcastMessageInfo</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:574</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>The callback triggered when Broadcast Messages are received.</p> </div> <p>Available since: 1.2.1 Description: This callback is used to receive broadcast messages sent by other users in the same room. Use cases: Generally used when the number of people in the live room does not exceed 500 When to trigger: After calling [loginRoom] to log in to the room, if a user in the room sends a broadcast message via [sendBroadcastMessage] function, this callback will be triggered. Restrictions: None Caution: The broadcast message sent by the user will not be notified through this callback. Related callbacks: You can receive room barrage messages through [onIMRecvBarrageMessage], and you can receive room custom signaling through [onIMRecvCustomCommand].</p> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>Room ID. Value range: The maximum length is 128 bytes.</p> </dd> <dt>param</dt> <dd><p>List of received messages. Value range: Up to 50 messages can be received each time.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>roomID<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, messageList<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegobroadcastmessageinfo.html" class="tsd-signature-type">ZegoBroadcastMessageInfo</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>roomID: <span class="tsd-signature-type">string</span></h5> </li> <li> <h5>messageList: <a href="../classes/_zegoexpressdefines_.zegobroadcastmessageinfo.html" class="tsd-signature-type">ZegoBroadcastMessageInfo</a><span class="tsd-signature-symbol">[]</span></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="imrecvcustomcommand" class="tsd-anchor"></a> <h3>IMRecv<wbr>Custom<wbr>Command</h3> <div class="tsd-signature tsd-kind-icon">IMRecv<wbr>Custom<wbr>Command<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>roomID<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, fromUser<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegouser.html" class="tsd-signature-type">ZegoUser</a>, command<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:605</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>The callback triggered when a Custom Command is received.</p> </div> <p>Available since: 1.2.1 Description: This callback is used to receive custom command sent by other users in the same room. Use cases: Generally used when the number of people in the live room does not exceed 500 When to trigger: After calling [loginRoom] to log in to the room, if other users in the room send custom signaling to the developer through the [sendCustomCommand] function, this callback will be triggered. Restrictions: None Caution: The custom command sent by the user himself will not be notified through this callback. Related callbacks: You can receive room broadcast messages through [onIMRecvBroadcastMessage], and you can receive room barrage message through [onIMRecvBarrageMessage].</p> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>Room ID. Value range: The maximum length is 128 bytes.</p> </dd> <dt>param</dt> <dd><p>Sender of the command.</p> </dd> <dt>param</dt> <dd><p>Command content received.Value range: The maximum length is 1024 bytes.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>roomID<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, fromUser<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegouser.html" class="tsd-signature-type">ZegoUser</a>, command<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>roomID: <span class="tsd-signature-type">string</span></h5> </li> <li> <h5>fromUser: <a href="../classes/_zegoexpressdefines_.zegouser.html" class="tsd-signature-type">ZegoUser</a></h5> </li> <li> <h5>command: <span class="tsd-signature-type">string</span></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="apicalledresult" class="tsd-anchor"></a> <h3>api<wbr>Called<wbr>Result</h3> <div class="tsd-signature tsd-kind-icon">api<wbr>Called<wbr>Result<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>errorCode<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, funcName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, info<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:31</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>Method execution result callback</p> </div> <p>Available since: 2.3.0 Description: When the monitoring is turned on through [setApiCalledCallback], the results of the execution of all methods will be called back through this callback. Trigger: When the developer calls the SDK method, the execution result of the method is called back. Restrictions: None. Caution: It is recommended to monitor and process this callback in the development and testing phases, and turn off the monitoring of this callback after going online.</p> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>Error code, please refer to the error codes document <a href="https://docs.zegocloud.com/en/5548.html">https://docs.zegocloud.com/en/5548.html</a> for details.</p> </dd> <dt>param</dt> <dd><p>Function name.</p> </dd> <dt>param</dt> <dd><p>Detailed error information.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>errorCode<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, funcName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, info<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>errorCode: <span class="tsd-signature-type">number</span></h5> </li> <li> <h5>funcName: <span class="tsd-signature-type">string</span></h5> </li> <li> <h5>info: <span class="tsd-signature-type">string</span></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="audioroutechange" class="tsd-anchor"></a> <h3>audio<wbr>Route<wbr>Change</h3> <div class="tsd-signature tsd-kind-icon">audio<wbr>Route<wbr>Change<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>audioRoute<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegoaudioroute.html" class="tsd-signature-type">ZegoAudioRoute</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:559</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>Callback for device&#39;s audio route changed.</p> </div> <p>Available since: 1.20.0 Description: Callback for device&#39;s audio route changed. Trigger: This callback will be called when there are changes in audio routing such as earphone plugging, speaker and receiver switching, etc. Platform differences: Only supports iOS and Android.</p> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>Current audio route.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>audioRoute<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegoaudioroute.html" class="tsd-signature-type">ZegoAudioRoute</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>audioRoute: <a href="../enums/_zegoexpressdefines_.zegoaudioroute.html" class="tsd-signature-type">ZegoAudioRoute</a></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="captureddatarecordprogressupdate" class="tsd-anchor"></a> <h3>captured<wbr>Data<wbr>Record<wbr>Progress<wbr>Update</h3> <div class="tsd-signature tsd-kind-icon">captured<wbr>Data<wbr>Record<wbr>Progress<wbr>Update<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>progress<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegodatarecordprogress.html" class="tsd-signature-type">ZegoDataRecordProgress</a>, config<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegodatarecordconfig.html" class="tsd-signature-type">ZegoDataRecordConfig</a>, channel<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegopublishchannel.html" class="tsd-signature-type">ZegoPublishChannel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:639</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>The callback to report the current recording progress.</p> </div> <p>Available since: 1.10.0 Description: Recording progress update callback, triggered at regular intervals during recording. Use cases: Developers can do UI hints for the user interface. When to trigger: After [startRecordingCapturedData] is called, If configured to require a callback, timed trigger during recording. Restrictions: None.</p> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>File recording progress, which allows developers to hint at the UI, etc.</p> </dd> <dt>param</dt> <dd><p>Record config.</p> </dd> <dt>param</dt> <dd><p>Publishing stream channel.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>progress<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegodatarecordprogress.html" class="tsd-signature-type">ZegoDataRecordProgress</a>, config<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegodatarecordconfig.html" class="tsd-signature-type">ZegoDataRecordConfig</a>, channel<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegopublishchannel.html" class="tsd-signature-type">ZegoPublishChannel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>progress: <a href="../classes/_zegoexpressdefines_.zegodatarecordprogress.html" class="tsd-signature-type">ZegoDataRecordProgress</a></h5> </li> <li> <h5>config: <a href="../classes/_zegoexpressdefines_.zegodatarecordconfig.html" class="tsd-signature-type">ZegoDataRecordConfig</a></h5> </li> <li> <h5>channel: <a href="../enums/_zegoexpressdefines_.zegopublishchannel.html" class="tsd-signature-type">ZegoPublishChannel</a></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="captureddatarecordstateupdate" class="tsd-anchor"></a> <h3>captured<wbr>Data<wbr>Record<wbr>State<wbr>Update</h3> <div class="tsd-signature tsd-kind-icon">captured<wbr>Data<wbr>Record<wbr>State<wbr>Update<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>state<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegodatarecordstate.html" class="tsd-signature-type">ZegoDataRecordState</a>, errorCode<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, config<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegodatarecordconfig.html" class="tsd-signature-type">ZegoDataRecordConfig</a>, channel<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegopublishchannel.html" class="tsd-signature-type">ZegoPublishChannel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:620</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>The callback triggered when the state of data recording (to a file) changes.</p> </div> <p>Available since: 1.10.0 Description: The callback triggered when the state of data recording (to a file) changes. Use cases: The developer should use this callback to determine the status of the file recording or for UI prompting. When to trigger: After [startRecordingCapturedData] is called, if the state of the recording process changes, this callback will be triggered. Restrictions: None.</p> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>File recording status.</p> </dd> <dt>param</dt> <dd><p>Error code, please refer to the error codes document <a href="https://docs.zegocloud.com/en/5548.html">https://docs.zegocloud.com/en/5548.html</a> for details.</p> </dd> <dt>param</dt> <dd><p>Record config.</p> </dd> <dt>param</dt> <dd><p>Publishing stream channel.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>state<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegodatarecordstate.html" class="tsd-signature-type">ZegoDataRecordState</a>, errorCode<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, config<span class="tsd-signature-symbol">: </span><a href="../classes/_zegoexpressdefines_.zegodatarecordconfig.html" class="tsd-signature-type">ZegoDataRecordConfig</a>, channel<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegopublishchannel.html" class="tsd-signature-type">ZegoPublishChannel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>state: <a href="../enums/_zegoexpressdefines_.zegodatarecordstate.html" class="tsd-signature-type">ZegoDataRecordState</a></h5> </li> <li> <h5>errorCode: <span class="tsd-signature-type">number</span></h5> </li> <li> <h5>config: <a href="../classes/_zegoexpressdefines_.zegodatarecordconfig.html" class="tsd-signature-type">ZegoDataRecordConfig</a></h5> </li> <li> <h5>channel: <a href="../enums/_zegoexpressdefines_.zegopublishchannel.html" class="tsd-signature-type">ZegoPublishChannel</a></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="capturedsoundlevelupdate" class="tsd-anchor"></a> <h3>captured<wbr>Sound<wbr>Level<wbr>Update</h3> <div class="tsd-signature tsd-kind-icon">captured<wbr>Sound<wbr>Level<wbr>Update<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>soundLevel<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:493</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>The local captured audio sound level callback.</p> </div> <p>Available since: 1.1.0 Description: The local captured audio sound level callback. Trigger: After you start the sound level monitor by calling [startSoundLevelMonitor]. Caution:</p> <ol> <li>The callback notification period is the parameter value set when the [startSoundLevelMonitor] is called. The callback value is the default value of 0 When you have not called the interface [startPublishingStream] and [startPreview].</li> <li>This callback is a high-frequency callback, and it is recommended not to do complex logic processing inside the callback. Related APIs: Start sound level monitoring via [startSoundLevelMonitor]. Monitoring remote played audio sound level by callback [onRemoteSoundLevelUpdate]</li> </ol> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>Locally captured sound level value, ranging from 0.0 to 100.0.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>soundLevel<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>soundLevel: <span class="tsd-signature-type">number</span></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="debugerror" class="tsd-anchor"></a> <h3>debug<wbr>Error</h3> <div class="tsd-signature tsd-kind-icon">debug<wbr>Error<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>errorCode<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, funcName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, info<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:17</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>The callback for obtaining debugging error information.</p> </div> <p>Available since: 1.1.0 Description: When the SDK functions are not used correctly, the callback prompts for detailed error information. Trigger: Notify the developer when an exception occurs in the SDK. Restrictions: None. Caution: None.</p> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>Error code, please refer to the error codes document <a href="https://docs.zegocloud.com/en/5548.html">https://docs.zegocloud.com/en/5548.html</a> for details.</p> </dd> <dt>param</dt> <dd><p>Function name.</p> </dd> <dt>param</dt> <dd><p>Detailed error information.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>errorCode<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, funcName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, info<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>errorCode: <span class="tsd-signature-type">number</span></h5> </li> <li> <h5>funcName: <span class="tsd-signature-type">string</span></h5> </li> <li> <h5>info: <span class="tsd-signature-type">string</span></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="enginestateupdate" class="tsd-anchor"></a> <h3>engine<wbr>State<wbr>Update</h3> <div class="tsd-signature tsd-kind-icon">engine<wbr>State<wbr>Update<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>state<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegoenginestate.html" class="tsd-signature-type">ZegoEngineState</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div> <aside class="tsd-sources"> <ul> <li>Defined in ZegoExpressEventHandler.ts:45</li> </ul> </aside> <div class="tsd-comment tsd-typography"> <div class="lead"> <p>The callback triggered when the audio/video engine state changes.</p> </div> <p>Available since: 1.1.0 Description: Callback notification of audio/video engine status update. When audio/video functions are enabled, such as preview, push streaming, local media player, audio data observering, etc., the audio/video engine will enter the start state. When you exit the room or disable all audio/video functions , The audio/video engine will enter the stop state. Trigger: The developer called the relevant function to change the state of the audio and video engine. For example: 1. Called ZegoExpressEngine&#39;s [startPreview], [stopPreview], [startPublishingStream], [stopPublishingStream], [startPlayingStream], [stopPlayingStream], [startAudioDataObserver], [stopAudioDataObserver] and other functions. 2. The related functions of MediaPlayer are called. 3. The [LogoutRoom] function was called. 4. The related functions of RealTimeSequentialDataManager are called. Restrictions: None. Caution:</p> <ol> <li>When the developer calls [destroyEngine], this notification will not be triggered because the resources of the SDK are completely released.</li> <li>If there is no special need, the developer does not need to pay attention to this callback.</li> </ol> <dl class="tsd-comment-tags"> <dt>param</dt> <dd><p>The audio/video engine state.</p> </dd> </dl> </div> <div class="tsd-type-declaration"> <h4>Type declaration</h4> <ul class="tsd-parameters"> <li class="tsd-parameter-signature"> <ul class="tsd-signatures tsd-kind-type-literal tsd-parent-kind-property"> <li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>state<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegoenginestate.html" class="tsd-signature-type">ZegoEngineState</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li> </ul> <ul class="tsd-descriptions"> <li class="tsd-description"> <h4 class="tsd-parameters-title">Parameters</h4> <ul class="tsd-parameters"> <li> <h5>state: <a href="../enums/_zegoexpressdefines_.zegoenginestate.html" class="tsd-signature-type">ZegoEngineState</a></h5> </li> </ul> <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4> </li> </ul> </li> </ul> </div> </section> <section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface tsd-is-external"> <a name="localdeviceexceptionoccurred" class="tsd-anchor"></a> <h3>local<wbr>Device<wbr>Exception<wbr>Occurred</h3> <div class="tsd-signature tsd-kind-icon">local<wbr>Device<wbr>Exception<wbr>Occurred<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>exceptionType<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegodeviceexceptiontype.html" class="tsd-signature-type">ZegoDeviceExceptionType</a>, deviceType<span class="tsd-signature-symbol">: </span><a href="../enums/_zegoexpressdefines_.zegodevicetype.html" class="tsd-signature-type">ZegoDeviceType</a>, deviceID<sp