Elektrine lite

← Feed

Josh Anders

josh@social.joshanders.com

<p><a href="https://social.joshanders.com/tags/VoIP" class="mention hashtag" rel="tag">#<span>VoIP</span></a> architect specializing in <a href="https://social.joshanders.com/tags/Asterisk" class="mention hashtag" rel="tag">#<span>Asterisk</span></a> <a href="https://social.joshanders.com/tags/PBX" class="mention hashtag" rel="tag">#<span>PBX</span></a>, EAGI scripting, AI-integrated telephony. <a href="https://social.joshanders.com/tags/LAMP" class="mention hashtag" rel="tag">#<span>LAMP</span></a> stack, <a href="https://social.joshanders.com/tags/Debian" class="mention hashtag" rel="tag">#<span>Debian</span></a>, polyglot coder (#PHP, <a href="https://social.joshanders.com/tags/C" class="mention hashtag" rel="tag">#<span>C</span></a>, <a href="https://social.joshanders.com/tags/Python"

Posts

  • Post #3615830

    Spent the day rewriting my company&amp;#39;s legacy #voip messaging stack in #python (from ancient #php). New load average in prod is 0.03! :warmfuzzy:

  • Post #3348117

    Updated to Mastodon 4.6.0! That was painless. #mastoadmin

  • Post #3335659

    Debugging tale of the day: a call-monitoring dashboard where every call showed the same destination number. Figured someone hardcoded a test value and moved on. Nope. Every callee was wrong, inbound and outbound, just usually a *different* wrong number, which killed the &quot;it&#39;s always X&quot; theory fast. The log parser had been mislabeling calls the entire time. The system was never &quot;working.&quot; It was just wrong consistently enough to look fine. #VoIP #SIP #debugging

  • Post #3330229

    TIL: asyncio.TaskGroup in Python 3.11+ gives you structured concurrency for free. Spin up multiple async tasks together - if one fails, the rest get cancelled automatically, and exceptions surface as a single ExceptionGroup instead of leaving orphaned tasks hanging around. Cleaner than asyncio.gather() plus manual error juggling, especially when you&#39;re fanning out concurrent calls (DB query + external API, etc.) and want sane cancellation behavior. #Python #asyncio

  • Post #3330022

    @memeorandum@universeodon.com Study from the article: https://jamanetwork.com/journals/jamainternalmedicine/fullarticle/2850241?guestAccessKey=d13423b6-0f97-447a-a381-df38354146d7&amp;utm_source=for_the_media&amp;utm_medium=referral&amp;utm_campaign=ftm_links&amp;utm_content=tfl&amp;utm_term=061526

  • Post #3329282

    Asterisk&#39;s `MASTER_CHANNEL()` dialplan function is slept on. Lets a channel read variables from its master channel - super useful when you&#39;re in a local channel or an AGI subprocess and need context from the call that spawned you, without any hacky variable passing. #Asterisk #VoIP #Telephony

  • Post #2854301

  • Post #2854300

    Nice to see #Debian Trixie is out! Now I&amp;#39;ll finally get security updates :P

  • Post #2854299

    @doctator@infosec.exchange You&amp;#39;re not alone, don&amp;#39;t worry :P

  • Post #2854298

    I was today years old when I learned about #Asterisk&amp;#39;s TALK_DETECT() function. Enable it in your dialplan (with `Set(TALK_DETECT(set)=)`, and you&amp;#39;ll get AMI/ARI events whenever Asterisk detects a transition between silence and talking (or vice versa) on a channel. More info here: https://docs.asterisk.org/Asterisk_23_Documentation/API_Documentation/Dialplan_Functions/TALK_DETECT/ #VoIP

  • Post #2854297

    Has anyone used/developed #Asterisk Stasis applications? Wondering what real-world throughput is like vs. old-school dialplan logic and/or (E)AGI. #VoIP

  • Post #2854296

    Happy #Debian Day to those who celebrate! Let&amp;#39;s make it another 30 years. #linux

  • Post #2854295

    @dw0rsec@infosec.exchange There is a package for Debian 12 (Bookworm) that might work: https://download.virtualbox.org/virtualbox/7.2.0/virtualbox-7.2_7.2.0-170228~Debian~bookworm_amd64.deb

  • Post #2854294

    Finally got around to upgrading my company&amp;#39;s #Asterisk box to #PJSIP last night! So glad I did. We now have proper SNI support, better NAT traversal, better header management, #IPv6 support in progress, and perhaps most importantly, are now using something under active development, so security issues will be fixed sooner. Please move away from chan_sip. It&amp;#39;s been deprecated since 2019, and completely removed from Asterisk as of 2023. #voip