<?xml version="1.0"?>
<rss version="2.0"><channel><title>General OS Kazoo Questions  Latest Topics</title><link>https://forums.2600hz.com/forum/66-general-os-kazoo-questions/</link><description>General OS Kazoo Questions  Latest Topics</description><language>en</language><item><title>Kazoo Version 5 open source</title><link>https://forums.2600hz.com/topic/12639-kazoo-version-5-open-source/</link><description><![CDATA[<p>
	Does version 5.X is open sourced? 
</p>
]]></description><guid isPermaLink="false">12639</guid><pubDate>Thu, 18 Nov 2021 07:30:30 +0000</pubDate></item><item><title>Sept 24 Recording</title><link>https://forums.2600hz.com/topic/26232-sept-24-recording/</link><description><![CDATA[<p>The link in the pinned post has expired. Can a new link to the recording be published please?</p>]]></description><guid isPermaLink="false">26232</guid><pubDate>Wed, 07 Jan 2026 22:20:55 +0000</pubDate></item><item><title>call restrict</title><link>https://forums.2600hz.com/topic/25929-call-restrict/</link><description><![CDATA[<pre dir="ltr" style="text-align:left;"><span lang="en" xml:lang="en">How can I restrict a user from receiving calls from a specific user or a specific number in Kazoo? I would also like to limit the numbers a user can dial.</span></pre>
]]></description><guid isPermaLink="false">25929</guid><pubDate>Mon, 07 Jul 2025 17:37:14 +0000</pubDate></item><item><title>2600Hz Open-Source Community Chat - Sept 24, 2025</title><link>https://forums.2600hz.com/topic/26224-2600hz-open-source-community-chat-sept-24-2025/</link><description><![CDATA[<p><s>We're looking forward to chatting with everyone September 24th, 2025 at 11:00AM PM ET/8:00AM PT!</s></p><p><a rel="external nofollow" href="https://events.teams.microsoft.com/event/e2d94561-3756-435c-ba24-a26eb37fc0b5@2d44ad66-e31e-435e-aaf4-fc407c81e93b"><s><u>Register Here!</u></s></a></p><p></p><p><s>Please register and come chat with the team. We'll have folks from both Product and Engineering on the call, so hoping to have a well rounded discussion with the community. See you in a couple weeks!</s></p><p></p><p><strong><span data-ips-font-size="125">A recording of the call can be found </span></strong><a rel="external nofollow" href="https://ooma365-my.sharepoint.com/:v:/g/personal/chris_kerber_ooma_com/EcH169aSuk1LmwOEg_GESWcB4G7O9_b-69a0aWeiFl1Wbg?e=1G5eWs"><strong><span data-ips-font-size="125">here</span></strong></a><strong><span data-ips-font-size="125">.</span></strong></p>]]></description><guid isPermaLink="false">26224</guid><pubDate>Tue, 09 Sep 2025 21:30:21 +0000</pubDate></item><item><title>Using a third party FreeSwitch-based PBX as provisioner helper with Kazoo</title><link>https://forums.2600hz.com/topic/12820-using-a-third-party-freeswitch-based-pbx-as-provisioner-helper-with-kazoo/</link><description><![CDATA[<p>
	I have this video as workaround for provisioning phones using settings from another third party pbx. I already read some threads in this forum before regarding this, few years ago.
</p>

<p>
	<a href="https://www.youtube.com/watch?v=WrpSRpP8N3c" rel="external nofollow">https://www.youtube.com/watch?v=WrpSRpP8N3c</a>
</p>
]]></description><guid isPermaLink="false">12820</guid><pubDate>Sun, 02 Jan 2022 22:43:54 +0000</pubDate></item><item><title>Kazoo Community / Kazoo v4.3 Keep-Alive Efforts</title><link>https://forums.2600hz.com/topic/25203-kazoo-community-kazoo-v43-keep-alive-efforts/</link><description><![CDATA[<p>
	I hope this is allowed and seen as a positive movement. If the mods don't want this here, feel free to remove it.<br><br>
	With the delayed release of v5, a group of hard working individuals have gathered to update Kazoo v4.3 to support newer operating systems. We are in the final stretches, in the testing and documentation phase. Once the testing and documentation is complete, I'll go back to developing educational content and adding functionality to the platform.
</p>

<p>
	I still hope for a release of v5, as I'd rather put this communities efforts towards improving that over the older v4.3. If 2600hz would like to help us in any way, even if it's to answer some questions about some of Kazoo's functionality in the open source version, please reach out.
</p>

<p>
	Info on the repos, discord, or if you want to help contribute, can be found here: <a href="https://kazoo-classic.github.io/" ipsnoembed="true" rel="external nofollow">https://kazoo-classic.github.io/</a>
</p>
]]></description><guid isPermaLink="false">25203</guid><pubDate>Fri, 14 Mar 2025 08:54:40 +0000</pubDate></item><item><title>hangup cause reason Q850</title><link>https://forums.2600hz.com/topic/25283-hangup-cause-reason-q850/</link><description><![CDATA[<p>
	l problema que enfrento es el siguiente: mi empresa desea contratar un troncal SIP para ofrecer servicios de PBX en la nube. Mi proveedor de troncales me ha indicado que debo compatibilizar mi sistema (Kazoo) con la tecnología que utilizan, que es un IMS de Huawei. El inconveniente surge al momento de manejar las causas de las llamadas colgadas. El IMS trabaja con ISUP o Q.850, en lugar de utilizar las causas SIP que provocaron la desconexión.
</p>

<p>
	Por ejemplo, cuando se realiza una llamada a un usuario que no responde, el sistema devuelve un 486 USER_BUSY en la causa SIP, pero siempre responde con Reason: Q.850;cause=16;text="NORMAL_CLEARING". Esto se repite en situaciones como llamadas rechazadas, usario no responde o usuarios ocupados. En todos estos casos, el proveedor me ha indicado que, debido a esta inconsistencia, no podian ofrecerme el troncal SIP. Esto se debe a que por ejmplo podia ofrcer un mal servicio a la red telefonica de la pstn `pr ejemplo si un número de la PSTN llama a un troncal asociado a un usuario en Kazoo que está ocupado, el IMS devuelve "NORMAL_CLEARING" (causa 16) en lugar de "USER_BUSY" (causa 17). Como resultado, el número que llama recibe una respuesta que indica que la llamada se ha colgado normalmente, en lugar de un mensaje que informe que el usuario está ocupado.
</p>

<p>
	He intentado resolver esto de manera parcial y me va adar el tronco sip pero fue que lo engañe utilizando una modificación en FreeSWITCH, pero esto ha afectado el funcionamiento general de Kazoo. Modifiqué el archivo <code>ecallmgr_fs_bridge.erl</code> en el código fuente y cambié la función spec pre_exec(kz_term:proplist(), atom(), kz_term:ne_binary(), channel(), kz_json:object()) -&gt; kz_term:proplist(). para establecer <code>continue_on_fail</code> en <code>false</code> pues lo tenia en true y añadí <code>{"application", "set sip_ignore_remote_cause=true"}</code>. Esto hace que, si el puente falla, no continúe el plan de marcado y se ignore la causa remota de la desconexión. Sin embargo, esto ha generado un problema: si el usuario  le activo el buzon de voz  el funcionamiento real deberia ser no hizo el puente continua plan de marcado y llega a su buzon de voz sin embargo como <code>continue_on_fail</code> en <code>false </code> nunca se llega a la parte del puente, y no llega al buzon de voz. Aclara tambien que si el usuario  no tiene ningun dispositivo registrado siemre siempre devuelve <code>SIP/2.0 480 Temporarily Unavailable</code> con la causa <code>Q.850;cause=16;text="NORMAL_CLEARING"</code>.
</p>

<p>
	Cabe mencionar que otros errores, como "no route destination" o "incompatible destination", unallocated: number devuelven correctamente el Reason: Q.850 corres`pondiente
</p>

<p>
	¿Podrías orientarme sobre cómo podría corregir esto para lograr una mejor compatibilidad y que Kazoo funcione adecuadamente? He observado en los logs de Kazoo y FreeSWITCH que el canal se cierra con <code>exec: uuid_kill(UUID)</code> y que, por defecto, esta API de FreeSWITCH siempre finaliza con causa 16 (normal clearing). Sin embargo, sé que si ejecutas <code>exec: uuid_kill UUID</code>, puedes especificar una causa, como 17, para cerrar el canal. No estoy seguro de cómo implementar esta opción y en qué parte podría mapear la causa para finalizar la llamada con la causa correcta.
</p>

<p>
	Agradezco de antemano cualquier orientación que puedas brindarme
</p>
]]></description><guid isPermaLink="false">25283</guid><pubDate>Wed, 26 Mar 2025 03:54:17 +0000</pubDate></item><item><title>kazoo con webrtc</title><link>https://forums.2600hz.com/topic/25260-kazoo-con-webrtc/</link><description><![CDATA[<p>
	Buenas noches desde hace tiempo vengo usando kazoo con muy buenos resultados en mi empresa usando telefonos sip y sophone en windows quiero dar el siguiente paso y usar webrtc para hacer llamada desde el navegador he usado la libreria original libwebphone-2.0.4 que esta en la comunidad y ahora estoy usando sip jssip-3.10.0 y todos dan el mismo resultado se me registra bien pero cuando llamo a algun servicio me da INCOMPATIBLE_DESTINATION
</p>

<p>
	SIP/2.0 488 Not Acceptable Here<br />
	Via: SIP/2.0/UDP 10.50.4.171:5062;branch=z9hG4bKa7a2.1245634a371c0d3d7c01317e5a030212.0;received=1.1.0.6;rport=5062<br />
	Via: SIP/2.0/WSS hi3jkv7r679j.invalid;rport=61538;received=10.12.21.56;branch=z9hG4bK3799494<br />
	Max-Forwards: 50<br />
	From: &lt;sip:1003@ronneypbx.xutil.cu&gt;;tag=okt4tktasu<br />
	To: &lt;sip:*98@ronneypbx.xutil.cu&gt;;tag=8Sy9tFBS3ZF1D<br />
	Call-ID: krpnrhu5bargo3oq0cq4<br />
	CSeq: 1759 INVITE<br />
	Contact: &lt;sip:*98@10.50.4.171:5060;transport=udp&gt;<br />
	User-Agent: Platel<br />
	Accept: application/sdp<br />
	Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE<br />
	Supported: timer, path, replaces<br />
	Allow-Events: talk, hold, conference, presence, as-feature-event, dialog, line-seize, call-info, sla, include-session-description, presence.winfo, message-summary, refer<br />
	Reason: Q.850;cause=88;text="INCOMPATIBLE_DESTINATION"<br />
	Content-Length: 0<br />
	Remote-Party-ID: "*98" &lt;sip:*98@ronneypbx.xutil.cu&gt;;party=calling;privacy=off;screen=no
</p>

<p>
	este es es el log de kamailio cuando se registra
</p>

<p>
	73(273) INFO: &lt;script&gt;: k9q5qojgrdiiu12u6lp4io|end|successful registered with contact : &lt;sip:nkc4c4f3@gib1okmk1uqg.invalid;transport=ws&gt;;+sip.ice;reg-id=1;+sip.instance="&lt;urn:uuid:7e0a7964-af05-4055-8c76-50822d53bd37&gt;";expires=600 : 600<br />
	28(228) INFO: &lt;script&gt;: 17946b64-8137-123e-18ac-bc2411231458|start|received udp request NOTIFY sip:1003@ronneypbx.xutil.cu
</p>

<p>
	y esto e slo que da freeswitch cuando realizo una llamada  al buzon de voz *98
</p>

<p>
	INVITE sip:*98@ronneypbx.xutil.cu SIP/2.0<br />
	Record-Route: &lt;sip:10.50.4.171:5062;r2=on;lr=on;ftag=hm3uv6hkn9&gt;<br />
	Record-Route: &lt;sip:10.50.4.171:5065;transport=ws;r2=on;lr=on;ftag=hm3uv6hkn9&gt;<br />
	Via: SIP/2.0/UDP 10.50.4.171:5062;branch=z9hG4bK7a6.799547413c3f4d1d7e2173fdaf53e5f7.0<br />
	Via: SIP/2.0/WSS gib1okmk1uqg.invalid;rport=61577;received=10.12.21.56;branch=z9hG4bK2587480<br />
	Max-Forwards: 50<br />
	To: &lt;sip:*98@ronneypbx.xutil.cu&gt;<br />
	From: &lt;sip:1003@ronneypbx.xutil.cu&gt;;tag=hm3uv6hkn9<br />
	Call-ID: 1na8ose8sc80kt1fcibd<br />
	CSeq: 7087 INVITE<br />
	Contact: &lt;sip:1003@ronneypbx.xutil.cu;gr=urn:uuid:7e0a7964-af05-4055-8c76-50822d53bd37;alias=10.12.21.56~61577~6&gt;<br />
	Content-Type: application/sdp<br />
	Session-Expires: 3600<br />
	Allow: INVITE,ACK,CANCEL,BYE,UPDATE,MESSAGE,OPTIONS,REFER,INFO,NOTIFY<br />
	Supported: timer,gruu,ice,replaces,outbound<br />
	User-Agent: JsSIP 3.10.0<br />
	Content-Length: 1884<br />
	X-AUTH-IP: 10.12.21.56<br />
	X-AUTH-PORT: 61577<br />
	X-AUTH-Token: d9f9854380fda4c7875b7d61a8ee2996@02bbed535679643e00c0ef75c85ecce3<br />
	X-ecallmgr_Account-ID: 02bbed535679643e00c0ef75c85ecce3<br />
	X-ecallmgr_Authorizing-Type: device<br />
	X-ecallmgr_Authorizing-ID: d9f9854380fda4c7875b7d61a8ee2996<br />
	X-ecallmgr_Username: 1003<br />
	X-ecallmgr_Realm: ronneypbx.xutil.cu<br />
	X-ecallmgr_Account-Realm: ronneypbx.xutil.cu<br />
	X-ecallmgr_Account-Name: admin<br />
	X-ecallmgr_Presence-ID: 1003@ronneypbx.xutil.cu<br />
	X-ecallmgr_Owner-ID: 438430179e65eecd7d4a70ab7cff5cb0
</p>

<p>
	v=0<br />
	o=mozilla...THIS_IS_SDPARTA-99.0 3805914362064822193 0 IN IP4 0.0.0.0<br />
	s=-<br />
	t=0 0<br />
	a=sendrecv<br />
	a=fingerprint:sha-256 AD:54:85:6E:ED:06:42:D0:FA:F2:C4:29:06:52:D9:C6:F8:19:2F:0B:FD:9F:97:DA:07:01:E9:7C:EE:43:C7:4F<br />
	a=group:BUNDLE 0<br />
	a=ice-options:trickle<br />
	a=msid-semantic:WMS *<br />
	m=audio 64742 UDP/TLS/RTP/SAVPF 109 9 0 8 101<br />
	c=IN IP4 10.12.21.56<br />
	a=candidate:0 1 UDP 2122252543 192.168.140.1 64742 typ host<br />
	a=candidate:1 1 UDP 2122187007 10.12.21.56 64743 typ host<br />
	a=candidate:2 1 UDP 2122121471 10.61.59.21 64744 typ host<br />
	a=candidate:3 1 TCP 2105524479 192.168.140.1 9 typ host tcptype active<br />
	a=candidate:4 1 TCP 2105458943 10.12.21.56 9 typ host tcptype active<br />
	a=candidate:5 1 TCP 2105393407 10.61.59.21 9 typ host tcptype active<br />
	a=candidate:0 2 UDP 2122252542 192.168.140.1 64745 typ host<br />
	a=candidate:1 2 UDP 2122187006 10.12.21.56 64746 typ host<br />
	a=candidate:2 2 UDP 2122121470 10.61.59.21 64747 typ host<br />
	a=candidate:3 2 TCP 2105524478 192.168.140.1 9 typ host tcptype active<br />
	a=candidate:4 2 TCP 2105458942 10.12.21.56 9 typ host tcptype active<br />
	a=candidate:5 2 TCP 2105393406 10.61.59.21 9 typ host tcptype active<br />
	a=sendrecv<br />
	a=end-of-candidates<br />
	a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level<br />
	a=extmap:2/recvonly urn:ietf:params:rtp-hdrext:csrc-audio-level<br />
	a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid<br />
	a=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1<br />
	a=fmtp:101 0-15<br />
	a=ice-pwd:47cb04c53dd26bf935abfdb28c8d0a5e<br />
	a=ice-ufrag:c31a746f<br />
	a=mid:0<br />
	a=msid:{5f6c1aff-a6b3-4403-8ad3-6bc2fc7ed2f2} {d1cbddb8-b492-4b31-8978-fb45a7b8f254}<br />
	a=rtcp:64745 IN IP4 10.12.21.56<br />
	a=rtcp-mux<br />
	a=rtpmap:109 opus/48000/2<br />
	a=rtpmap:9 G722/8000/1<br />
	a=rtpmap:0 PCMU/8000<br />
	a=rtpmap:8 PCMA/8000<br />
	a=rtpmap:101 telephone-event/8000<br />
	a=setup:actpass<br />
	a=ssrc:1244110417 cname:{df7e721e-1230-4b9e-9c6e-c2fa01cd1c93}<br />
	a=oldmediaip:192.168.140.1<br />
	a=oldmediaip:192.168.140.1<br />
	2025-03-21T16:38:35.531845001Z [NOTICE] switch_channel.c:1230 New Channel sofia/sipinterface_1/1003@ronneypbx.xutil.cu [1na8ose8sc80kt1fcibd]<br />
	2025-03-21T16:38:35.532008284Z [DEBUG] switch_core_state_machine.c:587 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Running State Change CS_NEW (Cur 1 Tot 15)<br />
	2025-03-21T16:38:35.532195765Z [DEBUG] sofia.c:10438 sofia/sipinterface_1/1003@ronneypbx.xutil.cu receiving invite from 1.1.0.6:5062 version: 20.20.5 build 87 64bit<br />
	2025-03-21T16:38:35.532488696Z [DEBUG] sofia.c:10533 verifying acl "0.0.0.0/0" for ip/port 1.1.0.6:0.<br />
	2025-03-21T16:38:35.532538118Z [DEBUG] sofia.c:10562 IP 1.1.0.6 Approved by acl "0.0.0.0/0[]". Access Granted.<br />
	2025-03-21T16:38:35.533435150Z [DEBUG] sofia.c:7460 Channel sofia/sipinterface_1/1003@ronneypbx.xutil.cu entering state [received][100]<br />
	2025-03-21T16:38:35.533467580Z [DEBUG] sofia.c:7470 Remote SDP:<br />
	v=0<br />
	o=mozilla...THIS_IS_SDPARTA-99.0 3805914362064822193 0 IN IP4 0.0.0.0<br />
	s=-<br />
	t=0 0<br />
	a=sendrecv<br />
	a=fingerprint:sha-256 AD:54:85:6E:ED:06:42:D0:FA:F2:C4:29:06:52:D9:C6:F8:19:2F:0B:FD:9F:97:DA:07:01:E9:7C:EE:43:C7:4F<br />
	a=group:BUNDLE 0<br />
	a=ice-options:trickle<br />
	a=msid-semantic:WMS *<br />
	m=audio 64742 UDP/TLS/RTP/SAVPF 109 9 0 8 101<br />
	c=IN IP4 10.12.21.56<br />
	a=rtpmap:109 opus/48000/2<br />
	a=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1<br />
	a=rtpmap:9 G722/8000/1<br />
	a=rtpmap:0 PCMU/8000<br />
	a=rtpmap:8 PCMA/8000<br />
	a=rtpmap:101 telephone-event/8000<br />
	a=fmtp:101 0-15<br />
	a=candidate:0 1 UDP 2122252543 192.168.140.1 64742 typ host<br />
	a=candidate:1 1 UDP 2122187007 10.12.21.56 64743 typ host<br />
	a=candidate:2 1 UDP 2122121471 10.61.59.21 64744 typ host<br />
	a=candidate:3 1 TCP 2105524479 192.168.140.1 9 typ host tcptype active<br />
	a=candidate:4 1 TCP 2105458943 10.12.21.56 9 typ host tcptype active<br />
	a=candidate:5 1 TCP 2105393407 10.61.59.21 9 typ host tcptype active<br />
	a=candidate:0 2 UDP 2122252542 192.168.140.1 64745 typ host<br />
	a=candidate:1 2 UDP 2122187006 10.12.21.56 64746 typ host<br />
	a=candidate:2 2 UDP 2122121470 10.61.59.21 64747 typ host<br />
	a=candidate:3 2 TCP 2105524478 192.168.140.1 9 typ host tcptype active<br />
	a=candidate:4 2 TCP 2105458942 10.12.21.56 9 typ host tcptype active<br />
	a=candidate:5 2 TCP 2105393406 10.61.59.21 9 typ host tcptype active<br />
	a=end-of-candidates<br />
	a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level<br />
	a=extmap:2/recvonly urn:ietf:params:rtp-hdrext:csrc-audio-level<br />
	a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid<br />
	a=ice-pwd:47cb04c53dd26bf935abfdb28c8d0a5e<br />
	a=ice-ufrag:c31a746f<br />
	a=mid:0<br />
	a=msid:{5f6c1aff-a6b3-4403-8ad3-6bc2fc7ed2f2} {d1cbddb8-b492-4b31-8978-fb45a7b8f254}<br />
	a=rtcp:64745 IN IP4 10.12.21.56<br />
	a=rtcp-mux<br />
	a=setup:actpass<br />
	a=ssrc:1244110417 cname:{df7e721e-1230-4b9e-9c6e-c2fa01cd1c93}<br />
	a=oldmediaip:192.168.140.1<br />
	a=oldmediaip:192.168.140.1
</p>

<p>
	2025-03-21T16:38:35.533622655Z [DEBUG] sofia.c:7873 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State Change CS_NEW -&gt; CS_INIT<br />
	2025-03-21T16:38:35.533642195Z [DEBUG] switch_core_state_machine.c:606 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State NEW<br />
	2025-03-21T16:38:35.533648782Z [DEBUG] switch_core_state_machine.c:587 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Running State Change CS_INIT (Cur 1 Tot 15)<br />
	2025-03-21T16:38:35.533716762Z [DEBUG] switch_core_state_machine.c:630 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State INIT<br />
	2025-03-21T16:38:35.533755540Z [DEBUG] mod_sofia.c:94 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SOFIA INIT<br />
	2025-03-21T16:38:35.533791858Z [DEBUG] switch_core_state_machine.c:40 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Standard INIT<br />
	2025-03-21T16:38:35.533798530Z [DEBUG] switch_core_state_machine.c:48 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State Change CS_INIT -&gt; CS_ROUTING<br />
	2025-03-21T16:38:35.533805402Z [DEBUG] switch_core_state_machine.c:630 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State INIT going to sleep<br />
	2025-03-21T16:38:35.533935971Z [DEBUG] switch_core_state_machine.c:587 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Running State Change CS_ROUTING (Cur 1 Tot 15)<br />
	2025-03-21T16:38:35.533952194Z [DEBUG] switch_channel.c:2415 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Callstate Change DOWN -&gt; RINGING<br />
	2025-03-21T16:38:35.534631401Z [DEBUG] switch_core_state_machine.c:646 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State ROUTING<br />
	2025-03-21T16:38:35.534716975Z [DEBUG] mod_sofia.c:161 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SOFIA ROUTING<br />
	2025-03-21T16:38:35.534730904Z [DEBUG] switch_core_state_machine.c:236 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Standard ROUTING<br />
	2025-03-21T16:38:35.534771058Z [INFO] mod_dialplan_xml.c:637 Processing 1003 &lt;1003&gt;-&gt;*98 in context context_2<br />
	send 407 bytes to udp/[1.1.0.6]:5062 at 16:38:35.534748:<br />
	------------------------------------------------------------------------<br />
	SIP/2.0 100 Trying<br />
	Via: SIP/2.0/UDP 10.50.4.171:5062;branch=z9hG4bK7a6.799547413c3f4d1d7e2173fdaf53e5f7.0;received=1.1.0.6;rport=5062<br />
	Via: SIP/2.0/WSS gib1okmk1uqg.invalid;rport=61577;received=10.12.21.56;branch=z9hG4bK2587480<br />
	From: &lt;sip:1003@ronneypbx.xutil.cu&gt;;tag=hm3uv6hkn9<br />
	To: &lt;sip:*98@ronneypbx.xutil.cu&gt;<br />
	Call-ID: 1na8ose8sc80kt1fcibd<br />
	CSeq: 7087 INVITE<br />
	User-Agent: Platel<br />
	Content-Length: 0
</p>

<p>
	2025-03-21T16:38:35.535031014Z [DEBUG] kazoo_fetch_agent.c:246 Sending dialplan XML request (7b77afc9-b85f-4f4a-a07b-764edd8a2372) to kazoo_apps@kazoo.kazoo &lt;3.1756.0&gt;<br />
	2025-03-21T16:38:35.535431230Z [DEBUG] kazoo_node.c:1610 Sent erlang message to kazoo_apps@kazoo.kazoo &lt;3.1756.0&gt;<br />
	2025-03-21T16:38:35.537378648Z [DEBUG] kazoo_node.c:1109 exec: kz_uuid_setvar_multi(1na8ose8sc80kt1fcibd ecallmgr_Call-Interaction-ID=63909808715-8d3e5e18)<br />
	2025-03-21T16:38:35.538391093Z [DEBUG] kazoo_node.c:1610 Sent erlang message to kazoo_apps@kazoo.kazoo &lt;3.8663.0&gt;<br />
	2025-03-21T16:38:35.561809062Z [DEBUG] kazoo_fetch_agent.c:317 Received dialplan XML (7b77afc9-b85f-4f4a-a07b-764edd8a2372) after 39ms: &lt;document type="freeswitch/xml"&gt;&lt;section name="dialplan" description="Route Park Response"&gt;&lt;context name="context_2"&gt;&lt;extension name="park"&gt;&lt;condition&gt;&lt;action application="log" data="NOTICE log|${uuid}|kazoo_apps@kazoo.kazoo won call control"/&gt;&lt;action application="export" data="ecallmgr_Ecallmgr-Node=kazoo_apps@kazoo.kazoo"/&gt;&lt;condition field="${ecallmgr_Bridge-ID}" expression="^$"&gt;&lt;action application="export" data="ecallmgr_Bridge-ID=${UUID}" inline="true"/&gt;&lt;/condition&gt;&lt;action application="set" data="ringback=%(2000,4000,440,480)"/&gt;&lt;action application="set" data="transfer_ringback=%(2000,4000,440,480)"/&gt;&lt;action application="kz_multiset" data="^^|ecallmgr_Username=1003|ecallmgr_Realm=ronneypbx.xutil.cu|ecallmgr_Privacy-Hide-Number=false|ecallmgr_Privacy-Hide-Name=false|presence_id=1003@ronneypbx.xutil.cu|ecallmgr_Owner-ID=438430179e65eecd7d4a70ab7cff5cb0|ecallmgr_Fetch-ID=7b77afc9-b85f-4f4a-a07b-764edd8a2372|ecallmgr_Call-Interaction-ID=63909808715-8d3e5e18|ecallmgr_Authorizing-Type=device|ecallmgr_Authorizing-ID=d9f9854380fda4c7875b7d61a8ee2996|ecallmgr_Account-Realm=ronneypbx.xutil.cu|ecallmgr_Account-Name=admin|ecallmgr_Account-ID=02bbed535679643e00c0ef75c85ecce3|ecallmgr_CallFlow-ID=27af2d60c6efb99cba9c08dbd9cdb36d|ecallmgr_Channel-Authorized=true"/&gt;&lt;action application="multiunset" data="^^;sip_h_X-AUTH-IP;sip_h_X-AUTH-PORT;sip_h_X-AUTH-Token;sip_h_X-ecallmgr_Account-ID;sip_h_X-ecallmgr_Authorizing-Type;sip_h_X-ecallmgr_Authorizing-ID;sip_h_X-ecallmgr_Username;sip_h_X-ecallmgr_Realm;sip_h_X-ecallmgr_Account-Realm;sip_h_X-ecallmgr_Account-Name;sip_h_X-ecallmgr_Presence-ID;sip_h_X-ecallmgr_Owner-ID"/&gt;&lt;action application="park"/&gt;&lt;/condition&gt;&lt;/extension&gt;&lt;/context&gt;&lt;/section&gt;&lt;/document&gt;<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu parsing [context_2-&gt;park] continue=false<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Absolute Condition [park]<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Action log(NOTICE log|${uuid}|kazoo_apps@kazoo.kazoo won call control)<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Action export(ecallmgr_Ecallmgr-Node=kazoo_apps@kazoo.kazoo)<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Action set(ringback=%(2000,4000,440,480))<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Action set(transfer_ringback=%(2000,4000,440,480))<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Action kz_multiset(^^|ecallmgr_Username=1003|ecallmgr_Realm=ronneypbx.xutil.cu|ecallmgr_Privacy-Hide-Number=false|ecallmgr_Privacy-Hide-Name=false|presence_id=1003@ronneypbx.xutil.cu|ecallmgr_Owner-ID=438430179e65eecd7d4a70ab7cff5cb0|ecallmgr_Fetch-ID=7b77afc9-b85f-4f4a-a07b-764edd8a2372|ecallmgr_Call-Interaction-ID=63909808715-8d3e5e18|ecallmgr_Authorizing-Type=device|ecallmgr_Authorizing-ID=d9f9854380fda4c7875b7d61a8ee2996|ecallmgr_Account-Realm=ronneypbx.xutil.cu|ecallmgr_Account-Name=admin|ecallmgr_Account-ID=02bbed535679643e00c0ef75c85ecce3|ecallmgr_CallFlow-ID=27af2d60c6efb99cba9c08dbd9cdb36d|ecallmgr_Channel-Authorized=true)<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Action multiunset(^^;sip_h_X-AUTH-IP;sip_h_X-AUTH-PORT;sip_h_X-AUTH-Token;sip_h_X-ecallmgr_Account-ID;sip_h_X-ecallmgr_Authorizing-Type;sip_h_X-ecallmgr_Authorizing-ID;sip_h_X-ecallmgr_Username;sip_h_X-ecallmgr_Realm;sip_h_X-ecallmgr_Account-Realm;sip_h_X-ecallmgr_Account-Name;sip_h_X-ecallmgr_Presence-ID;sip_h_X-ecallmgr_Owner-ID)<br />
	Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Action park()<br />
	|--- Dialplan: Processing recursive conditions level:1 [park_recur_1] require-nested=TRUE<br />
	|--- Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Regex (PASS) [park_recur_1] ${ecallmgr_Bridge-ID}() =~ /^$/ break=on-false<br />
	|--- Dialplan: sofia/sipinterface_1/1003@ronneypbx.xutil.cu Action export(ecallmgr_Bridge-ID=${UUID}) INLINE<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu export(ecallmgr_Bridge-ID=1na8ose8sc80kt1fcibd)<br />
	2025-03-21T16:38:35.562278541Z [DEBUG] switch_channel.c:1394 EXPORT (export_vars) [ecallmgr_Bridge-ID]=[1na8ose8sc80kt1fcibd]<br />
	2025-03-21T16:38:35.562392884Z [DEBUG] switch_core_state_machine.c:287 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State Change CS_ROUTING -&gt; CS_EXECUTE<br />
	2025-03-21T16:38:35.562404345Z [DEBUG] switch_core_state_machine.c:646 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State ROUTING going to sleep<br />
	2025-03-21T16:38:35.562575611Z [DEBUG] switch_core_state_machine.c:587 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Running State Change CS_EXECUTE (Cur 1 Tot 15)<br />
	2025-03-21T16:38:35.562795507Z [DEBUG] kazoo_node.c:1610 Sent erlang message to kazoo_apps@kazoo.kazoo &lt;3.8664.0&gt;<br />
	2025-03-21T16:38:35.562851832Z [DEBUG] switch_core_state_machine.c:653 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State EXECUTE<br />
	2025-03-21T16:38:35.562876660Z [DEBUG] mod_sofia.c:216 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SOFIA EXECUTE<br />
	2025-03-21T16:38:35.562887870Z [DEBUG] switch_core_state_machine.c:329 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Standard EXECUTE<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu log(NOTICE log|1na8ose8sc80kt1fcibd|kazoo_apps@kazoo.kazoo won call control)<br />
	2025-03-21T16:38:35.563381231Z [NOTICE] mod_dptools.c:1867 log|1na8ose8sc80kt1fcibd|kazoo_apps@kazoo.kazoo won call control<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu export(ecallmgr_Ecallmgr-Node=kazoo_apps@kazoo.kazoo)<br />
	2025-03-21T16:38:35.564312656Z [DEBUG] switch_channel.c:1394 EXPORT (export_vars) [ecallmgr_Ecallmgr-Node]=[kazoo_apps@kazoo.kazoo]<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu set(ringback=%(2000,4000,440,480))<br />
	2025-03-21T16:38:35.565190759Z [DEBUG] mod_dptools.c:1673 SET sofia/sipinterface_1/1003@ronneypbx.xutil.cu [ringback]=[%(2000,4000,440,480)]<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu set(transfer_ringback=%(2000,4000,440,480))<br />
	2025-03-21T16:38:35.566034133Z [DEBUG] kazoo_node.c:1109 exec: kz_uuid_setvar_multi(1na8ose8sc80kt1fcibd ^^~ecallmgr_Username=1003~ecallmgr_Realm=ronneypbx.xutil.cu~ecallmgr_Privacy-Hide-Number=false~ecallmgr_Privacy-Hide-Name=false~presence_id=1003@ronneypbx.xutil.cu~ecallmgr_Owner-ID=438430179e65eecd7d4a70ab7cff5cb0~ecallmgr_Fetch-ID=7b77afc9-b85f-4f4a-a07b-764edd8a2372~ecallmgr_Call-Interaction-ID=63909808715-8d3e5e18~ecallmgr_Authorizing-Type=device~ecallmgr_Authorizing-ID=d9f9854380fda4c7875b7d61a8ee2996~ecallmgr_Account-Realm=ronneypbx.xutil.cu~ecallmgr_Account-Name=admin~ecallmgr_Account-ID=02bbed535679643e00c0ef75c85ecce3~ecallmgr_CallFlow-ID=27af2d60c6efb99cba9c08dbd9cdb36d~ecallmgr_Channel-Authorized=true~ecallmgr_Application-Node=kazoo_apps@kazoo.kazoo~ecallmgr_Application-Name=callflow)<br />
	2025-03-21T16:38:35.566126758Z [DEBUG] mod_dptools.c:1673 SET sofia/sipinterface_1/1003@ronneypbx.xutil.cu [transfer_ringback]=[%(2000,4000,440,480)]<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu kz_multiset(^^|ecallmgr_Username=1003|ecallmgr_Realm=ronneypbx.xutil.cu|ecallmgr_Privacy-Hide-Number=false|ecallmgr_Privacy-Hide-Name=false|presence_id=1003@ronneypbx.xutil.cu|ecallmgr_Owner-ID=438430179e65eecd7d4a70ab7cff5cb0|ecallmgr_Fetch-ID=7b77afc9-b85f-4f4a-a07b-764edd8a2372|ecallmgr_Call-Interaction-ID=63909808715-8d3e5e18|ecallmgr_Authorizing-Type=device|ecallmgr_Authorizing-ID=d9f9854380fda4c7875b7d61a8ee2996|ecallmgr_Account-Realm=ronneypbx.xutil.cu|ecallmgr_Account-Name=admin|ecallmgr_Account-ID=02bbed535679643e00c0ef75c85ecce3|ecallmgr_CallFlow-ID=27af2d60c6efb99cba9c08dbd9cdb36d|ecallmgr_Channel-Authorized=true)<br />
	2025-03-21T16:38:35.566869875Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Username]=[1003] =&gt; [1003]<br />
	2025-03-21T16:38:35.566919754Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Realm]=[ronneypbx.xutil.cu] =&gt; [ronneypbx.xutil.cu]<br />
	2025-03-21T16:38:35.566952347Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Privacy-Hide-Number]=[false] =&gt; [false]<br />
	2025-03-21T16:38:35.566984920Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Privacy-Hide-Name]=[false] =&gt; [false]<br />
	2025-03-21T16:38:35.566990534Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [presence_id]=[1003@ronneypbx.xutil.cu] =&gt; [1003@ronneypbx.xutil.cu]<br />
	2025-03-21T16:38:35.566995140Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Owner-ID]=[438430179e65eecd7d4a70ab7cff5cb0] =&gt; [438430179e65eecd7d4a70ab7cff5cb0]<br />
	2025-03-21T16:38:35.567003429Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Fetch-ID]=[7b77afc9-b85f-4f4a-a07b-764edd8a2372] =&gt; [7b77afc9-b85f-4f4a-a07b-764edd8a2372]<br />
	2025-03-21T16:38:35.567008804Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Call-Interaction-ID]=[63909808715-8d3e5e18] =&gt; [63909808715-8d3e5e18]<br />
	2025-03-21T16:38:35.567016194Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Authorizing-Type]=[device] =&gt; [device]<br />
	2025-03-21T16:38:35.567025364Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Authorizing-ID]=[d9f9854380fda4c7875b7d61a8ee2996] =&gt; [d9f9854380fda4c7875b7d61a8ee2996]<br />
	2025-03-21T16:38:35.567030218Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Account-Realm]=[ronneypbx.xutil.cu] =&gt; [ronneypbx.xutil.cu]<br />
	2025-03-21T16:38:35.567033820Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Account-Name]=[admin] =&gt; [admin]<br />
	2025-03-21T16:38:35.567037760Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Account-ID]=[02bbed535679643e00c0ef75c85ecce3] =&gt; [02bbed535679643e00c0ef75c85ecce3]<br />
	2025-03-21T16:38:35.567041686Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_CallFlow-ID]=[27af2d60c6efb99cba9c08dbd9cdb36d] =&gt; [27af2d60c6efb99cba9c08dbd9cdb36d]<br />
	2025-03-21T16:38:35.567045600Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Channel-Authorized]=[true] =&gt; [true]<br />
	2025-03-21T16:38:35.567067731Z [DEBUG] kazoo_node.c:1610 Sent erlang message to kazoo_apps@kazoo.kazoo &lt;3.8664.0&gt;<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu multiunset(^^;sip_h_X-AUTH-IP;sip_h_X-AUTH-PORT;sip_h_X-AUTH-Token;sip_h_X-ecallmgr_Account-ID;sip_h_X-ecallmgr_Authorizing-Type;sip_h_X-ecallmgr_Authorizing-ID;sip_h_X-ecallmgr_Username;sip_h_X-ecallmgr_Realm;sip_h_X-ecallmgr_Account-Realm;sip_h_X-ecallmgr_Account-Name;sip_h_X-ecallmgr_Presence-ID;sip_h_X-ecallmgr_Owner-ID)<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu park()<br />
	2025-03-21T16:38:35.591890796Z [NOTICE] kazoo_node.c:449 log|1na8ose8sc80kt1fcibd|executing kz_multiset ^^~effective_caller_id_name=1003 1003~effective_caller_id_number=1003~ecallmgr_Privacy-Hide-Name=false~ecallmgr_Privacy-Hide-Number=false<br />
	2025-03-21T16:38:35.592907703Z [DEBUG] kazoo_node.c:1610 Sent erlang message to kazoo_apps@kazoo.kazoo &lt;3.8678.0&gt;<br />
	2025-03-21T16:38:35.602205861Z [NOTICE] kazoo_node.c:449 log|1na8ose8sc80kt1fcibd|executing answer<br />
	2025-03-21T16:38:35.603197857Z [DEBUG] kazoo_node.c:1610 Sent erlang message to kazoo_apps@kazoo.kazoo &lt;3.8678.0&gt;<br />
	2025-03-21T16:38:35.608926938Z [DEBUG] switch_ivr.c:632 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Command Execute [depth=0] kz_multiset(^^~effective_caller_id_name=1003 1003~effective_caller_id_number=1003~ecallmgr_Privacy-Hide-Name=false~ecallmgr_Privacy-Hide-Number=false)<br />
	EXECUTE [depth=0] sofia/sipinterface_1/1003@ronneypbx.xutil.cu kz_multiset(^^~effective_caller_id_name=1003 1003~effective_caller_id_number=1003~ecallmgr_Privacy-Hide-Name=false~ecallmgr_Privacy-Hide-Number=false)<br />
	2025-03-21T16:38:35.609175028Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [effective_caller_id_name]=[1003 1003] =&gt; [1003 1003]<br />
	2025-03-21T16:38:35.609189881Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [effective_caller_id_number]=[1003] =&gt; [1003]<br />
	2025-03-21T16:38:35.609193998Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Privacy-Hide-Name]=[false] =&gt; [false]<br />
	2025-03-21T16:38:35.609197356Z [DEBUG] kazoo_dptools.c:218 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SET [ecallmgr_Privacy-Hide-Number]=[false] =&gt; [false]<br />
	2025-03-21T16:38:35.609674742Z [DEBUG] switch_ivr.c:632 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Command Execute [depth=1] answer()<br />
	EXECUTE [depth=1] sofia/sipinterface_1/1003@ronneypbx.xutil.cu answer()<br />
	2025-03-21T16:38:35.611169192Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [opus:109:48000:20:0:2]/[opus:116:48000:20:0:1]<br />
	2025-03-21T16:38:35.611186281Z [DEBUG] switch_core_media.c:5708 Audio Codec Compare [opus:116:48000:20:0:1] ++++ is saved as a match<br />
	2025-03-21T16:38:35.611190395Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [opus:109:48000:20:0:2]/[PCMA:8:8000:20:64000:1]<br />
	2025-03-21T16:38:35.611192960Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [opus:109:48000:20:0:2]/[PCMU:0:8000:20:64000:1]<br />
	2025-03-21T16:38:35.611198715Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [G722:9:8000:20:64000:1]/[opus:116:48000:20:0:1]<br />
	2025-03-21T16:38:35.611201347Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]<br />
	2025-03-21T16:38:35.611203643Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]<br />
	2025-03-21T16:38:35.611207546Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[opus:116:48000:20:0:1]<br />
	2025-03-21T16:38:35.611210041Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]<br />
	2025-03-21T16:38:35.611212511Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]<br />
	2025-03-21T16:38:35.611218311Z [DEBUG] switch_core_media.c:5708 Audio Codec Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match<br />
	2025-03-21T16:38:35.611223762Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[opus:116:48000:20:0:1]<br />
	2025-03-21T16:38:35.611225975Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]<br />
	2025-03-21T16:38:35.611228318Z [DEBUG] switch_core_media.c:5708 Audio Codec Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match<br />
	2025-03-21T16:38:35.611230042Z [DEBUG] switch_core_media.c:5653 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]<br />
	2025-03-21T16:38:35.611232059Z [DEBUG] switch_core_media.c:5569 Set telephone-event payload to 101@8000<br />
	2025-03-21T16:38:35.611369355Z [DEBUG] mod_opus.c:613 Opus encoder: set bitrate to local settings [120000bps]<br />
	2025-03-21T16:38:35.611495389Z [DEBUG] mod_opus.c:613 Opus encoder: set bitrate to local settings [120000bps]<br />
	2025-03-21T16:38:35.611559231Z [DEBUG] switch_core_media.c:3873 Set Codec sofia/sipinterface_1/1003@ronneypbx.xutil.cu opus/48000 20 ms 960 samples 0 bits 2 channels<br />
	2025-03-21T16:38:35.611572299Z [DEBUG] switch_core_codec.c:111 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Original read codec set to opus:116<br />
	2025-03-21T16:38:35.611911188Z [WARNING] switch_core_media.c:4296 NO candidate ACL defined, Defaulting to wan.auto<br />
	2025-03-21T16:38:35.611927503Z [DEBUG] switch_core_media.c:4347 Save audio Candidate cid: 1 proto: UDP type: host addr: 192.168.140.1:64742<br />
	2025-03-21T16:38:35.611940715Z [DEBUG] switch_core_media.c:4347 Save audio Candidate cid: 1 proto: UDP type: host addr: 10.12.21.56:64743<br />
	2025-03-21T16:38:35.611955772Z [DEBUG] switch_core_media.c:4347 Save audio Candidate cid: 1 proto: UDP type: host addr: 10.61.59.21:64744<br />
	2025-03-21T16:38:35.611965759Z [DEBUG] switch_core_media.c:4347 Save audio Candidate cid: 2 proto: UDP type: host addr: 192.168.140.1:64745<br />
	2025-03-21T16:38:35.611969386Z [DEBUG] switch_core_media.c:4347 Save audio Candidate cid: 2 proto: UDP type: host addr: 10.12.21.56:64746<br />
	2025-03-21T16:38:35.611973096Z [DEBUG] switch_core_media.c:4347 Save audio Candidate cid: 2 proto: UDP type: host addr: 10.61.59.21:64747<br />
	2025-03-21T16:38:35.611979734Z [DEBUG] switch_core_media.c:4392 Searching for rtp candidate.<br />
	2025-03-21T16:38:35.611990622Z [DEBUG] switch_core_media.c:4392 Searching for rtcp candidate.<br />
	2025-03-21T16:38:35.612000050Z [DEBUG] switch_core_media.c:4439 Look for Relay Candidates as last resort<br />
	2025-03-21T16:38:35.612005564Z [DEBUG] switch_core_media.c:4392 Searching for rtp candidate.<br />
	2025-03-21T16:38:35.612009674Z [DEBUG] switch_core_media.c:4392 Searching for rtcp candidate.<br />
	2025-03-21T16:38:35.612013735Z [DEBUG] switch_core_media.c:4445 sofia/sipinterface_1/1003@ronneypbx.xutil.cu no suitable candidates found.<br />
	2025-03-21T16:38:35.612027981Z [DEBUG] switch_core_media.c:5970 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Set 2833 dtmf send payload to 101 recv payload to 101<br />
	2025-03-21T16:38:35.612064610Z [NOTICE] switch_channel.c:4082 Hangup sofia/sipinterface_1/1003@ronneypbx.xutil.cu [CS_EXECUTE] [INCOMPATIBLE_DESTINATION]<br />
	2025-03-21T16:38:35.612363961Z [DEBUG] switch_core_session.c:2949 sofia/sipinterface_1/1003@ronneypbx.xutil.cu skip receive message [APPLICATION_EXEC_COMPLETE] (channel is hungup already)<br />
	2025-03-21T16:38:35.613378978Z [DEBUG] switch_core_session.c:2949 sofia/sipinterface_1/1003@ronneypbx.xutil.cu skip receive message [APPLICATION_EXEC_COMPLETE] (channel is hungup already)<br />
	2025-03-21T16:38:35.613389477Z [DEBUG] switch_core_state_machine.c:653 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State EXECUTE going to sleep<br />
	2025-03-21T16:38:35.613394118Z [DEBUG] switch_core_state_machine.c:587 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Running State Change CS_HANGUP (Cur 1 Tot 15)<br />
	2025-03-21T16:38:35.614012255Z [DEBUG] switch_core_state_machine.c:850 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Callstate Change RINGING -&gt; HANGUP<br />
	2025-03-21T16:38:35.614141794Z [DEBUG] switch_core_state_machine.c:852 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State HANGUP<br />
	2025-03-21T16:38:35.614166651Z [DEBUG] mod_sofia.c:460 Channel sofia/sipinterface_1/1003@ronneypbx.xutil.cu hanging up, cause: INCOMPATIBLE_DESTINATION<br />
	2025-03-21T16:38:35.614487783Z [DEBUG] mod_sofia.c:605 Responding to INVITE with: 488<br />
	2025-03-21T16:38:35.614560803Z [DEBUG] switch_core_state_machine.c:60 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Standard HANGUP, cause: INCOMPATIBLE_DESTINATION<br />
	2025-03-21T16:38:35.614574222Z [DEBUG] switch_core_state_machine.c:852 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State HANGUP going to sleep<br />
	2025-03-21T16:38:35.614585674Z [DEBUG] switch_core_state_machine.c:622 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State Change CS_HANGUP -&gt; CS_REPORTING<br />
	2025-03-21T16:38:35.614705563Z [DEBUG] switch_core_state_machine.c:587 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Running State Change CS_REPORTING (Cur 1 Tot 15)<br />
	send 992 bytes to udp/[1.1.0.6]:5062 at 16:38:35.614674:<br />
	------------------------------------------------------------------------<br />
	SIP/2.0 488 Not Acceptable Here<br />
	Via: SIP/2.0/UDP 10.50.4.171:5062;branch=z9hG4bK7a6.799547413c3f4d1d7e2173fdaf53e5f7.0;received=1.1.0.6;rport=5062<br />
	Via: SIP/2.0/WSS gib1okmk1uqg.invalid;rport=61577;received=10.12.21.56;branch=z9hG4bK2587480<br />
	Max-Forwards: 50<br />
	From: &lt;sip:1003@ronneypbx.xutil.cu&gt;;tag=hm3uv6hkn9<br />
	To: &lt;sip:*98@ronneypbx.xutil.cu&gt;;tag=4p2Zc52UjSZcj<br />
	Call-ID: 1na8ose8sc80kt1fcibd<br />
	CSeq: 7087 INVITE<br />
	Contact: &lt;sip:*98@10.50.4.171:5060;transport=udp&gt;<br />
	User-Agent: Platel<br />
	Accept: application/sdp<br />
	Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE<br />
	Supported: timer, path, replaces<br />
	Allow-Events: talk, hold, conference, presence, as-feature-event, dialog, line-seize, call-info, sla, include-session-description, presence.winfo, message-summary, refer<br />
	Reason: Q.850;cause=88;text="INCOMPATIBLE_DESTINATION"<br />
	Content-Length: 0<br />
	Remote-Party-ID: "*98" &lt;sip:*98@ronneypbx.xutil.cu&gt;;party=calling;privacy=off;screen=no
</p>

<p>
	2025-03-21T16:38:35.615256588Z [DEBUG] switch_core_state_machine.c:938 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State REPORTING<br />
	recv 318 bytes from udp/[1.1.0.6]:5062 at 16:38:35.615426:<br />
	------------------------------------------------------------------------<br />
	ACK sip:*98@ronneypbx.xutil.cu SIP/2.0<br />
	Via: SIP/2.0/UDP 10.50.4.171:5062;branch=z9hG4bK7a6.799547413c3f4d1d7e2173fdaf53e5f7.0<br />
	Max-Forwards: 50<br />
	To: &lt;sip:*98@ronneypbx.xutil.cu&gt;;tag=4p2Zc52UjSZcj<br />
	From: &lt;sip:1003@ronneypbx.xutil.cu&gt;;tag=hm3uv6hkn9<br />
	Call-ID: 1na8ose8sc80kt1fcibd<br />
	CSeq: 7087 ACK<br />
	Content-Length: 0
</p>

<p>
	2025-03-21T16:38:35.616192981Z [DEBUG] switch_core_state_machine.c:174 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Standard REPORTING, cause: INCOMPATIBLE_DESTINATION<br />
	2025-03-21T16:38:35.616206855Z [DEBUG] switch_core_state_machine.c:938 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State REPORTING going to sleep<br />
	2025-03-21T16:38:35.616587239Z [DEBUG] switch_core_state_machine.c:613 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State Change CS_REPORTING -&gt; CS_DESTROY<br />
	2025-03-21T16:38:35.616607796Z [DEBUG] switch_core_session.c:1778 Session 15 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Locked, Waiting on external entities<br />
	2025-03-21T16:38:35.616621035Z [NOTICE] switch_core_session.c:1797 Session 15 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Ended<br />
	2025-03-21T16:38:35.616640768Z [NOTICE] switch_core_session.c:1801 Close Channel sofia/sipinterface_1/1003@ronneypbx.xutil.cu [CS_DESTROY]<br />
	2025-03-21T16:38:35.616818888Z [DEBUG] switch_core_state_machine.c:741 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) Running State Change CS_DESTROY (Cur 0 Tot 15)<br />
	2025-03-21T16:38:35.617339757Z [DEBUG] switch_core_state_machine.c:751 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State DESTROY<br />
	2025-03-21T16:38:35.617356789Z [DEBUG] mod_sofia.c:371 sofia/sipinterface_1/1003@ronneypbx.xutil.cu SOFIA DESTROY<br />
	2025-03-21T16:38:35.617376499Z [DEBUG] mod_opus.c:719 Opus decoder stats: Frames[0] PLC[0] FEC[0]<br />
	2025-03-21T16:38:35.617386486Z [DEBUG] mod_opus.c:734 Opus encoder stats: Frames[0] Bytes encoded[0] Encoded length ms[0] Average encoded bitrate bps[0]<br />
	2025-03-21T16:38:35.617466358Z [DEBUG] mod_opus.c:719 Opus decoder stats: Frames[0] PLC[0] FEC[0]<br />
	2025-03-21T16:38:35.617491382Z [DEBUG] mod_opus.c:734 Opus encoder stats: Frames[0] Bytes encoded[0] Encoded length ms[0] Average encoded bitrate bps[0]<br />
	2025-03-21T16:38:35.617551292Z [DEBUG] switch_core_state_machine.c:181 sofia/sipinterface_1/1003@ronneypbx.xutil.cu Standard DESTROY<br />
	2025-03-21T16:38:35.617558337Z [DEBUG] switch_core_state_machine.c:751 (sofia/sipinterface_1/1003@ronneypbx.xutil.cu) State DESTROY going to sleep
</p>

<p>
	Como soluciono el error
</p>
]]></description><guid isPermaLink="false">25260</guid><pubDate>Fri, 21 Mar 2025 20:39:16 +0000</pubDate></item><item><title>Migration from BigCouch to CouchDB 3.x</title><link>https://forums.2600hz.com/topic/24463-migration-from-bigcouch-to-couchdb-3x/</link><description><![CDATA[<p>
	We're in the process of migrating our database cluster from BigCouch to CouchDB 3.x and wanted to create a thread to document the changes required to keep a Kazoo 4.x cluster running and migration issues we've experienced.<br><br>
	When running a replicate from BigCouch to CouchDB, we're getting a number of dropped connections that result in partially transferred databases.  Re-running the replication will migrate more and more documents over until the replication is ultimately successful so we wrote a script to perform this (c# - see below).  We've confirmed there are no network or firewall issues between clusters and they're even on the same subnet.  Regardless, this script attached worked for us.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_4793_5" style=""><span class="pln">using System.Net.Http.Json;
using System.Web;
using Newtonsoft.Json;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using NLog;
using NLog.Config;
using NLog.Targets;
using NLog.Extensions.Logging;
using NLog.Conditions;

class Program
{
    const string SourceHost = "x.x.x.x";
    const string TargetHost = "x.x.x.x";
    const string TargetUser = "username";
    const string TargetPass = "password";
    const int MaxReplicationAttempts = 50;

    static async Task</span><span class="tag">&lt;int&gt;</span><span class="pln"> Main(string[] args)
    {
        // Set up a service collection
        var serviceCollection = new ServiceCollection();
        ConfigureServices(serviceCollection);

        // Build the service provider
        var serviceProvider = serviceCollection.BuildServiceProvider();

        // Get the logger
        var logger = serviceProvider.GetRequiredService&lt;ILogger</span><span class="tag">&lt;Program&gt;</span><span class="pln">&gt;();

        var ListOfDatabases = new List</span><span class="tag">&lt;string&gt;</span><span class="pln">();

        using (var httpClient = new HttpClient())
        {
            try
            {
                var response = await httpClient.GetAsync($"http://{SourceHost}:5984/_all_dbs");
                if (!response.IsSuccessStatusCode)
                {
                    return 1;
                }
                var jsonString = await response.Content.ReadAsStringAsync();
                ListOfDatabases = JsonConvert.DeserializeObject&lt;List</span><span class="tag">&lt;string&gt;</span><span class="pln">&gt;(jsonString) ?? [];
                logger.LogInformation("Received {dbCount} database strings", ListOfDatabases.Count);
            }
            catch (Exception ex)
            {
                logger.LogError(ex, "Error getting databases from source host: {sourceHost}", SourceHost);
                return 1;
            }
        }

        ListOfDatabases.Remove("_users");
        ListOfDatabases.Remove("_replicator");
        ListOfDatabases.Remove("_global_changes");


        List</span><span class="tag">&lt;string&gt;</span><span class="pln"> FailedReplications = [];

        int SuccessCount = 0;
        int FailureCount = 0;
        foreach (var Database in ListOfDatabases)
        {
            logger.LogInformation("----------------------------------------\n");
            var handler = new HttpClientHandler
            {
                ServerCertificateCustomValidationCallback = (sender, cert, chain, sslPolicyErrors) =&gt; true
                
            };
            using var httpClient = new HttpClient(handler);

            httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("CouchDB-Replication-Tool/1.0");
            // Add Basic Authentication header
            var authString = $"{TargetUser}:{TargetPass}";
            var base64Auth = Convert.ToBase64String(System.Text.Encoding.ASCII.GetBytes(authString));
            httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Basic", base64Auth);

            // Set the Accept header to accept all types
            httpClient.DefaultRequestHeaders.Accept.Add(
                new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("*/*"));

            
            var replicateUrl = $"http://{TargetHost}:5984/_replicate";  // Remove credentials from URL
            var DatabaseEncoded = HttpUtility.UrlEncode(Database);
            var replicationRequest = new
            {
                source = $"http://{SourceHost}:5984/{DatabaseEncoded}",
                target = $"http://{TargetUser}:{TargetPass}@{TargetHost}:5984/{DatabaseEncoded}",  
                create_target = true,
            };

            bool ReplicationComleted = false;
            logger.LogInformation("Starting Replication of {Database} database from {SourceHost} to {TargetHost}", Database, SourceHost, TargetHost);
            var jsonContent = JsonConvert.SerializeObject(replicationRequest);
            var content = new StringContent(jsonContent, System.Text.Encoding.UTF8, "application/json");
            content.Headers.ContentLength = jsonContent.Length;

            int Attempts = 0;
            while(ReplicationComleted == false)
            {
                Attempts++;
                try
                {
                    var response = await httpClient.PostAsync(replicateUrl, content);
                    logger.LogInformation("Replicate request returned: {status}", response.ReasonPhrase);

                    if (!response.IsSuccessStatusCode)
                    {
                        logger.LogWarning("Replicate request failed for {Database}", Database);
                        await Task.Delay(TimeSpan.FromSeconds(15)); // Add a 1 second delay between replication attempts

                    }
                    else
                    {
                        SuccessCount++;
                        ReplicationComleted = true;
                    }
                }
                catch (Exception ex)
                {
                    FailureCount++;
                    FailedReplications.Add(Database);
                    logger.LogError(ex, "Error replicating {Database}", Database);
                    break;
                }

                if(Attempts &gt;= MaxReplicationAttempts)
                {
                    FailureCount++;
                    FailedReplications.Add(Database);
                    logger.LogError("Max replication attempts reached for {Database}", Database);
                    break;
                }
            }
            logger.LogInformation("Done replicating {Database}", Database);
        }

        logger.LogInformation("Replication completed with {successCount} successes and {failureCount} failures", SuccessCount, FailureCount);
        if(FailedReplications.Count &gt; 0)
        {
            logger.LogWarning("Failed to replicate the following databases: {failedReplications}", string.Join("\n", FailedReplications));
        }

        return 0;
    }

    static void ConfigureServices(IServiceCollection services)
    {
        var config = new LoggingConfiguration();
        
        // Console Target
        var consoleTarget = new ColoredConsoleTarget("console")
        {
            Layout = "${level:uppercase=true}|${message} ${exception:format=tostring}",
            EnableAnsiOutput = true,
        };

        consoleTarget.WordHighlightingRules.Add(new ConsoleWordHighlightingRule
        {
            Text = "INFO",
            Condition = ConditionParser.ParseExpression("level = LogLevel.Info"),
            ForegroundColor = ConsoleOutputColor.Green,
            IgnoreCase = false,
            WholeWords = true
        });
        consoleTarget.WordHighlightingRules.Add(new ConsoleWordHighlightingRule
        {
            Text = "ERROR",
            Condition = ConditionParser.ParseExpression("level = LogLevel.Error"),
            ForegroundColor = ConsoleOutputColor.Red,
            IgnoreCase = false,
            WholeWords = true
        });
        consoleTarget.WordHighlightingRules.Add(new ConsoleWordHighlightingRule
        {
            Text = "WARN",
            Condition = ConditionParser.ParseExpression("level = LogLevel.Warn"),
            ForegroundColor = ConsoleOutputColor.Yellow,
            IgnoreCase = false,
            WholeWords = true
        });
        
        /*
        // Set colors for different log levels
        consoleTarget.RowHighlightingRules.Add(new ConsoleRowHighlightingRule(
            condition: ConditionParser.ParseExpression("level == LogLevel.Info"),
            foregroundColor: ConsoleOutputColor.Green, backgroundColor: ConsoleOutputColor.White));
        consoleTarget.RowHighlightingRules.Add(new ConsoleRowHighlightingRule(
            condition: ConditionParser.ParseExpression("level == LogLevel.Error"),
            foregroundColor: ConsoleOutputColor.Red, backgroundColor: ConsoleOutputColor.White));
        consoleTarget.RowHighlightingRules.Add(new ConsoleRowHighlightingRule(
            condition: ConditionParser.ParseExpression("level == LogLevel.Warn"),
            foregroundColor: ConsoleOutputColor.Yellow, backgroundColor: ConsoleOutputColor.White));
            */

        config.AddTarget(consoleTarget);
        config.AddRule(NLog.LogLevel.Trace, NLog.LogLevel.Fatal, consoleTarget);

        LogManager.Configuration = config;

        services.AddLogging(loggingBuilder =&gt;
        {
            loggingBuilder.ClearProviders();
            loggingBuilder.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
            loggingBuilder.AddNLog(config);
        });
    }
}</span></pre>

<p>
	 
</p>

<p>
	In addition, CouchDB no longer listens on 5986 so an HAProxy redirect is required to keep that functioning.  RuhNet helped with that and it's below:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_4793_7" style=""><span class="pln">frontend couch-5986-admin-port
    bind 127.0.0.1:15986
    default_backend couch-redir-node-admin-port

backend couch-redir-node-admin-port
  balance roundrobin
	#HAProxy &lt; 2.0 uncomment the following
    #reqrep ^([^\ :]*)\ /(.*)     \1\ /_node/_local/\2
    
    #HAProxy 2.0 and above uncomment the following
    #http-request replace-uri ^/(.*)     /_node/_local/\1
                   
    server couch1 172.31.12.34:5984 check
    server couch2 172.31.23.45:5984 check
    server couch3 172.31.34.56:5984 check</span></pre>

<p>
	Lastly, CouchDB no longer supports the Interator function and needs to be replaced with .forEach.  Per Ruhnet, the following needs to be done but we have yet to test this.  We're writing a script that will look through all documents and check for occurrences of Iterator so they can be replaced.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_4793_9" style=""><span class="pln">{
  "_id": "_design/trunkstore",
  "language": "javascript",
  "views": {
    "crossbar_listing": {
      "map": "function(doc) { if (doc.pvt_type != 'sys_info' || doc.pvt_deleted) return; emit(doc._id, {'realm': doc.account.auth_realm}); }",
      "reduce": "_count"
    },
    "lookup_did": {
      "map": "function(doc) { if(doc.pvt_type != 'sys_info' || doc.pvt_deleted ) return; var realm = doc.account.auth_realm; if(doc.servers) { doc.servers.forEach(function(srv) { var auth_clone = JSON.parse(JSON.stringify(srv.auth)); auth_clone.auth_realm = realm; if (srv.options.enabled != false &amp;&amp; srv.DIDs) { for (var did in srv.DIDs) { emit(did, { 'callerid_server': srv.callerid || '', 'callerid_account': doc.callerid || '', 'e911_callerid_server': srv.e911_callerid || '', 'e911_callerid_account': doc.e911_callerid || '', 'auth': auth_clone, 'DID_Opts': srv.DIDs[did], 'inbound_format': srv.inbound_format || 'npan', 'server': srv.options, 'account': doc.account}); } } }) } }"
        },
    "lookup_user_flags": {
      "map": "function(doc) { if(doc.pvt_type != 'sys_info') return; var realm = doc.account.auth_realm; if(doc.call_restriction) { var call_restriction = JSON.parse(JSON.stringify(doc.call_restriction)) }; if(doc.servers) { var acct_clone = JSON.parse(JSON.stringify(doc.account)); doc.servers.forEach(function(srv) { if (srv.auth) { var srv_clone = JSON.parse(JSON.stringify(srv)); srv_clone.auth.auth_realm = realm; emit([realm.toLowerCase(), srv_clone.auth.auth_user.toLowerCase()], {\"server\": srv_clone, \"account\": acct_clone, \"call_restriction\": call_restriction}); } }) }}"
    },
    "lookup_did.old": {
      "map": "function(doc) { if(doc.pvt_type != 'sys_info' || doc.pvt_deleted ) return; var realm = doc.account.auth_realm; if(doc.servers) { var srvs = Iterator(doc.servers); for (var srv in srvs) { var auth_clone = JSON.parse(JSON.stringify(srv[1].auth)); auth_clone.auth_realm = realm; if (srv[1].enabled != false &amp;&amp; srv[1].DIDs) { var DIDs = Iterator(srv[1].DIDs); for (var DID in DIDs) { emit(DID[0], { 'callerid_server': srv[1].callerid || '', 'callerid_account': doc.callerid || '', 'e911_callerid_server': srv[1].e911_callerid || '', 'e911_callerid_account': doc.e911_callerid || '', 'auth': auth_clone, 'DID_Opts': DID[1], 'inbound_format': srv[1].inbound_format || 'npan', 'server': srv[1].options, 'account': doc.account}); } } } } }"
    },
    "lookup_user_flags.old": {
      "map": "function(doc) { if(doc.pvt_type != 'sys_info') return; var realm = doc.account.auth_realm; if(doc.call_restriction) { var call_restriction = JSON.parse(JSON.stringify(doc.call_restriction)) }; if(doc.servers) { var acct_clone = JSON.parse(JSON.stringify(doc.account)); var srvs = Iterator(doc.servers); for (var srv in srvs) { if (srv[1].auth) { var srv_clone = JSON.parse(JSON.stringify(srv[1])); srv_clone.auth.auth_realm = realm; emit([realm.toLowerCase(), srv_clone.auth.auth_user.toLowerCase()], {\"server\": srv_clone, \"account\": acct_clone, \"call_restriction\": call_restriction}); } } }}"
    }
  }
}</span></pre>

<p>
	 
</p>
]]></description><guid isPermaLink="false">24463</guid><pubDate>Thu, 05 Dec 2024 22:34:48 +0000</pubDate></item><item><title>Where is mod_kazoo documented?</title><link>https://forums.2600hz.com/topic/22919-where-is-mod_kazoo-documented/</link><description><![CDATA[<p>
	I found <a href="https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Modules/mod_kazoo_10683641/" rel="external nofollow">a very old and not very informative entry on the FreeSWITCH docs</a> and <a href="https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Modules/mod_kazoo_10683641/" rel="external nofollow">an Erlang Factory talk from 2014</a> ... and that is kind of it. Am I missing something obvious?
</p>

<p>
	<a href="https://societyfortheblind.org/programs-services/access-news/" rel="external nofollow">We</a> are using `mod_erlang_event` with FreeSWITCH 1.10.1, so an upgrade is way overdue and I remembered that `mod_kazoo` being a modern version of `mod_erlang_event`, so decided to check it out. This is where I got confused again, because I couldn't find it in the FreeSWITCH repo. I was told it was moved into <a href="https://github.com/freeswitch/mod_kazoo" rel="external nofollow">a separate repo</a>, but it looks unmaintained and <a href="https://github.com/signalwire/freeswitch/pull/1338" rel="external nofollow">a critical(-looking) patch seems to be hanging in the air since 2021</a>. Is there a 2600hz repo that I didn't find?
</p>

<p>
	Thank you in advance for any piece of info!
</p>
]]></description><guid isPermaLink="false">22919</guid><pubDate>Sat, 31 Aug 2024 03:12:59 +0000</pubDate></item><item><title>KazooCon</title><link>https://forums.2600hz.com/topic/22886-kazoocon/</link><description><![CDATA[<p>
	<img alt="gone christmas GIF" data-ratio="55.87" title="gone christmas GIF" width="358" data-src="https://media2.giphy.com/media/XqpnXaeZPnupy/200.gif?cid=01f0d0ccodep54lt4nt5uubcemrjaqyr7x8t7oi3ajpi4vbl&amp;ep=v1_gifs_search&amp;rid=200.gif&amp;ct=g" src="https://forums.2600hz.com/applications/core/interface/js/spacer.png" /><br /><br /><a href="https://www.kazoocon.com/" rel="external nofollow">https://www.kazoocon.com/</a>
</p>
]]></description><guid isPermaLink="false">22886</guid><pubDate>Fri, 30 Aug 2024 02:21:33 +0000</pubDate></item><item><title>HELP: Where is the source code for FreeSWITCH Version 20.20.5~64bit, current 4.3 version?</title><link>https://forums.2600hz.com/topic/12508-help-where-is-the-source-code-for-freeswitch-version-20205~64bit-current-43-version/</link><description><![CDATA[<p>
	hello,
</p>

<p>
	Does anyone know where I can get the source code of the latest freeswitch build used in 4.3?
</p>

<p>
	It shows FreeSWITCH Version 20.20.5~64bit ( 64bit) but this doesn't exist in the freeswitch repo <a href="https://github.com/signalwire/freeswitch/releases" rel="external nofollow">https://github.com/signalwire/freeswitch/releases</a>
</p>

<p>
	thx
</p>
]]></description><guid isPermaLink="false">12508</guid><pubDate>Thu, 09 Sep 2021 11:50:54 +0000</pubDate></item><item><title>Kamailio module db_kazoo disappeared?</title><link>https://forums.2600hz.com/topic/17731-kamailio-module-db_kazoo-disappeared/</link><description><![CDATA[<p>
	We are working on building the last known good (4.3) branch with updated versions of dependencies (the last RPMs we can find for Kamailio from 2600hz are 5.0 from almost 7 years ago now).  We've got almost everything running but we have run into a roadblock: the file in the kazoo-configs-kamailio project here: <a href="https://github.com/2600hz/kazoo-configs-kamailio/blob/4.3/kamailio/db_kazoo.cfg" rel="external nofollow">https://github.com/2600hz/kazoo-configs-kamailio/blob/4.3/kamailio/db_kazoo.cfg</a> references a db_kazoo.so module (apparently to query Kazoo via AMQP?)   We found an old thread from 2014 that talks about this module here: <a href="https://groups.google.com/g/2600hz-dev/c/c7gk5VTtWWM" rel="external nofollow">https://groups.google.com/g/2600hz-dev/c/c7gk5VTtWWM</a> that references a repo <a href="https://github.com/2600hz/kazoo-kamailio" rel="external nofollow">https://github.com/2600hz/kazoo-kamailio</a> that no longer exists but I found archives here: <a href="https://github.com/2600hz-archive/kazoo-kamailio/blob/4.0/modules/db_kazoo/db_kazoo.c" rel="external nofollow">https://github.com/2600hz-archive/kazoo-kamailio</a>. 
</p>

<p>
	This appears to be the name of the original AMQP connector that was renamed but then from the RPMs it looks like there are two separate modules: <a href="https://packages.2600hz.com/centos/6/stable/kamailio-mirror/5.0.4h/" rel="external nofollow">https://packages.2600hz.com/centos/6/stable/kamailio-mirror/5.0.4h/</a> but we really need to be on a newer supported version of Kamailio (there have been numerous vulnerabilities reported in the published versions: <a href="https://www.cvedetails.com/vulnerability-list/vendor_id-15820/product_id-33634/Kamailio-Kamailio.html" rel="external nofollow">https://www.cvedetails.com/vulnerability-list/vendor_id-15820/product_id-33634/Kamailio-Kamailio.html</a>)
</p>

<p>
	There was another clue in this APK build script: <a href="https://github.com/lazedo/kamailio-docker-alpine/blob/master/APKBUILD" rel="external nofollow">https://github.com/lazedo/kamailio-docker-alpine/blob/master/APKBUILD</a> but that points to <a href="https://github.com/2600hz/kamailio-db-kazoo/archive/0.1.2.tar.gz" rel="external nofollow">https://github.com/2600hz/kamailio-db-kazoo/archive/0.1.2.tar.gz</a> which is a project that no longer exists. 
</p>

<p>
	This is where I currently am, wondering if this module is gone forever.  Can anyone point me in the direction of the source for the db_kazoo.so module for Kamailio?  I'm fine with it being a potentially outdated version that needs some love but I can't find anything as it stands.  Thanks!
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">17731</guid><pubDate>Thu, 07 Mar 2024 21:53:55 +0000</pubDate></item><item><title>access to rpm packages blocked for Romania?</title><link>https://forums.2600hz.com/topic/16752-access-to-rpm-packages-blocked-for-romania/</link><description><![CDATA[<p>
	Hello all, I am trying to install kazoo on a romanian ip-ed VPS and it seems access to <span style="background-color:rgba(237,237,237,0.5);color:#37474f;font-size:14.025px;"><a href="https://packages.2600hz.com" rel="external nofollow">https://packages.2600hz.com</a> is blocked for romanian ip's, anyway this can be undone or any suggestions on how to install it on from a romanian ip?</span>
</p>
]]></description><guid isPermaLink="false">16752</guid><pubDate>Wed, 03 Jan 2024 11:37:36 +0000</pubDate></item><item><title>Installing Kazoo - Transaction check error</title><link>https://forums.2600hz.com/topic/14058-installing-kazoo-transaction-check-error/</link><description><![CDATA[<p>
	Hi all!
</p>

<p>
	I trying to install Kazoo on my VPS in a VM with SentOS 7 (minimal)
</p>

<p>
	The first steps are oke, but if i put in the command: yum install -y <a href="https://packages.2600hz.com/centos/7/stable/2600hz-release/4.3/2600hz-release-4.3-0.el7.centos.noarch.rpm" rel="external nofollow">https://packages.2600hz.com/centos/7/stable/2600hz-release/4.3/2600hz-release-4.3-0.el7.centos.noarch.rpm</a>
</p>

<p>
	Then ill get an error "Transaction check error" File /etc/pki/rpm-gpg/RPM-GPG-KEY-FREESWITCH from install of 2600Hz............. conflicts with the file from package freeswitch-release-repo-0-1.noarch
</p>

<p>
	How to solve this?
</p>

<p>
	 
</p>

<p>
	Kind regards
</p>

<p>
	Michael
</p>
]]></description><guid isPermaLink="false">14058</guid><pubDate>Thu, 02 Mar 2023 13:39:58 +0000</pubDate></item><item><title>With the demise of CentOS what's the plan now?</title><link>https://forums.2600hz.com/topic/14739-with-the-demise-of-centos-whats-the-plan-now/</link><description><![CDATA[<p>
	Kazoo v4 was for installing on CentOS 7 and no more public release of a stable OS. What's going to happen now?
</p>
]]></description><guid isPermaLink="false">14739</guid><pubDate>Tue, 08 Aug 2023 16:38:01 +0000</pubDate></item><item><title><![CDATA[Timezone & Daylight Saving]]></title><link>https://forums.2600hz.com/topic/14903-timezone-daylight-saving/</link><description><![CDATA[<p>
	Hi <a contenteditable="false" data-ipshover="" data-ipshover-target="https://forums.2600hz.com/profile/3824-mc_/?do=hovercard" data-mentionid="3824" href="https://forums.2600hz.com/profile/3824-mc_/" rel="">@mc_</a>  &amp; Kazoo community, hope everyone is doing well
</p>

<p>
	I'm not sure if this is a timezone issue on Kazoo 4.3 or a system time issue but we have a problem with time stamping on our call logs.. All the call logs are one hour ahead.
</p>

<p style="background-color:#ffffff;color:#626b82;font-size:14px;">
	For eg: The account is set to: <strong>Australia/Melbourne timezone</strong> and the Current time is <strong>12:43 PM 31 Aug 2023.</strong> In the Centos 7 system time on which<strong> Kazoo 4.3</strong> was installed date is <strong>Thu Aug 31 02:43:00 UTC 2023</strong> but in the monster-ui call log it shows <strong>01:43 PM 31 Aug</strong>
</p>

<p style="background-color:#ffffff;color:#626b82;font-size:14px;">
	Any idea how this can be fixed? Any help would be appreciated.
</p>

<p style="background-color:#ffffff;color:#626b82;font-size:14px;">
	Thank you
</p>

<p style="background-color:#ffffff;color:#626b82;font-size:14px;">
	 
</p>
]]></description><guid isPermaLink="false">14903</guid><pubDate>Thu, 31 Aug 2023 03:09:25 +0000</pubDate></item><item><title>Address of packages</title><link>https://forums.2600hz.com/topic/15055-address-of-packages/</link><description><![CDATA[<p>
	Hey guys,
</p>

<p>
	I am trying to install Kazoo on my Centos 7 machine.
</p>

<p>
	I came up to the step with getting rpm packages - specifically <a href="https://packages.2600hz.com/centos/7/stable/2600hz-release/4.3/2600hz-release-4.3-0.el7.centos.noarch.rpm" rel="external nofollow">https://packages.2600hz.com/centos/7/stable/2600hz-release/4.3/2600hz-release-4.3-0.el7.centos.noarch.rpm</a>
</p>

<p>
	However, seems like this address does not exist for some reaseon. Did it move somewhere?
</p>
]]></description><guid isPermaLink="false">15055</guid><pubDate>Sun, 01 Oct 2023 13:45:42 +0000</pubDate></item><item><title>ERROR: connect_unix_sock: connect(/var/run/kamailio//kamailio_ctl)</title><link>https://forums.2600hz.com/topic/14910-error-connect_unix_sock-connectvarrunkamailiokamailio_ctl/</link><description><![CDATA[<p>
	Dear Community,
</p>

<p>
	I am trying to install the Kazoo following the official guide. Everything goes well untill I reach the Kamailio Setup. The Kazoo-kamailio gets installed successfully but shows error when running the status command. Please see below the error and let me know what I am doing wrong?
</p>

<p>
	 
</p>

<p>
	ERROR: connect_unix_sock: connect(/var/run/kamailio//kamailio_ctl): No such file or directory [2]
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">14910</guid><pubDate>Sun, 03 Sep 2023 14:42:45 +0000</pubDate></item><item><title>how can i use api key</title><link>https://forums.2600hz.com/topic/14772-how-can-i-use-api-key/</link><description><![CDATA[<p>
	i get APIkey 
</p>

<p>
	```
</p>

<p>
	API_KEY=$(curl -v -X GET \<br />
	    -H "X-Auth-Token: $auth_token" \<br />
	    http://$SERVER:8000/v2/accounts/$account_id/api_key | jq -r .data.api_key)<br />
	echo $API_KEY
</p>

<p>
	```
</p>

<p>
	 
</p>

<p>
	but how can i get devices list with API key 
</p>

<p>
	i already know how to do with token . but i want to use api key 
</p>

<p>
	```
</p>

<p>
	curl -v -X GET \<br />
	    -H "Content-Type: application/json" \<br />
	    -H "X-Auth-Token:$API_KEY" \<br />
	    http://$SERVER:8000/v2/accounts/$account_id/devices | jq
</p>

<p>
	```
</p>

<p>
	this is not working
</p>
]]></description><guid isPermaLink="false">14772</guid><pubDate>Sat, 19 Aug 2023 04:14:16 +0000</pubDate></item><item><title>Porting important fixes from mod_kazoo  to mod_erlang_event</title><link>https://forums.2600hz.com/topic/14254-porting-important-fixes-from-mod_kazoo-to-mod_erlang_event/</link><description><![CDATA[<p>
	Hi there, 
</p>

<p>
	It seems mod_kazoo is primarily originated from mod_erlang_event. I understand performance issues &amp; limitations, but it appears mod_erlang_event has not been updated in decade!  I'm trying mod_erlang_event &amp; seems register_event_handler call fails and after doing some basic comparisons here are few things I found:
</p>

<p>
	#1- In mod_kazoo we are using write() API instead FreeSwitch switch_socket_send(). It did solve the issues but curious why ? 
</p>

<p>
	 mod_kazoo: <br />
	   write(listener-&gt;sockdes, msgbuf, index)<br />
	 mod_elang_event:     <br />
	   switch_socket_send(sock, msgbuf, (switch_size_t *) &amp;index);
</p>

<p>
	#2 ei_init() is also added in kz_erl_init  &amp; teardown kz_erl_shutdown()  for new Erlang releases.
</p>

<p>
	<br />
	Please share if there any other known issues that can be shared and we can port in mod_erlang_event module
</p>

<p>
	Thanks a lot
</p>
]]></description><guid isPermaLink="false">14254</guid><pubDate>Thu, 11 May 2023 22:25:46 +0000</pubDate></item><item><title>ACD - Call Queue Login Timeout</title><link>https://forums.2600hz.com/topic/13951-acd-call-queue-login-timeout/</link><description><![CDATA[<p>
	Hi,
</p>

<p>
	quick question, is there a session limit for an Callcenter queue ?
</p>

<p>
	As soon as I'm logged, does my login will expire or I will be logged forever ?
</p>

<p>
	It should be fine for me to have a long session expiration.
</p>

<p>
	Thanks
</p>

<p>
	Max
</p>
]]></description><guid isPermaLink="false">13951</guid><pubDate>Thu, 19 Jan 2023 17:52:34 +0000</pubDate></item><item><title>transitioning a DID to a port_out state</title><link>https://forums.2600hz.com/topic/13620-transitioning-a-did-to-a-port_out-state/</link><description><![CDATA[<p style="user-select: auto;">
	Hey everyone,
</p>

<p style="user-select: auto;">
	Keep good data on telephone numbers is very important. In the documentation, as well as the code, there is talk of a port_out number state as part of the DID lifecycle. The number state is useful because it transitions the number into another state and also removes the number from any hunting actions thus forcing calls to go outbound. It also effectively removes it as a provisionable number within the database.
</p>

<p style="user-select: auto;">
	I am able to check a DID into this state manually be editing the numbers doc in the database, but this is of course a scary process and something you do not want to let your standard provisioning folks do. So how can I transition a number into this state without messing with the database directly.
</p>

<p style="user-select: auto;">
	Thanks,<br style="user-select: auto;">
	Joe
</p>
]]></description><guid isPermaLink="false">13620</guid><pubDate>Tue, 27 Sep 2022 23:09:23 +0000</pubDate></item><item><title>Raise log level of a specific module</title><link>https://forums.2600hz.com/topic/13601-raise-log-level-of-a-specific-module/</link><description><![CDATA[<p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">Hello all,</span>
</p>

<p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	 
</p>

<p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	<strong style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">Introduction</span></strong>
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;margin-left:40px;">
	<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">First, I just started working with the Kazoo/Kamailio/FreeSWITCH stack and recently started </span><a href="https://learnyousomeerlang.com/" style="color:#4a6ee0;background:transparent;margin-top:0pt;margin-bottom:0pt;" rel="external nofollow"><span style="color:#4a6ee0;background:transparent;margin-top:0pt;margin-bottom:0pt;">learning some Erlang for the greater good</span></a><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">; please be patient.</span><br />
	 
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;margin-left:40px;">
	<span style="color:#000000;">The company I work at uses an old version of Kazoo (3.18), and they have created a few custom modules (e.g., conference) in the past that are working to this day. Unfortunately, all developers with experience with this stack - and programmed these modules - are no longer around. Due to the growth the company has experienced, the number of clients rose considerably, and now our system is having troubles during peak hours (i.e., conferencing, among other things, does not work).</span>
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;">
	 
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;">
	<strong style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">Question</span></strong>
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;margin-left:40px;">
	<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">I saw that the log library used by Kazoo in this version is </span><em style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">lager; since</span></em><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"> in production the default log level is ERROR, I would like to raise the log level to DEBUG for the specific modules used in conferences. The default log backend used in our application is the console.</span><br />
	 
</p>

<p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	<strong style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">What was tried</span></strong>
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;margin-left:40px;">
	<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">Lager provides a way to </span><a href="https://github.com/erlang-lager/lager/tree/2.x#tracing" style="color:#4a6ee0;background:transparent;margin-top:0pt;margin-bottom:0pt;" rel="external nofollow"><span style="color:#4a6ee0;background:transparent;margin-top:0pt;margin-bottom:0pt;">trace a specific module with the desired log level</span></a><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">, but every time I try it, everything else seems to stop. This is how I tried:</span>
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;margin-left:40px;">
	 
</p>

<table border="1" cellpadding="1" cellspacing="1" style="width:1000px;"><tbody><tr><td>
				<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">echo '{ok, Trace} = lager:trace_file("log/conference.log", [{module, conference}], debug), Trace.' | ./erl_call -e -c XXX -n whistle_apps -h command_node</span>
			</td>
		</tr></tbody></table><p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	 
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;margin-left:40px;">
	<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">I followed the </span><a href="https://www2.erlang.org/documentation/doc-5.9.3/lib/erl_interface-3.7.9/doc/html/erl_call.html" style="color:#4a6ee0;background:transparent;margin-top:0pt;margin-bottom:0pt;" rel="external nofollow"><span style="color:#4a6ee0;background:transparent;margin-top:0pt;margin-bottom:0pt;">documentation of erl_call</span></a><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"> of the exact version present in the system. Once I run this, all the apps stop responding, and the only way to get things working again is to restart the whole process. Using </span><strong style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">lager:clear_all_traces</span></strong><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"> and </span><strong style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">lager:stop_trace</span></strong><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"> do not help.</span><br />
	 
</p>

<p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	<strong style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;"><span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">Finally</span></strong>
</p>

<p style="color:rgb(14,16,26);background:transparent none repeat scroll 0% 0%;margin-top:0pt;margin-bottom:0pt;margin-left:40px;">
	<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">I just started, so I am full of questions. Am I going in the wrong direction? Can I do what I am trying to do? Does Kazoo provide another way of doing this? If anyone can offer a little help, it would be fantastic.</span>
</p>

<p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	 
</p>

<p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">Best regards,</span>
</p>

<p style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">
	<span style="color:rgb(14,16,26);background:transparent;margin-top:0pt;margin-bottom:0pt;">Eduardo Almeida.</span>
</p>
]]></description><guid isPermaLink="false">13601</guid><pubDate>Tue, 13 Sep 2022 21:41:44 +0000</pubDate></item><item><title>voice mail system using a Raspberry Pi</title><link>https://forums.2600hz.com/topic/13387-voice-mail-system-using-a-raspberry-pi/</link><description><![CDATA[<p>
	Hello everyone,<br />
	I'm new to the forum.<br />
	I am developing a voice mail system.<br />
	Is there anyone who has already developed a voice messaging system with kazoo using a Raspberry Pi to send and receive messages? 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">13387</guid><pubDate>Thu, 21 Jul 2022 14:05:33 +0000</pubDate></item></channel></rss>
