<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Luis Diaz</title>
    <description>The latest articles on DEV Community by Luis Diaz (@luis_diaz_19a878119983392).</description>
    <link>https://dev.to/luis_diaz_19a878119983392</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2311166%2Fdad38276-be23-4e9c-aa11-012506974d33.jpg</url>
      <title>DEV Community: Luis Diaz</title>
      <link>https://dev.to/luis_diaz_19a878119983392</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/luis_diaz_19a878119983392"/>
    <language>en</language>
    <item>
      <title>De 0 a Implementación con cliente 📉⚖️</title>
      <dc:creator>Luis Diaz</dc:creator>
      <pubDate>Tue, 05 Nov 2024 23:45:15 +0000</pubDate>
      <link>https://dev.to/luis_diaz_19a878119983392/de-0-a-implementacion-con-cliente-2b8o</link>
      <guid>https://dev.to/luis_diaz_19a878119983392/de-0-a-implementacion-con-cliente-2b8o</guid>
      <description>&lt;p&gt;Obtuve buena cantidad de experiencia en este proyecto ya que con mi equipo de trabajo: Lic. Aylin y Lic. David, desarrollamos un proyecto desde 0, donde me desempeñe como Project Manager.&lt;/p&gt;

&lt;p&gt;Se sigio el ciclo de vida del software y se llevo a cabo con SCRUM.&lt;/p&gt;

&lt;p&gt;El cliente fue nuestro actor principal, aprovechamos su participación para crear una muy buena planificación, esto lo agradecieron los desarrolladores al usar el figma y la documentación de cada actividad.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Al usar figma opte por usar un template y modificarlo, en realidad solo tome el estilo todas las pantallas fueron echas desde 0: &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgo2n0pqlgpt215erg43o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgo2n0pqlgpt215erg43o.png" alt="Image description" width="800" height="520"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Para la documentación de cada actividad se realizo el uso de historias de usuario, definicion de temrinado y definicion de listo, realmente fueron de mucha ayuda. Esto sobre cada actividad en trello. Muestro un ejemplo del que le dimos uso.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsmz9gskik1y4yn1hzg31.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsmz9gskik1y4yn1hzg31.png" alt="Image description" width="800" height="820"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Stack:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Vercel&lt;/li&gt;
&lt;li&gt;T3 (React, prisma, trpc, Next.js, Tailwind CSS)&lt;/li&gt;
&lt;li&gt;PostgreSQL&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw250m3vro8vuon8w24q3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw250m3vro8vuon8w24q3.png" alt="Image description" width="775" height="506"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Vercel ofrece muy buen soporte para el despliegue de la base de datos  y del proyecto, optamos por tomar la licencia de paga en Vercel que nos ofrecía una base de datos de PostgreSQL, ademas de que el despliége se realiza en automático por cada commit y una version por cada rama, de esta manera nos fue muy sencillo realizar todo el tema de QA ya que tambien permitía dejar comentarios sobre cada pantalla.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg507nch9tfurrqb4r6wf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg507nch9tfurrqb4r6wf.png" alt="Image description" width="800" height="529"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Desde mi curso de base de datos, comprendi que un buen sistema debe de tener una base de datos bien construida y normalizada, por lo que optamos por realizar Triggers, SP y Vistas sobre la base de datos. Esta es una practica que nos ayudo demasiado en tener una aplicación ligera para usarla con T3. El uso de este tipo de funciones en base de datos son muy convenientes para este proyecto, lo complejo de esto fue que toda la implementación la realice mediante únicamente scripts en la consola web que ofrece Vercel, asi que considerablemente todo el equipo, incluyéndome refinamos las habilidades de SQL avanzado.&lt;/p&gt;

&lt;p&gt;Presento algunas pantallas del proyecto final, por privacidad al cliente oculto algunos datos de su organización.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv9typzs9m3zi3qbqkozw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv9typzs9m3zi3qbqkozw.png" alt="Image description" width="800" height="432"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp8cxtlb991oa6v8vzfm8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp8cxtlb991oa6v8vzfm8.png" alt="Image description" width="800" height="432"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjmgp8o568xoxl40k2bln.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjmgp8o568xoxl40k2bln.png" alt="Image description" width="800" height="432"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Implementación⚕️Salud Android🤖</title>
      <dc:creator>Luis Diaz</dc:creator>
      <pubDate>Tue, 05 Nov 2024 21:04:14 +0000</pubDate>
      <link>https://dev.to/luis_diaz_19a878119983392/implementacionsalud-android-50ll</link>
      <guid>https://dev.to/luis_diaz_19a878119983392/implementacionsalud-android-50ll</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz9blger51so3rz0d1jmg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz9blger51so3rz0d1jmg.png" alt="Image description" width="800" height="150"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Este post tiene tiene el mismo propósito a otro: &lt;a href="https://dev.to/luis_diaz_19a878119983392/ios-healthkit-ionic-angular-35lm"&gt;HealthKit iOS&lt;/a&gt; donde es necesario tener las mismas funcionalidades pero para Android, se comentaran las particularidades.&lt;/p&gt;

&lt;p&gt;En android es posible encontrar 3 diferentes soluciones a un mismo problema, esto gracias a su comunidad de desarrollo que puede tener un muy gran punto pero en mi caso yo requería que la solución fuese igual de compleja y con la misma arquitectura que en iOS, por lo que se opto por tomar la mejor practica, que de echo la propia de documentación de Android comenta que es lo que se busca, en especial para los datos de salud en Android se implemento ya la instalación a partir de Android 14, esto facilita mucho ya que la implementación de guardar datos de salud y escribir es similar a HelathKit de iOS, esta funcionalidad en Android se llama HealthConnect.&lt;/p&gt;

&lt;p&gt;La complejidad de este proyecto se baso en crear nuevos métodos para diferentes datos de salud como, la presión arterial, pasos, glucosa en la sangre, etc. Y su implementación fue similar al plugin de iOS.&lt;br&gt;
Ademas de traducir codigo entre Kotlin y Java, una actividad divertida; Sobre todo realizar la correcta instalación de las dependencias tanto en el plugin capacitor y la aplicación Android Ionic.&lt;/p&gt;

&lt;p&gt;Agradeciendo el apoyo del desarrollo inicial realícele un aporte sobre issues del repositorio origen, en donde informo como implementar nuevos permisos:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5yuz2g8qlcpq245sxj8a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5yuz2g8qlcpq245sxj8a.png" alt="Image description" width="800" height="548"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Algo de lo que tome mucho provecho, es del desarrollador ya que el realiza una muy buena documentación de su codigo creandooslos issues tambien sobre el repositorio. &lt;/p&gt;

&lt;p&gt;La implementación de este plugin la pueden ver en acción en el siguiente repo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6rd30c6k2xmspaqqe72z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6rd30c6k2xmspaqqe72z.png" alt="Image description" width="800" height="711"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(&lt;a href="https://github.com/LuisDiaz-ipsilon/ionic-HealthConnect-Android" rel="noopener noreferrer"&gt;https://github.com/LuisDiaz-ipsilon/ionic-HealthConnect-Android&lt;/a&gt;)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>iOS⚕️HealthKit Ionic Angular 🍎</title>
      <dc:creator>Luis Diaz</dc:creator>
      <pubDate>Tue, 05 Nov 2024 04:22:05 +0000</pubDate>
      <link>https://dev.to/luis_diaz_19a878119983392/ios-healthkit-ionic-angular-35lm</link>
      <guid>https://dev.to/luis_diaz_19a878119983392/ios-healthkit-ionic-angular-35lm</guid>
      <description>&lt;p&gt;Me llego un requerimiento donde una aplicacion para un hospital requiere que los datos de salud que recaba el sistema operativo mobil los pueda leer esta app, los datos como: la cantidad de pasos, ritmo cardiaco, presion arterial, etc.&lt;/p&gt;

&lt;p&gt;Por su puesto para esto ya tenia de referencia que en el sistema operativo IOS existe una funcionalidad llamada Health/Salud propia del sistema operativo, me eche un clavado sobre la documentacion de ios y menciona que toda la informacion de salud registrada en un telefono ios tiene que ser almacenada por esta dependencia, una practiva que me parece que tiene un beneficio mayor, asi deberia de ser con todo, de esta manera cualquier dispositivo de cualquier marca que use ios ingresara los datos de salud usando la api de HealtKit, esto facilita a cualquier otra aplciacion tomar esos datos para leerlos o escribirlos y que otra app tambien los pueda usar.&lt;/p&gt;

&lt;p&gt;Hasta el momento sonaba facil, usar el sdk de healthkit es facil ya que su documentacion es precisa por todo el soporte que hay detras, pero se el proyecto tenia un grado mas de complejidad, que es el uso del framwork ionic; Como se sabe este framwork no usa lenguaje Swift, entonces ahi tuvo que realizar una segunda investigacion, que es poder impleentar codigo nativo de iOS sobre ionic, se encontro que ionic ofrece capacitor, capacitor nos permite crear un plugin para ionic y la ventaja es que propociona la herramienta para crear una version de Android y una version de iOS, por lo que ahora lo complejo seria implementar el SDK de HealthKit en la arquitectura de un plugin y no es la de una app nativa para iOS.&lt;/p&gt;

&lt;p&gt;Por su puesto se penso en que no hace falta inventar la rueda, por lo que encontre en un repositorio el siguiente plugin: (&lt;a href="https://github.com/perfood/capacitor-healthkit" rel="noopener noreferrer"&gt;https://github.com/perfood/capacitor-healthkit&lt;/a&gt;) tenia una buena cantidad de funcionalidades que requeria mi aplicacion, pero aun asi le hacia falta, por lo que siguiente la impplentacion que hico perfood realize un fork del proyecto en la siguiente liga: &lt;/p&gt;

&lt;p&gt;Sobre el repositorio orginal realize aportes en la sección de issues como los siguientes: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8erjatkz5uh5ak2ivr09.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8erjatkz5uh5ak2ivr09.png" alt="Image description" width="800" height="483"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F666jlwc6ujf80eo8u4og.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F666jlwc6ujf80eo8u4og.png" alt="Image description" width="800" height="672"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5v59a74lcd5ivgcysgls.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5v59a74lcd5ivgcysgls.png" alt="Image description" width="800" height="672"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Donde comentaba como realizar el uso de los permisos sobre el plugin.&lt;/p&gt;

&lt;p&gt;Las consideraciones que se tienen que tener son configurar el proyecto ionic sobre Xcode donde se le debe de agregar la configuración de HealthKit, permisos sobre el plugin y hacer uso de la api/plugin.&lt;/p&gt;

&lt;p&gt;En mi experiencia el uso de capacitor para ionic es una buena solución pero como toda arquitectura es importante conocerla por completo para poder hacer una implementación exitosa, esto requirió muchas horas de pruebas y compilaciones.&lt;/p&gt;

&lt;p&gt;El fork de mi plugin no esta en npm pero puedes usarlo en tu proyecto ionic: (&lt;a href="https://github.com/LuisDiaz-ipsilon/capacitor-healthkit" rel="noopener noreferrer"&gt;https://github.com/LuisDiaz-ipsilon/capacitor-healthkit&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Si llegas a implementarlo y cuentas con dudas podrias comentarlo como issue sobre mi repo y con gusto te respondo. &lt;/p&gt;

</description>
    </item>
    <item>
      <title>HackMty 24 📍TecMty</title>
      <dc:creator>Luis Diaz</dc:creator>
      <pubDate>Thu, 31 Oct 2024 03:50:29 +0000</pubDate>
      <link>https://dev.to/luis_diaz_19a878119983392/hackmty-24-tecmty-4f1b</link>
      <guid>https://dev.to/luis_diaz_19a878119983392/hackmty-24-tecmty-4f1b</guid>
      <description>&lt;p&gt;Este año mi equipo y yo participamos en el Hackathon mas grande de latinoamerica desarrollado por estudiantes, la experiencia en este tipo de eventos es muy buena ya que puedes discutir todos las ideas que tengas y conocer de primera mano si les ayudara a las empresas la solución que buscas, ya que puedes exponer una idea con algún director o gerente de cierto proceso. &lt;/p&gt;

&lt;p&gt;En mi caso pude exponer una idea con una gerente de seguros para auto CHUBB.&lt;br&gt;
La problemática: Toma mucho tiempo valuar el daño en el centro de evaluación. &lt;/p&gt;

&lt;p&gt;Le comente que es posible usar visión computacional apartar de todo el dataset de imágenes que tienen de choques anteriores y crear un estimado para que el valuador le tome menos tiempo realizar labor de peritaje en el auto de manera física. &lt;/p&gt;

&lt;p&gt;La gerente menciona que si se esta buscando implementar una solución de este tipo y me ofreció un meet para conversar mas acerca de la implementación. &lt;/p&gt;

&lt;p&gt;Algo también muy gratificante es el trabajo en equipo que hicimos Diana, Aylin, Alberto y yo, nuestra idea principal fue realizar un plugin para Microsoft Teams, para cada clase en linea que genere una grabación de video se genera una infografía de la clase.&lt;br&gt;
Esta infografia tiene todos los puntos resumidos de la clase además d una redireccion al minuto especifico si deseas verlo sobre el video en vez de solo leerlo. &lt;/p&gt;

&lt;p&gt;Quiero agradecer a mi equipo PilotosDelMatrix por todo el esfuerzo en el proyecto!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feww25slmou9fskgi2rfl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feww25slmou9fskgi2rfl.png" alt="Image description" width="736" height="1600"&gt;&lt;/a&gt;&lt;br&gt;
En esta foto me encontraba en la mesa con mi equipo al lado del centro de la sala donde teníamos pantallas que mostraban el tiempo recorrido, grababan a los equipos trabajando y los stands de los sponsors se encontraban en el pasillo central.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr8iedkf6791p3w7j16am.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr8iedkf6791p3w7j16am.png" alt="Image description" width="800" height="1063"&gt;&lt;/a&gt;&lt;br&gt;
Disfrute mucho este evento! Agradezco mucho a mi novia Ángela por tanto apoyo!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Implementacion de videollamadas multiplataforma iOS - Android</title>
      <dc:creator>Luis Diaz</dc:creator>
      <pubDate>Thu, 31 Oct 2024 00:57:14 +0000</pubDate>
      <link>https://dev.to/luis_diaz_19a878119983392/implementacion-de-videollamadas-multiplataforma-ios-android-48l0</link>
      <guid>https://dev.to/luis_diaz_19a878119983392/implementacion-de-videollamadas-multiplataforma-ios-android-48l0</guid>
      <description>&lt;p&gt;Me llego un requerimiento sobre una aplicacion de desarrollo hibrido, esta es la misma para la que desarrolle el uso de los datos de salud, en este caso el requerimiento solicitaba que se implementara el servicio de videollamadas donde pueda ser usado para comunicarse indistintamente el sistema operativo iOS, Android y Web.&lt;/p&gt;

&lt;p&gt;Comence revisando las soluciones entre ellas dos: 1. Uso de WebRtc y STUN server, la implementacion representaba la configuracion de un nuevo servidor y desarrollo altamente complejo, cosa que me entusiasmo mucho; 2. Usar un iframe, como la implementacion por parte de la documentacion demostraba mayor facilidad de instalacion se tomo como opcion. Se plantio la idea de desarrollo y el plan al Project Manager y brindo oportunidad para realizar benchmark a las dos opciones.&lt;/p&gt;

&lt;p&gt;presento las diferencias entre las opciones: &lt;/p&gt;

&lt;p&gt;STUN:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8mhmt6jmvdolinwowsjs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8mhmt6jmvdolinwowsjs.png" alt="Image description" width="649" height="283"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;iframe:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhs640xcwn3ve69nwoxpa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhs640xcwn3ve69nwoxpa.png" alt="Image description" width="716" height="488"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Como se puede observar, al usar el iframe el equipo de desarollo se deja de procupar por una implementacion mas grande, ya que le iframe solo es el uso de una api web en donde mediante peticiones se maneja una vista renderizada en pantalla, esto es sumamente atractivo en terminos de desarrollo ya que es tan facil como contratar el servicio premium del uso de videollamadas de conveniencia, en este caso de opto por jitsi as a service: &lt;a href="https://jaas.8x8.vc/" rel="noopener noreferrer"&gt;https://jaas.8x8.vc/&lt;/a&gt; al usar este servicio hace uso de jitsi el paquete que contiene las herramientas de iframe.&lt;/p&gt;

&lt;p&gt;El resultado en pruebas fue el siguiente:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuvw38p8n9e571rfxwilo.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuvw38p8n9e571rfxwilo.jpeg" alt="Image description" width="800" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Se continuo con el desarrollo para personalizar y ajustar en UI el iframe y su funcionamiento es muy bueno ya que se puede personalizar el logotipo de la empresa, determinar la logica del uso de las llamadas, finalizar la llamada para todos, organizar meetings grupales, compartir pizarras o simplemente tomarla como llamada telefonica. &lt;/p&gt;

</description>
      <category>ios</category>
      <category>mobile</category>
      <category>jitsi</category>
      <category>ionic</category>
    </item>
  </channel>
</rss>
