Skip to content

Commit

Permalink
fix: add more api docs
Browse files Browse the repository at this point in the history
  • Loading branch information
Emir Aganovic committed Sep 17, 2024
1 parent f3a90ae commit dc2f7b3
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 37 deletions.
20 changes: 19 additions & 1 deletion docs/api_docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
Dialog Sessions diago can act as UAS(User Agent Server) and UAC(User Agent Client), and adds bridging capability to build B2BUA services.
It intentionally distincts dialog received (Acting as server) and dialog created (Acting as client):
DialogServerSession when receving incoming dialog (SIP INVITE) and setups session (media) DialogClientSession when it creates outgoing dialog (SIP INVITE) and setups session (media) For best understanding here some docs with short code reference.">
<meta itemprop="wordCount" content="577">
<meta itemprop="wordCount" content="639">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="API Docs">
<meta name="twitter:description" content="Library API tries to be well documented through comments. For more reference visit GO DOC
Expand Down Expand Up @@ -258,6 +258,12 @@
class="hx-flex hx-rounded hx-px-2 hx-py-1.5 hx-text-sm hx-transition-colors [word-break:break-word] hx-cursor-pointer [-webkit-tap-highlight-color:transparent] [-webkit-touch-callout:none] contrast-more:hx-border hx-gap-2 before:hx-opacity-25 before:hx-content-['#'] hx-text-gray-500 hover:hx-bg-gray-100 hover:hx-text-gray-900 dark:hx-text-neutral-400 dark:hover:hx-bg-primary-100/5 dark:hover:hx-text-gray-50 contrast-more:hx-text-gray-900 contrast-more:dark:hx-text-gray-50 contrast-more:hx-border-transparent contrast-more:hover:hx-border-gray-900 contrast-more:dark:hover:hx-border-gray-50"
>Answering call</a>
</li>
<li>
<a
href="#media-handling"
class="hx-flex hx-rounded hx-px-2 hx-py-1.5 hx-text-sm hx-transition-colors [word-break:break-word] hx-cursor-pointer [-webkit-tap-highlight-color:transparent] [-webkit-touch-callout:none] contrast-more:hx-border hx-gap-2 before:hx-opacity-25 before:hx-content-['#'] hx-text-gray-500 hover:hx-bg-gray-100 hover:hx-text-gray-900 dark:hx-text-neutral-400 dark:hover:hx-bg-primary-100/5 dark:hover:hx-text-gray-50 contrast-more:hx-text-gray-900 contrast-more:dark:hx-text-gray-50 contrast-more:hx-border-transparent contrast-more:hover:hx-border-gray-900 contrast-more:dark:hover:hx-border-gray-50"
>Media handling</a>
</li>
<li>
<a
href="#playback"
Expand Down Expand Up @@ -383,6 +389,10 @@
<a class="hx-font-semibold hx-inline-block hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-300 contrast-more:hx-text-gray-900 contrast-more:hx-underline contrast-more:dark:hx-text-gray-50 hx-w-full hx-break-words" href="#answering-call">Answering call
</a>
</li>
<li class="hx-my-2 hx-scroll-my-6 hx-scroll-py-6">
<a class="hx-font-semibold hx-inline-block hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-300 contrast-more:hx-text-gray-900 contrast-more:hx-underline contrast-more:dark:hx-text-gray-50 hx-w-full hx-break-words" href="#media-handling">Media handling
</a>
</li>
<li class="hx-my-2 hx-scroll-my-6 hx-scroll-py-6">
<a class="hx-font-semibold hx-inline-block hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-300 contrast-more:hx-text-gray-900 contrast-more:hx-underline contrast-more:dark:hx-text-gray-50 hx-w-full hx-break-words" href="#playback">Playback
</a>
Expand Down Expand Up @@ -570,6 +580,14 @@ <h2>Answering call<span class="hx-absolute -hx-mt-20" id="answering-call"></span


</div>
<h2>Media handling<span class="hx-absolute -hx-mt-20" id="media-handling"></span>
<a href="#media-handling" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Every session comes with 2 streams (Audio for now). In diago case it is referenced as reader/writer.</p>
<ul>
<li><code>AudioReader</code> reads incoming stream</li>
<li><code>AudioWriter</code> writes outgoing stream</li>
</ul>
<p>Normally you mostly deal with writing audio so <strong>Playback</strong> is created for easier dealing with audio streams.</p>
<p><strong>NOTE</strong>: Diago does not automatically reads audio stream in background. This can happen with explicit call or <em>bridging</em>.</p>
<h2>Playback<span class="hx-absolute -hx-mt-20" id="playback"></span>
<a href="#playback" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Playing audio file is done with audio playback. Library provides prebuilt playback functionality</p>
<p>Playback can:</p>
Expand Down
15 changes: 9 additions & 6 deletions docs/index.xml
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,14 @@ Dialog created is scoped (Like HTTP request serving). Once dialog exists, it is


&lt;/div&gt;
&lt;h2&gt;Media handling&lt;span class=&#34;hx-absolute -hx-mt-20&#34; id=&#34;media-handling&#34;&gt;&lt;/span&gt;
&lt;a href=&#34;#media-handling&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Every session comes with 2 streams (Audio for now). In diago case it is referenced as reader/writer.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;AudioReader&lt;/code&gt; reads incoming stream&lt;/li&gt;
&lt;li&gt;&lt;code&gt;AudioWriter&lt;/code&gt; writes outgoing stream&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Normally you mostly deal with writing audio so &lt;strong&gt;Playback&lt;/strong&gt; is created for easier dealing with audio streams.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;NOTE&lt;/strong&gt;: Diago does not automatically reads audio stream in background. This can happen with explicit call or &lt;em&gt;bridging&lt;/em&gt;.&lt;/p&gt;
&lt;h2&gt;Playback&lt;span class=&#34;hx-absolute -hx-mt-20&#34; id=&#34;playback&#34;&gt;&lt;/span&gt;
&lt;a href=&#34;#playback&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Playing audio file is done with audio playback. Library provides prebuilt playback functionality&lt;/p&gt;
&lt;p&gt;Playback can:&lt;/p&gt;
Expand Down Expand Up @@ -514,12 +522,7 @@ Publishing local IP like above is problem for NAT and there different approaches
<description>


&lt;h2&gt;Why Diago?&lt;span class=&#34;hx-absolute -hx-mt-20&#34; id=&#34;why-diago&#34;&gt;&lt;/span&gt;
&lt;a href=&#34;#why-diago&#34; class=&#34;subheading-anchor&#34; aria-label=&#34;Permalink for this section&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Development of VOIP services can be slow or it was full workarrounds.
Diago try to offer more modern Stack and put you closer to protcol,network,media but offering High level and low level API calls.&lt;/p&gt;
&lt;p&gt;Diago is built with GO language and we are keeping well optimized sip and media stack to have performance and low GC latency. Major win is Go offers fast development speed and memory safety, but also tooling to tweak best performance.&lt;/p&gt;
&lt;p&gt;In case you wondering is Go right language, there are already good benchmark results with just &lt;a href=&#34;https://github.com/emiago/sipgo&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;sipgo&lt;/a&gt;.&lt;/p&gt;


</description>
</item>

Expand Down
34 changes: 5 additions & 29 deletions docs/why_diago/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@
<link fetchpriority="low" href="/diago/site.webmanifest" rel="manifest" />

<title>Diago</title>
<meta name="description" content="Why Diago? Development of VOIP services can be slow or it was full workarrounds. Diago try to offer more modern Stack and put you closer to protcol,network,media but offering High level and low level API calls.
Diago is built with GO language and we are keeping well optimized sip and media stack to have performance and low GC latency. Major win is Go offers fast development speed and memory safety, but also tooling to tweak best performance." />
<meta name="description" content="" />


<link rel="canonical" href="https://emiago.github.io/diago/docs/why_diago/" itemprop="url" />
Expand All @@ -22,22 +21,16 @@


<meta property="og:title" content="" />
<meta property="og:description" content="Why Diago? Development of VOIP services can be slow or it was full workarrounds. Diago try to offer more modern Stack and put you closer to protcol,network,media but offering High level and low level API calls.
Diago is built with GO language and we are keeping well optimized sip and media stack to have performance and low GC latency. Major win is Go offers fast development speed and memory safety, but also tooling to tweak best performance." />
<meta property="og:description" content="" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://emiago.github.io/diago/docs/why_diago/" /><meta property="article:section" content="docs" />




<meta itemprop="name" content="Diago">
<meta itemprop="description" content="Why Diago? Development of VOIP services can be slow or it was full workarrounds. Diago try to offer more modern Stack and put you closer to protcol,network,media but offering High level and low level API calls.
Diago is built with GO language and we are keeping well optimized sip and media stack to have performance and low GC latency. Major win is Go offers fast development speed and memory safety, but also tooling to tweak best performance.">
<meta itemprop="wordCount" content="94">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Diago">
<meta name="twitter:description" content="Why Diago? Development of VOIP services can be slow or it was full workarrounds. Diago try to offer more modern Stack and put you closer to protcol,network,media but offering High level and low level API calls.
Diago is built with GO language and we are keeping well optimized sip and media stack to have performance and low GC latency. Major win is Go offers fast development speed and memory safety, but also tooling to tweak best performance.">

<link rel="preload" href="/diago/css/compiled/main.min.c1fe2c80102c9dc9ddc66184191e646769052d36a21b38ac5ab5077713cf7a81.css" as="style" integrity="sha256-wf4sgBAsncndxmGEGR5kZ2kFLTaiGzisWrUHdxPPeoE=" />
<link href="/diago/css/compiled/main.min.c1fe2c80102c9dc9ddc66184191e646769052d36a21b38ac5ab5077713cf7a81.css" rel="stylesheet" integrity="sha256-wf4sgBAsncndxmGEGR5kZ2kFLTaiGzisWrUHdxPPeoE=" />
Expand Down Expand Up @@ -224,14 +217,6 @@
>Why Diago
</a>

<ul class='hx-flex hx-flex-col hx-gap-1 hx-relative before:hx-absolute before:hx-inset-y-1 before:hx-w-px before:hx-bg-gray-200 before:hx-content-[""] dark:before:hx-bg-neutral-800 ltr:hx-pl-3 ltr:before:hx-left-0 rtl:hx-pr-3 rtl:before:hx-right-0 ltr:hx-ml-3 rtl:hx-mr-3'><li>
<a
href="#why-diago"
class="hx-flex hx-rounded hx-px-2 hx-py-1.5 hx-text-sm hx-transition-colors [word-break:break-word] hx-cursor-pointer [-webkit-tap-highlight-color:transparent] [-webkit-touch-callout:none] contrast-more:hx-border hx-gap-2 before:hx-opacity-25 before:hx-content-['#'] hx-text-gray-500 hover:hx-bg-gray-100 hover:hx-text-gray-900 dark:hx-text-neutral-400 dark:hover:hx-bg-primary-100/5 dark:hover:hx-text-gray-50 contrast-more:hx-text-gray-900 contrast-more:dark:hx-text-gray-50 contrast-more:hx-border-transparent contrast-more:hover:hx-border-gray-900 contrast-more:dark:hover:hx-border-gray-50"
>Why Diago?</a>
</li>
</ul>


</li></ul>
</div></li>
Expand Down Expand Up @@ -310,12 +295,8 @@
</div></div></aside>

<nav class="hextra-toc hx-order-last hx-hidden hx-w-64 hx-shrink-0 xl:hx-block print:hx-hidden hx-px-4" aria-label="table of contents">
<div class="hextra-scrollbar hx-sticky hx-top-16 hx-overflow-y-auto hx-pr-4 hx-pt-6 hx-text-sm [hyphens:auto] hx-max-h-[calc(100vh-var(--navbar-height)-env(safe-area-inset-bottom))] ltr:hx--mr-4 rtl:hx--ml-4"><p class="hx-mb-4 hx-font-semibold hx-tracking-tight">On this page</p><ul>
<li class="hx-my-2 hx-scroll-my-6 hx-scroll-py-6">
<a class="hx-font-semibold hx-inline-block hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-300 contrast-more:hx-text-gray-900 contrast-more:hx-underline contrast-more:dark:hx-text-gray-50 hx-w-full hx-break-words" href="#why-diago">Why Diago?
</a>
</li></ul>
<div class="hx-mt-8 hx-border-t hx-bg-white hx-pt-8 hx-shadow-[0_-12px_16px_white] dark:hx-bg-dark dark:hx-shadow-[0_-12px_16px_#111] hx-sticky hx-bottom-0 hx-flex hx-flex-col hx-items-start hx-gap-2 hx-pb-8 dark:hx-border-neutral-800 contrast-more:hx-border-t contrast-more:hx-border-neutral-400 contrast-more:hx-shadow-none contrast-more:dark:hx-border-neutral-400">
<div class="hextra-scrollbar hx-sticky hx-top-16 hx-overflow-y-auto hx-pr-4 hx-pt-6 hx-text-sm [hyphens:auto] hx-max-h-[calc(100vh-var(--navbar-height)-env(safe-area-inset-bottom))] ltr:hx--mr-4 rtl:hx--ml-4">
<div class=" hx-sticky hx-bottom-0 hx-flex hx-flex-col hx-items-start hx-gap-2 hx-pb-8 dark:hx-border-neutral-800 contrast-more:hx-border-t contrast-more:hx-border-neutral-400 contrast-more:hx-shadow-none contrast-more:dark:hx-border-neutral-400">
<button aria-hidden="true" id="backToTop" onClick="scrollUp();" class="hx-transition-all hx-duration-75 hx-opacity-0 hx-text-xs hx-font-medium hx-text-gray-500 hover:hx-text-gray-900 dark:hx-text-gray-400 dark:hover:hx-text-gray-100 contrast-more:hx-text-gray-800 contrast-more:dark:hx-text-gray-50">
<span>Scroll to top</span>
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="hx-inline ltr:hx-ml-1 rtl:hx-mr-1 hx-h-3.5 hx-w-3.5 hx-border hx-rounded-full hx-border-gray-500 hover:hx-border-gray-900 dark:hx-border-gray-400 dark:hover:hx-border-gray-100 contrast-more:hx-border-gray-800 contrast-more:dark:hx-border-gray-50">
Expand All @@ -338,12 +319,7 @@

<div class="content">
<h1></h1>
<h2>Why Diago?<span class="hx-absolute -hx-mt-20" id="why-diago"></span>
<a href="#why-diago" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Development of VOIP services can be slow or it was full workarrounds.
Diago try to offer more modern Stack and put you closer to protcol,network,media but offering High level and low level API calls.</p>
<p>Diago is built with GO language and we are keeping well optimized sip and media stack to have performance and low GC latency. Major win is Go offers fast development speed and memory safety, but also tooling to tweak best performance.</p>
<p>In case you wondering is Go right language, there are already good benchmark results with just <a href="https://github.com/emiago/sipgo" target="_blank" rel="noopener">sipgo</a>.</p>


</div>
<div class="hx-mt-16"></div>
<div class="hx-mb-8 hx-flex hx-items-center hx-border-t hx-pt-8 dark:hx-border-neutral-800 contrast-more:hx-border-neutral-400 dark:contrast-more:hx-border-neutral-400 print:hx-hidden"><a
Expand Down
Loading

0 comments on commit dc2f7b3

Please sign in to comment.