{"id":348,"date":"2020-06-27T02:05:41","date_gmt":"2020-06-27T02:05:41","guid":{"rendered":"http:\/\/neomano.com\/index.php\/2020\/06\/27\/probando-webrtc-en-elastix-4-paso-a-paso\/"},"modified":"2021-08-11T16:47:20","modified_gmt":"2021-08-11T16:47:20","slug":"probando-webrtc-en-elastix-4-paso-a-paso","status":"publish","type":"post","link":"http:\/\/neomano.com\/en\/testing-webrtc-on-elastix-4-step-by-step\/","title":{"rendered":"Testing WebRTC on Elastix 4 (step by step)"},"content":{"rendered":"<p class=\"\\&quot;p1\\&quot;\">The term WebRTC has recently become a trend in the VoIP arena. Many do not really understand what it is and others think that it is just a softphone in the browser.<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">This article also does not seek to solve the mysteries of WebRTC, but rather to find an effective solution for those who wish to experiment with this technology; And yes, the idea of this article is to make a softphone work in the browser, but the possibilities from there are much more interesting.<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">To get straight to the dough and without further ado, let&#39;s start with the steps.<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\"><b>1) INSTALL ELASTIX<\/b><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">1.1) Download and install Elastix 4 RC3 from this <a title=\"\\ &quot;Elastix\" href=\"\/en\/\\&quot;http:\/\/sourceforge.net\/projects\/elastix\/files\/Elastix%20PBX%20Appliance%20Software\/4.0.0\/latest\/\\&quot;\/\" download=\"\">link<\/a><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">1.2) We update Asterisk because the version that comes in Elastix 4 RC3 does not have ICE support<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n# rpm -Uvh http:\/\/repo.elastix.org\/elastix\/4\/updates\/x86_64\/RPMS\/asterisk-11.20.0-1.el7.centos.x86_64.rpm\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p3\\&quot;\"><b>2) INSTALL THE WEBPHONE<\/b><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">2.1) Download sipml5-master.zip from <span class=\"\\&quot;s2\\&quot;\"><a href=\"\/en\/\\&quot;https:\/\/github.com\/DoubangoTelecom\/sipml5\\&quot;\/\">https:\/\/github.com\/DoubangoTelecom\/sipml5<\/a>&nbsp;and place the file on the Elastix server under the path \/ var \/ www \/ html<\/span><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">2.2) On the server we execute the following commands.<\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n# cd \/ var \/ www \/ html # unzip sipml5-master.zip # mv sipml5-master phone\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\"><b>3) CREATE EXTENSIONS<\/b><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">Ingresar a Elastix y crear 2 extensiones en el men\u00fa &#8220;PBX -&gt; PBX Configuration -&gt; Extensions&#8221;.<\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">I have created 2001 and 2002, taking care to set the following 4 options.<\/span><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" width=\"1058\" height=\"330\" src=\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/06\/opciones-web-rtc.png\" alt=\"\" class=\"wp-image-5727\"\/><\/figure>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">The 2001 account I will use for the WebRTC phone and the 2002 I will configure it on a desktop softphone. In this case the BRIA.<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">We apply the changes.<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">Here comes something tricky and it is that apart from these parameters it is necessary to configure others that FreePBX does not have by default, so we will be forced to put them by hand in the configuration file \/etc\/asterisk\/sip_additional.conf<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">In the section corresponding to the WebRTC extension (that is, 2001 in our case) we add the following lines:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\ndtlsenable = yes; Tell Asterisk to enable DTLS for this peer dtlsverify = no; Tell Asterisk to not verify your DTLS certs dtlscertfile = \/ etc \/ asterisk \/ keys \/ asterisk.pem; Tell Asterisk where your DTLS cert file is dtlsprivatekey = \/ etc \/ asterisk \/ keys \/ asterisk.pem; Tell Asterisk where your DTLS private key is dtlssetup = actpass; Tell Asterisk to use actpass SDP parameter when setting up DTLS\n<\/pre><\/pre>\n\n\n\n<p>We also modify the line that configures the transport, including WSS among the available transports. The line should look like this:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\ntransport = wss, ws, udp, tcp, tls\n<\/pre><\/pre>\n\n\n<p>[alert style = \\ &quot;green \\&quot;] Note here that these changes WILL BE OVERWRITTEN every time we apply the FreePBX configuration. In Elastix 4 stable we plan to solve this problem, as well as include the Asterisk RPM with ICE support. [\/ Alert]<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\"><b>4) I CREATE CERTIFICATES FOR SRTP<\/b><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">4.1) I create the folder where the keys will go<\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n# mkdir \/ etc \/ asterisk \/ keys\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">4.2) I create the certificates<\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n# \/usr\/share\/doc\/asterisk-11.20.0\/contrib\/scripts\/ast_tls_cert -C pbx.mycompany.com -O &quot;My Super Company&quot; -d \/ etc \/ asterisk \/ keys # \/ usr \/ share \/ doc \/ asterisk -11.20.0 \/ contrib \/ scripts \/ ast_tls_cert -m client -c \/etc\/asterisk\/keys\/ca.crt -k \/etc\/asterisk\/keys\/ca.key -C phone1.mycompany.com -O &quot;My Super Company &quot;-d \/ etc \/ asterisk \/ keys -o malcolm\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">4.3) Permissions<\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n# chown -R asterisk.asterisk \/ etc \/ asterisk \/ keys\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\"><b>5) CHANGES IN ASTERISK<\/b><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">5.1) I create the certificates for the embedded Web server that Asterisk brings<\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n# openssl req -new -x509 -days 365 -nodes -out \/tmp\/foo.pem -keyout \/tmp\/foo.pem\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">5.2) Edit the vim \/etc\/asterisk\/http_additionals.conf file<\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n[general] enabled = yes enablestatic = no bindaddr = 0.0.0.0 bindport = 8088 prefix = asterisk tlsenable = yes tlsbindaddr = 0.0.0.0: 8089 tlscertfile = \/ tmp \/ foo.pem tlsprivateket = \/ tmp \/ foo.pem\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">5.3) I edit the file \/etc\/asterisk\/sip_general_custom.conf and add the following lines<\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\ntlsenable = yes tlsbindaddr = 0.0.0.0 tlscertfile = \/ etc \/ asterisk \/ keys \/ asterisk.pem tlscafile = \/ etc \/ asterisk \/ keys \/ ca.crt tlscipher = ALL tlsclientmethod = tlsv1\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">5.4) restart asterisk<\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\n# service asterisk restart\n<\/pre><\/pre>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\"><b>6) PHONE CONFIGURATION<\/b><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\"><b>6.1) WEBPHONE<\/b><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">Point the browser to the WebRTC client http:\/\/192.168.88.106\/phone\/call.htm and configure<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><em>Note: In my case this (192.168.88.106) is the IP of my Elastix server.<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a class=\"\\&quot;lightbox\\&quot;\" href=\"\\&quot;http:\/\/www.neomano.com\/wp-content\/uploads\/2015\/12\/Captura-de-pantalla-2015-12-15-a-las-23.42.34.png\\&quot;\"><img src=\"\\&quot;http:\/\/www.neomano.com\/wp-content\/uploads\/2015\/12\/Captura-de-pantalla-2015-12-15-a-las-23.42.34.png\\&quot;\" alt=\"\\&quot;Capture\"\/><\/a><\/figure>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">We press the button that says \\ \u201dExpert mode? \\\u201d And configure the following parameters.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a class=\"\\&quot;lightbox\\&quot;\" href=\"\\&quot;http:\/\/www.neomano.com\/wp-content\/uploads\/2015\/12\/Captura-de-pantalla-2015-12-15-a-las-23.42.52.png\\&quot;\"><img src=\"\\&quot;http:\/\/www.neomano.com\/wp-content\/uploads\/2015\/12\/Captura-de-pantalla-2015-12-15-a-las-23.42.52.png\\&quot;\" alt=\"\\&quot;Capture\"\/><\/a><\/figure>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\">In the previous screen it should be noted that we are using WSS as transport, instead of WS.<\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\"><b>6.2) BRIA<\/b><\/span><\/p>\n\n\n\n<p class=\"\\&quot;p1\\&quot;\"><span class=\"\\&quot;s1\\&quot;\">I configure another SIP client for the 2002 extension. In my case the BRIA<\/span><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a class=\"\\&quot;lightbox\\&quot;\" href=\"\\&quot;http:\/\/www.neomano.com\/wp-content\/uploads\/2015\/12\/Captura-de-pantalla-2015-12-15-a-las-23.49.15.png\\&quot;\"><img src=\"\\&quot;http:\/\/www.neomano.com\/wp-content\/uploads\/2015\/12\/Captura-de-pantalla-2015-12-15-a-las-23.49.15.png\\&quot;\" alt=\"\\&quot;Capture\"\/><\/a><\/figure>\n\n\n<p>[alert style = \\ \u201dgreen \\\u201d]<br \/>\nTip importante: En caso de usar certificados&nbsp;no v\u00e1lidos (auto firmados) como en nuestro ejemplo,&nbsp;es necesario que el navegador acepte previamente dicho certificado. Para lograr esto, antes de usar el tel\u00e9fono Web, debemos apuntar nuestro navegador al URL del websocket, aqu\u00ed es&nbsp;https:\/\/192.168.88.106:8089\/asterisk\/ws. Luego de aceptar el certificado, obtendremos un mensaje de \\&#8221;Upgrade Required\\&#8221; que es lo esperado. A continuaci\u00f3n, ya podremos usar el tel\u00e9fono WebRTC.<br \/>\n[\/ alert]<\/p>","protected":false},"excerpt":{"rendered":"<p>The term WebRTC has recently become a trend in the VoIP arena. Many do not really understand what<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[67,1],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v16.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Probando WebRTC en Elastix 4 (paso a paso) - Neomano.com<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/neomano.com\/en\/testing-webrtc-on-elastix-4-step-by-step\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Probando WebRTC en Elastix 4 (paso a paso) - Neomano.com\" \/>\n<meta property=\"og:description\" content=\"El t\u00e9rmino WebRTC se ha vuelto tendencia recientemente en el \u00e1mbito VoIP. Muchos no entienden realmente de qu\u00e9\" \/>\n<meta property=\"og:url\" content=\"http:\/\/neomano.com\/en\/testing-webrtc-on-elastix-4-step-by-step\/\" \/>\n<meta property=\"og:site_name\" content=\"Neomano.com\" \/>\n<meta property=\"article:published_time\" content=\"2020-06-27T02:05:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-08-11T16:47:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/06\/opciones-web-rtc.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@elandivar\" \/>\n<meta name=\"twitter:site\" content=\"@elandivar\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/neomano.com\/#organization\",\"name\":\"Neomano\",\"url\":\"https:\/\/neomano.com\/\",\"sameAs\":[\"https:\/\/www.youtube.com\/c\/EdgarLandivarNeomano\",\"https:\/\/twitter.com\/elandivar\"],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/neomano.com\/#logo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/05\/neomano_logo2.png\",\"contentUrl\":\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/05\/neomano_logo2.png\",\"width\":800,\"height\":453,\"caption\":\"Neomano\"},\"image\":{\"@id\":\"https:\/\/neomano.com\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/neomano.com\/#website\",\"url\":\"https:\/\/neomano.com\/\",\"name\":\"Neomano.com\",\"description\":\"Blog de tecnolog\\u00eda, curiosidades e historia\",\"publisher\":{\"@id\":\"https:\/\/neomano.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/neomano.com\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/06\/opciones-web-rtc.png\",\"contentUrl\":\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/06\/opciones-web-rtc.png\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#webpage\",\"url\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/\",\"name\":\"Probando WebRTC en Elastix 4 (paso a paso) - Neomano.com\",\"isPartOf\":{\"@id\":\"https:\/\/neomano.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#primaryimage\"},\"datePublished\":\"2020-06-27T02:05:41+00:00\",\"dateModified\":\"2021-08-11T16:47:20+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/neomano.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Probando WebRTC en Elastix 4 (paso a paso)\"}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#webpage\"},\"author\":{\"@id\":\"https:\/\/neomano.com\/#\/schema\/person\/f89bdea6f1c8432189a5a3f936ab2d54\"},\"headline\":\"Probando WebRTC en Elastix 4 (paso a paso)\",\"datePublished\":\"2020-06-27T02:05:41+00:00\",\"dateModified\":\"2021-08-11T16:47:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#webpage\"},\"wordCount\":571,\"publisher\":{\"@id\":\"https:\/\/neomano.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/neomano.com\/probando-webrtc-en-elastix-4-paso-a-paso\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/06\/opciones-web-rtc.png\",\"articleSection\":[\"Telefon\\u00eda\"],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/neomano.com\/#\/schema\/person\/f89bdea6f1c8432189a5a3f936ab2d54\",\"name\":\"Edgar Landivar\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/neomano.com\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/05\/edgarlandivar2.jpg\",\"contentUrl\":\"https:\/\/neomano.com\/wp-content\/uploads\/2021\/05\/edgarlandivar2.jpg\",\"caption\":\"Edgar Landivar\"},\"sameAs\":[\"https:\/\/neomano.com\",\"https:\/\/twitter.com\/elandivar\",\"https:\/\/www.youtube.com\/c\/EdgarLandivarNeomano\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","featured_image_urls":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":"","trp-custom-language-flag":"","darknews-slider-full":"","darknews-featured":"","darknews-medium":"","darknews-medium-square":"","mailpoet_newsletter_max":""},"author_info":{"display_name":"Edgar Landivar","author_link":"http:\/\/neomano.com\/en\/author\/elandivar\/"},"category_info":"<a href=\"http:\/\/neomano.com\/en\/category\/telefonia\/\" rel=\"category tag\">Telefon\u00eda<\/a> <a href=\"http:\/\/neomano.com\/en\/category\/uncategorized\/\" rel=\"category tag\">Uncategorized<\/a>","tag_info":"Uncategorized","comment_count":"0","_links":{"self":[{"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/posts\/348"}],"collection":[{"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/comments?post=348"}],"version-history":[{"count":0,"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/posts\/348\/revisions"}],"wp:attachment":[{"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/media?parent=348"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/categories?post=348"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/neomano.com\/en\/wp-json\/wp\/v2\/tags?post=348"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}