<div dir="ltr">It&#39;s also a pretty good abstraction. If the protocol ever changed significantly (highly unlikely) then the change can be implemented in the api/bgapi calls. Thus applications using them would still work with a recompile/restart, while applications using sendRecv/send would break because the underlying command would be different.<div>

<br></div><div>The protocol is incredibly unlikely to change in such a manner though, so it&#39;s a moot point.</div><div><br></div><div>If anything the higher level functions need to have linger/nolinger etc added.</div>

<div><br></div><div>send/sendRecv are lower level functions. If anything you should think of them in terms of private/protected, only to be used for extending the client to add support for commands that aren&#39;t supported (yet) at the higher level.</div>

<div><br></div><div>-Steve</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 19 July 2014 12:54, Peter Olsson <span dir="ltr">&lt;<a href="mailto:peter@olssononline.se" target="_blank">peter@olssononline.se</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I don&#39;t fully understand the confusion here. api/bgapi are just there to simplify how to send commands (since they are the mosy commonly used I guess).<div>

<br></div><div>I&#39;m pretty sure it would cause huge problems for everyone using ESL today, if we&#39;d just remove those functions.</div>
<div><br></div><div>/Peter</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-07-19 0:18 GMT+02:00 Normando Hall <span dir="ltr">&lt;<a href="mailto:nhall@unixlan.com.ar" target="_blank">nhall@unixlan.com.ar</a>&gt;</span>:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">
  

    
  
  <div text="#000000" bgcolor="#FFFFFF">
    Hi guys<br>
    <br>
    After 2 days I understand some issues with ESL and the NodeJS ESL
    wrapper (modesl).<br>
    <br>
    Learning to use event socket I read that has commands like: api -
    bgapi - linger, nolinger etc. <br>
    Then, when reading the ESL wrapper for NodeJS I can&#39;t found those
    sockets commands. Only found api and bgapi, but not linger,
    nolinger, etc. So, the wrapper has the same methods as ESL has. But
    why I can&#39;t found those linger and nolinger methods? Here is the
    answer from the ESL wiki:<br>
    <br>
    <b>api($command, $args) is identical to sendRecv(&quot;api $command
      $args&quot;)</b><br>
    <br>
    and<br>
    <br>
    <b>bgapi($command, $args) is identical to sendRecv(&quot;bgapi $command
      $args&quot;)</b><br>
    <br>
    So... I can figured that &quot;linger&quot; or other commands should send into
    the &quot;send&quot; or &quot;sendRecv&quot; methods. This cause me a confussion.<br>
    <br>
    So, all ESL commands must be send through &quot;send&quot; or &quot;sendRecv&quot;
    methods, and &quot;api&quot; or &quot;bgapi&quot; are shorthands of &quot;send&quot; method for
    api/bgapi.<br>
    <br>
    I think these methods (api-bgapi) should be remove from ESL, to
    avoid future confussion.<br>
    <br>
    Regards<span><font color="#888888"><br>
    Normando<br>
    <b><i><span style="color:rgb(0,0,0);font-family:sans-serif;font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:19.200000762939453px;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;display:inline!important;float:none;background-color:rgb(255,255,255)"></span></i></b>
  </font></span></div>

<br></div></div>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
FreeSWITCH-powered IP PBX: The CudaTel Communication Server<br>
<a href="http://www.cudatel.com" target="_blank">http://www.cudatel.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://wiki.freeswitch.org" target="_blank">http://wiki.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br></div>
<br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
FreeSWITCH-powered IP PBX: The CudaTel Communication Server<br>
<a href="http://www.cudatel.com" target="_blank">http://www.cudatel.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://wiki.freeswitch.org" target="_blank">http://wiki.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br></blockquote></div><br></div>