{"id":47009,"date":"2026-05-15T15:32:09","date_gmt":"2026-05-15T14:32:09","guid":{"rendered":"https:\/\/voipstudio.com\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio-parte-2\/"},"modified":"2026-05-15T16:00:44","modified_gmt":"2026-05-15T15:00:44","slug":"construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio","status":"publish","type":"post","link":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/","title":{"rendered":"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2)"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"47009\" class=\"elementor elementor-47009 elementor-46968\" data-elementor-settings=\"{&quot;element_pack_global_tooltip_width&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_padding&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true}}\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d59ef97 e-flex e-con-boxed e-con e-parent\" data-id=\"d59ef97\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6e8fbaf elementor-widget elementor-widget-text-editor\" data-id=\"6e8fbaf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2>Ligar Python (PJSIP) ao VoIPstudio em 30 minutos<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dcaf590 elementor-widget elementor-widget-text-editor\" data-id=\"dcaf590\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Este guia d\u00e1 seguimento a<strong> <a href=\"https:\/\/voipstudio.com\/blog\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio\/\">Assistente de voz alimentado por IA com Python, PJSIP e VoIPstudio (Parte 1)<\/a><\/strong><\/span><i><span style=\"font-weight: 400;\"> <\/span><\/i><span style=\"font-weight: 400;\">e percorre os passos b\u00e1sicos necess\u00e1rios para construir um cliente SIP program\u00e1vel utilizando Python e lig\u00e1-lo ao VoIPstudio. Exemplos baseados num projeto de c\u00f3digo aberto desenvolvido por   <\/span><a href=\"https:\/\/www.bustamantepalacio.info\/\"><span style=\"font-weight: 400;\">Luis Miguel<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8a41a0d e-flex e-con-boxed e-con e-parent\" data-id=\"8a41a0d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a5ef4f6 elementor-widget elementor-widget-text-editor\" data-id=\"a5ef4f6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2>Passo 1: Criar uma conta VoIPstudio<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8ba567a elementor-widget elementor-widget-text-editor\" data-id=\"8ba567a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Registe-se para um <a href=\"https:\/\/voipstudio.com\/pt\/signup\/\">teste gratuito<\/a>.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Crie uma extens\u00e3o SIP.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Anote as seguintes credenciais:<\/span>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"2\"><span style=\"font-weight: 400;\">Nome de utilizador SIP<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"2\"><span style=\"font-weight: 400;\">Palavra-passe SIP<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"2\"><span style=\"font-weight: 400;\">Dom\u00ednio SIP (ex. sip.voipstudio.com)<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">Estas credenciais ser\u00e3o utilizadas para o registo.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b7533fa e-con-full e-flex e-con e-child\" data-id=\"b7533fa\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7b10976 elementor-widget elementor-widget-text-editor\" data-id=\"7b10976\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2>Passo 2: Clonar o cliente de c\u00f3digo aberto<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4475adf e-con-full e-flex e-con e-child\" data-id=\"4475adf\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-eebcf96 elementor-view-default elementor-widget elementor-widget-icon\" data-id=\"eebcf96\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-wrapper\">\n\t\t\t<div class=\"elementor-icon\">\n\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-github\" viewBox=\"0 0 496 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"><\/path><\/svg>\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d7a8115 elementor-widget elementor-widget-text-editor\" data-id=\"d7a8115\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><b>Reposit\u00f3rio:<\/b><b><br><\/b><a href=\"https:\/\/github.com\/luismiguelbp\/voip-client-python\"><span style=\"font-weight: 400;\">https:\/\/github.com\/luismiguelbp\/voip-client-python<\/span><span style=\"font-weight: 400;\"><br><\/span><\/a><b>Projeto:<\/b> <span style=\"font-weight: 400;\">voip-client-python<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-85c1866 elementor-widget elementor-widget-text-editor\" data-id=\"85c1866\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Clonar localmente:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c4d44ea elementor-widget elementor-widget-code-highlight\" data-id=\"c4d44ea\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t\t\t\t<div class=\"prismjs-okaidia copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash line-numbers\">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>git clone https:\/\/github.com\/luismiguelbp\/voip-client-python.git\ncd voip-client-python<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6734e2b elementor-widget elementor-widget-text-editor\" data-id=\"6734e2b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Este projeto j\u00e1 inclui:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">L\u00f3gica de registo de conta SIP<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Gest\u00e3o de inicia\u00e7\u00e3o de chamadas<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Gest\u00e3o de fluxo de media<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Callbacks de eventos<\/span><\/li>\n<\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a1cf9a9 e-con-full e-flex e-con e-child\" data-id=\"a1cf9a9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-43b99d6 elementor-widget elementor-widget-text-editor\" data-id=\"43b99d6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2>Passo 4: Efetuar uma chamada de sa\u00edda<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f87d036 elementor-widget elementor-widget-text-editor\" data-id=\"f87d036\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Exemplo minimalista:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e38694b elementor-widget elementor-widget-code-highlight\" data-id=\"e38694b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t\t\t\t<div class=\"prismjs-okaidia copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-python line-numbers\">\n\t\t\t\t<code readonly=\"true\" class=\"language-python\">\n\t\t\t\t\t<xmp>call = MyCall(account, pj.CallOpParam(True))\ncall.makeCall(\"sip:+441234567890@sip.voipstudio.com\", pj.CallOpParam(True))<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b1a6941 elementor-widget elementor-widget-text-editor\" data-id=\"b1a6941\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">A partir daqui, pode:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Injetar \u00e1udio pr\u00e9-gravado<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Gerar fala dinamicamente<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Anexar l\u00f3gica de IA em tempo real<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Processar fluxos de \u00e1udio de entrada<\/span><\/li>\n<\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-39a3fa0 e-con-full e-flex e-con e-child\" data-id=\"39a3fa0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bd3007c elementor-widget elementor-widget-text-editor\" data-id=\"bd3007c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2>Passo 5: Expandir com IA<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-368fd5a elementor-widget elementor-widget-text-editor\" data-id=\"368fd5a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Tem agora um canal de voz program\u00e1vel.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A partir deste ponto, pode integrar:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Motores de convers\u00e3o de fala em texto<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Modelos de conversa\u00e7\u00e3o baseados em LLM<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Fluxos de trabalho de escalonamento personalizados<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u00c1rvores de IVR din\u00e2micas<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">O VoIPstudio gere:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Transporte SIP<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Encaminhamento de chamadas<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Conetividade PSTN<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Aprovisionamento de n\u00fameros globais<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">O utilizador controla a camada de intelig\u00eancia.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4f5430a e-flex e-con-boxed e-con e-parent\" data-id=\"4f5430a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f8eff25 elementor-widget elementor-widget-heading\" data-id=\"f8eff25\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Op\u00e7\u00f5es de implementa\u00e7\u00e3o<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dcc8afe elementor-widget elementor-widget-text-editor\" data-id=\"dcc8afe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Como o cliente \u00e9 baseado em normas SIP, pode ser executado:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">No local (ambientes industriais)<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Num servidor Linux<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Num contentor Docker<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Numa VM na nuvem<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Dentro de uma plataforma de automa\u00e7\u00e3o maior<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">N\u00e3o \u00e9 necess\u00e1rio nenhum SDK de telefonia propriet\u00e1rio.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-fce7221 e-flex e-con-boxed e-con e-parent\" data-id=\"fce7221\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3d64db9 elementor-widget elementor-widget-text-editor\" data-id=\"3d64db9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2>Por que raz\u00e3o esta abordagem \u00e9 escal\u00e1vel<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0247ff8 elementor-widget elementor-widget-text-editor\" data-id=\"0247ff8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Muitas plataformas de voz com IA associam estreitamente a intelig\u00eancia e a telefonia.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Esta arquitetura separa-as:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">A IA pode evoluir de forma independente.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">A infraestrutura de telefonia permanece est\u00e1vel.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Os programadores mant\u00eam o controlo total ao n\u00edvel do protocolo.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Para integradores de sistemas e engenheiros de infraestruturas, isto reduz o risco de depend\u00eancia de um fornecedor a longo prazo.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-08f928e e-flex e-con-boxed e-con e-parent\" data-id=\"08f928e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-958ba15 elementor-widget elementor-widget-text-editor\" data-id=\"958ba15\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<h2>Pr\u00f3ximos passos<\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-935b4e0 elementor-widget elementor-widget-text-editor\" data-id=\"935b4e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Fa\u00e7a um fork do reposit\u00f3rio.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Ligue-o ao seu <a href=\"https:\/\/voipstudio.com\/pt\/signup\/\">teste do VoIPstudio<\/a>.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Construa o seu primeiro fluxo de trabalho de voz program\u00e1vel.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Se necessitar de SIP trunking \u00e0 escala ou de aprovisionamento de n\u00fameros globais, o VoIPstudio fornece a camada de transporte.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Ligar Python (PJSIP) ao VoIPstudio em 30 minutos Este guia d\u00e1 seguimento a Assistente de voz alimentado por IA com Python, PJSIP [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":47010,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[485],"tags":[732,663,733,731,734,602],"class_list":["post-47009","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-inovacao-e-tecnologia","tag-assistentes-de-ia","tag-ia","tag-python","tag-tecnologia-sip-e-voip","tag-tutorial","tag-voip-com-ia"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.6 (Yoast SEO v27.6) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2) &#183; VoIPstudio<\/title>\n<meta name=\"description\" content=\"Este guia passo a passo abrange o registo SIP, chamadas de sa\u00edda, integra\u00e7\u00e3o de IA e automa\u00e7\u00e3o de voz escal\u00e1vel utilizando ferramentas de c\u00f3digo aberto.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2)\" \/>\n<meta property=\"og:description\" content=\"Este guia passo a passo abrange o registo SIP, chamadas de sa\u00edda, integra\u00e7\u00e3o de IA e automa\u00e7\u00e3o de voz escal\u00e1vel utilizando ferramentas de c\u00f3digo aberto.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/\" \/>\n<meta property=\"og:site_name\" content=\"VoIPstudio\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/voipstudio\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-15T14:32:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-15T15:00:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/voipstudio.com\/wp-content\/uploads\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tim Meredith\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@voipstudio\" \/>\n<meta name=\"twitter:site\" content=\"@voipstudio\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tim Meredith\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/\"},\"author\":{\"name\":\"Tim Meredith\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#\\\/schema\\\/person\\\/6e06e79f076751a163152d59ef627056\"},\"headline\":\"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2)\",\"datePublished\":\"2026-05-15T14:32:09+00:00\",\"dateModified\":\"2026-05-15T15:00:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/\"},\"wordCount\":424,\"publisher\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/voipstudio.com\\\/wp-content\\\/uploads\\\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png\",\"keywords\":[\"Assistentes de IA\",\"IA\",\"Python\",\"Tecnologia SIP e VoIP\",\"Tutorial\",\"VoIP com IA\"],\"articleSection\":[\"Inova\u00e7\u00e3o e Tecnologia\"],\"inLanguage\":\"pt-PT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/\",\"url\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/\",\"name\":\"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2) &#183; VoIPstudio\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/voipstudio.com\\\/wp-content\\\/uploads\\\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png\",\"datePublished\":\"2026-05-15T14:32:09+00:00\",\"dateModified\":\"2026-05-15T15:00:44+00:00\",\"description\":\"Este guia passo a passo abrange o registo SIP, chamadas de sa\u00edda, integra\u00e7\u00e3o de IA e automa\u00e7\u00e3o de voz escal\u00e1vel utilizando ferramentas de c\u00f3digo aberto.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/#primaryimage\",\"url\":\"https:\\\/\\\/voipstudio.com\\\/wp-content\\\/uploads\\\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png\",\"contentUrl\":\"https:\\\/\\\/voipstudio.com\\\/wp-content\\\/uploads\\\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png\",\"width\":1200,\"height\":628,\"caption\":\"Uma ilustra\u00e7\u00e3o com os log\u00f3tipos de Python, PJSIP e VoIPstudio e uma ilustra\u00e7\u00e3o de um assistente de voz com IA\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#website\",\"url\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/\",\"name\":\"VoIPstudio\",\"description\":\"Business communications for modern teams\",\"publisher\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#organization\",\"name\":\"VoIPstudio\",\"url\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/voipstudio.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/voipstudio_logo_black-1.png\",\"contentUrl\":\"https:\\\/\\\/voipstudio.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/voipstudio_logo_black-1.png\",\"width\":1961,\"height\":379,\"caption\":\"VoIPstudio\"},\"image\":{\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/voipstudio\",\"https:\\\/\\\/x.com\\\/voipstudio\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/voipstudio-com\\\/\"],\"description\":\"A limited company registered in England under company number 6978512, whose registered address is Gable House, 18-24 Turnham Green Terrace, W4 1QP London, United Kingdom.\",\"email\":\"marketing@voipstudio.com\",\"telephone\":\"+44 203 432 9230\",\"legalName\":\"Level 7 Systems\",\"foundingDate\":\"2009-08-03\",\"vatID\":\"GB982288750\",\"taxID\":\"6978512\",\"iso6523Code\":\"A8087849\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"11\",\"maxValue\":\"50\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/#\\\/schema\\\/person\\\/6e06e79f076751a163152d59ef627056\",\"name\":\"Tim Meredith\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0a5792bba60173b16d6155c469e3c339fb62db03795e74f98a82e723020cfba7?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0a5792bba60173b16d6155c469e3c339fb62db03795e74f98a82e723020cfba7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0a5792bba60173b16d6155c469e3c339fb62db03795e74f98a82e723020cfba7?s=96&d=mm&r=g\",\"caption\":\"Tim Meredith\"},\"url\":\"https:\\\/\\\/voipstudio.com\\\/pt\\\/blog\\\/author\\\/tim\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2) &#183; VoIPstudio","description":"Este guia passo a passo abrange o registo SIP, chamadas de sa\u00edda, integra\u00e7\u00e3o de IA e automa\u00e7\u00e3o de voz escal\u00e1vel utilizando ferramentas de c\u00f3digo aberto.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/","og_locale":"pt_PT","og_type":"article","og_title":"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2)","og_description":"Este guia passo a passo abrange o registo SIP, chamadas de sa\u00edda, integra\u00e7\u00e3o de IA e automa\u00e7\u00e3o de voz escal\u00e1vel utilizando ferramentas de c\u00f3digo aberto.","og_url":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/","og_site_name":"VoIPstudio","article_publisher":"https:\/\/www.facebook.com\/voipstudio","article_published_time":"2026-05-15T14:32:09+00:00","article_modified_time":"2026-05-15T15:00:44+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/voipstudio.com\/wp-content\/uploads\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png","type":"image\/png"}],"author":"Tim Meredith","twitter_card":"summary_large_image","twitter_creator":"@voipstudio","twitter_site":"@voipstudio","twitter_misc":{"Written by":"Tim Meredith","Est. reading time":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/#article","isPartOf":{"@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/"},"author":{"name":"Tim Meredith","@id":"https:\/\/voipstudio.com\/pt\/#\/schema\/person\/6e06e79f076751a163152d59ef627056"},"headline":"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2)","datePublished":"2026-05-15T14:32:09+00:00","dateModified":"2026-05-15T15:00:44+00:00","mainEntityOfPage":{"@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/"},"wordCount":424,"publisher":{"@id":"https:\/\/voipstudio.com\/pt\/#organization"},"image":{"@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/#primaryimage"},"thumbnailUrl":"https:\/\/voipstudio.com\/wp-content\/uploads\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png","keywords":["Assistentes de IA","IA","Python","Tecnologia SIP e VoIP","Tutorial","VoIP com IA"],"articleSection":["Inova\u00e7\u00e3o e Tecnologia"],"inLanguage":"pt-PT"},{"@type":"WebPage","@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/","url":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/","name":"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2) &#183; VoIPstudio","isPartOf":{"@id":"https:\/\/voipstudio.com\/pt\/#website"},"primaryImageOfPage":{"@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/#primaryimage"},"image":{"@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/#primaryimage"},"thumbnailUrl":"https:\/\/voipstudio.com\/wp-content\/uploads\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png","datePublished":"2026-05-15T14:32:09+00:00","dateModified":"2026-05-15T15:00:44+00:00","description":"Este guia passo a passo abrange o registo SIP, chamadas de sa\u00edda, integra\u00e7\u00e3o de IA e automa\u00e7\u00e3o de voz escal\u00e1vel utilizando ferramentas de c\u00f3digo aberto.","breadcrumb":{"@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/"]}]},{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/#primaryimage","url":"https:\/\/voipstudio.com\/wp-content\/uploads\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png","contentUrl":"https:\/\/voipstudio.com\/wp-content\/uploads\/ai-powered-voice-assistant-with-python-pjsip-and-voipstudio-part-1.png","width":1200,"height":628,"caption":"Uma ilustra\u00e7\u00e3o com os log\u00f3tipos de Python, PJSIP e VoIPstudio e uma ilustra\u00e7\u00e3o de um assistente de voz com IA"},{"@type":"BreadcrumbList","@id":"https:\/\/voipstudio.com\/pt\/blog\/construir-um-cliente-de-voz-programavel-com-python-pjsip-e-voipstudio\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/voipstudio.com\/pt\/"},{"@type":"ListItem","position":2,"name":"Construir um cliente de voz program\u00e1vel com Python, PJSIP e VoIPstudio (Parte 2)"}]},{"@type":"WebSite","@id":"https:\/\/voipstudio.com\/pt\/#website","url":"https:\/\/voipstudio.com\/pt\/","name":"VoIPstudio","description":"Business communications for modern teams","publisher":{"@id":"https:\/\/voipstudio.com\/pt\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/voipstudio.com\/pt\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-PT"},{"@type":"Organization","@id":"https:\/\/voipstudio.com\/pt\/#organization","name":"VoIPstudio","url":"https:\/\/voipstudio.com\/pt\/","logo":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/voipstudio.com\/pt\/#\/schema\/logo\/image\/","url":"https:\/\/voipstudio.com\/wp-content\/uploads\/2025\/07\/voipstudio_logo_black-1.png","contentUrl":"https:\/\/voipstudio.com\/wp-content\/uploads\/2025\/07\/voipstudio_logo_black-1.png","width":1961,"height":379,"caption":"VoIPstudio"},"image":{"@id":"https:\/\/voipstudio.com\/pt\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/voipstudio","https:\/\/x.com\/voipstudio","https:\/\/www.linkedin.com\/company\/voipstudio-com\/"],"description":"A limited company registered in England under company number 6978512, whose registered address is Gable House, 18-24 Turnham Green Terrace, W4 1QP London, United Kingdom.","email":"marketing@voipstudio.com","telephone":"+44 203 432 9230","legalName":"Level 7 Systems","foundingDate":"2009-08-03","vatID":"GB982288750","taxID":"6978512","iso6523Code":"A8087849","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"11","maxValue":"50"}},{"@type":"Person","@id":"https:\/\/voipstudio.com\/pt\/#\/schema\/person\/6e06e79f076751a163152d59ef627056","name":"Tim Meredith","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/secure.gravatar.com\/avatar\/0a5792bba60173b16d6155c469e3c339fb62db03795e74f98a82e723020cfba7?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/0a5792bba60173b16d6155c469e3c339fb62db03795e74f98a82e723020cfba7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0a5792bba60173b16d6155c469e3c339fb62db03795e74f98a82e723020cfba7?s=96&d=mm&r=g","caption":"Tim Meredith"},"url":"https:\/\/voipstudio.com\/pt\/blog\/author\/tim\/"}]}},"_links":{"self":[{"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/posts\/47009","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/comments?post=47009"}],"version-history":[{"count":2,"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/posts\/47009\/revisions"}],"predecessor-version":[{"id":47027,"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/posts\/47009\/revisions\/47027"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/media\/47010"}],"wp:attachment":[{"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/media?parent=47009"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/categories?post=47009"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/voipstudio.com\/pt\/wp-json\/wp\/v2\/tags?post=47009"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}