# 馃摝 Instalaci贸n API V2 ## 馃О Paso 1: Verificar el sistema operativo Asegurarse de conocer la versi贸n del sistema operativo del cliente (por ejemplo, FreeBSD 13.4). Para poder elegir el compilado correcto. En ese caso el c贸digo fuente estar谩 en: ```bash ssh -p 2229 informemedico@gitea.informemedico.com.ar cd /home/informemedico/api-13-4/api-v2/ ``` --- ## 馃搧 Paso 2: Copiar ejecutables al servidor del cliente Ejecutar el siguiente comando desde el servidor del cliente para copiar los archivos necesarios: ```bash rsync -av -e "ssh -p 2229" informemedico@gitea.informemedico.com.ar:'/home/informemedico/api-13-4/api-v2/_build/prod/rel/api/*' /home/informemedico/api/ ``` --- ## 鈿欙笍 Paso 3: Crear archivo `.env` Ubicarse en: ```bash cd /home/informemedico/api/bin/ ``` Y crear un archivo `.env` con las siguientes variables (reemplazar con los datos correctos): ```dotenv # Datos de compilaci贸n SECRET_KEY_BASE=GwWSI17GOehYsIBr8TLFaLmxA0N+qFpeycGz8naKy3IxEmxGbVQmr33LlzrwdT9j DATABASE_URL=ecto://postgres:1nf0rm3@127.0.0.1/dicomscp CHECK_ORIGIN=https://estudios.nobissalud.com.ar PHX_PORT=4001 PHX_HOST=127.0.0.1 ROOT_PATH=/api SCHEME=https #si es true debe estar escrito siempre en mayuscula (por que llega como string no como boolean) REDIRECT=TRUE # Datos consultas PYTHON_EXECUTABLE=/usr/local/bin/python3.9 PYTHON_SCRIPT=/home/informemedico/impacs/cgi/soffice/generar_pdf_api.py TEMPLATE_NAME=Con Membrete pr2_statusname=FINAL IDSITE=86 ESCANEADOS=https://estudios.nobissalud.com.ar/ # ESCANEADOS_CLAVE= ADJUNTOS=https://estudios.nobissalud.com.ar/api/attachment/ ADJUNTOS_CLAVE=1nf0rm3 acceso_ed=IDSTUDY IDENTIFIERFIELD=IDSTUDY # ImViewer4 # Si es 1, se usa imViewer4, si es 0 se usa el viewer viejo imViewer4=1 # Si usa ImViewer4, se debe agregar el dominio sin https:// # Ejemplo: imViewer4_host=informesmedicos.apross.gov.ar imViewer4_host=informesmedicos.apross.gov.ar # Si usa ImViewer4, se debe agregar el uid del cliente imViewer4_uid=aab2741a-6b94-4c72-ad29-bf0ca8e492f7 # Si usa ImViewer4, se debe agregar el gethash # Ejemplo: imViewer4_gethash=https://informesmedicos.apross.gov.ar imViewer4_gethash=https://informesmedicos.apross.gov.ar/viewer_api/gethash/ # Datos SMTP/Mailer #SMTP_USER=informes@ciem.com.ar #SMTP_PASS=OC{j9YZ0PB-x #SMTP_RELAY=mail.ciem.com.ar #EMAIL_BODY_PATH=htmlbody #SERVER_NAME_INDICATION=mail.ciem.com.ar FROM=Nobis # Imagenes LOGO=https://estudio.informemedico.com.ar/logos/nobissalud.png LOGO_SM=https://estudio.informemedico.com.ar/logos/nobissalud.png ``` --- ## 馃悕 Paso 4: Copiar y adaptar script `generar_pdf.py` Copiar el script que usa **imPACS** a la nueva ubicaci贸n: ```bash cp /ruta/soffice/generar_pdf.py /ruta/soffice/generar_pdf_api.py ``` Editar `generar_pdf_api.py` y agregar un `break`: ```python # Se compone el stdin en un 煤nico texto input = "" for line in sys.stdin: input = input + line break # <- agregar esta l铆nea ``` --- ## 馃殌 Paso 5: Iniciar el api y agregar al crontab Ejecutar: ```bash sudo ./api daemon ``` Contenido del script `server`: ```bash #!/bin/sh set -eu cd -P -- "$(dirname -- "$0")" PHX_SERVER=true exec ./api start ``` Agregar al `crontab`: ```bash @reboot /home/informemedico/api/bin/server ``` --- ## 馃寪 Paso 6: Configuraci贸n Apache Agregar lo siguiente en la configuraci贸n del VirtualHost: ```apache # CORS Header set Access-Control-Allow-Origin "*" Header set Access-Control-Allow-Headers "origin, x-requested-with, content-type" Header set Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS" # WebSocket RewriteEngine On RewriteCond %{HTTP:Connection} upgrade [NC] RewriteCond %{HTTP:Upgrade} websocket [NC] RewriteRule /(.*) "ws://127.0.0.1:4001/$1" [P,L] # /api ProxyPass /api http://127.0.0.1:4001/api ProxyPassReverse /api http://127.0.0.1:4001/api ProxyPass /api/live ws://127.0.0.1:4001/api/live ProxyPassReverse /api/live ws://127.0.0.1:4001/api/live ProxyPass /pacientes http://127.0.0.1:4001/api/pacientes ProxyPassReverse /pacientes http://127.0.0.1:4001/api/pacientes ``` --- ## 馃敡 Activaci贸n de rutas V2 en Admin 1. Cambiar la versi贸n de API a `2`. 2. Reemplazar las nuevas rutas en el sistema: | T铆tulo Ruta | Nueva URL | |-------------------------|-----------------------------------------------------| | **Document list URL** | `https://dominio/api/study/{{accession}}` | | **PDF downloads URL** | `https://dominio/api/downloadpdf/{{iddocument}}` | | **Studies URL** | `https://dominio/api/studies` |