Public Docs
- Hidden Networks
- Como obtener reservas eRoom PMS
- Navicu Odoo DevOps
- Instalación de eRoom Server
- Manual Pantalla XXL TOWER
- Información Exports De Opera - Pms
- Regression Test Documentation Cartas Digitales
- ERP Castro Exclusive Residences
- ACLFiber - Tutoriales de Gestión de Productos
- Metropolitan APP
Hidden Networks
What Is a Hidden Network?
By default, all WiFi networks broadcast the so-called Service Set Identifier (SSID) every 100 milliseconds to let other devices know about their presence. If you were able to hear and understand the signals broadcasted by your router, you would probably want to cover your ears because all routers around you are constantly shouting something like, “This is BASEMENTWIFI!” or “Hi, I’m CISCO_NETWORK!”
Well, almost all routers. Some routers don’t broadcast their SSID because the hidden network WiFi option has been turned on in the settings. This option stops the broadcasting of the network’s SSID, which effectively causes it to disappear and become invisible to all devices that connect to WiFi networks.
How to Connect to Hidden Networks?
By default Jacidi uses WPA-2 as encryption type.
If you have all this information, you can follow the instructions below for your platform.
Windows 10
- Open the Settings app.
- Go to Network & Internet.
- Select Wi-Fi from the left pane.
- Click Manage known networks on the right.
- Click Add a new network and enter the required information.
- Click Save and wait for Windows 10 to connect to the newly added hidden network.
Windows 8 and Older
- Open the Control Panel.
- Go to Network and Internet → Network and Sharing Center.
- Click Set up a new connection or network.
- Choose the Manually connect to a wireless network option and click Next.
- Enter information for the wireless network you want to add and click Next.
- Wait for Windows to connect to the newly added hidden network.
macOS
- Click the WiFi icon in the Menu bar.
- Select the Join Other Network option.
- Enter the required information.
- Click Join.
- Wait for your Mac to connect to the newly added hidden network.
Linux (GNOME)
Android
- Open the Settings app.
- Go to the WiFi section and select Add WiFi Network.
- Enter the required information.
- Tap Connect and wait for your Android device to establish a connection.
iOS
- Open the Settings app.
- Go to the WiFi section and select Other.
- Enter the required information.
- Tap Join and wait for your iOS device to establish a connection.
Como obtener reservas eRoom PMS
📄 GET /b-master-books/all
Este endpoint permite la recuperación paginada de todos los registros de reservas maestras (BMasterBook), con la posibilidad de aplicar filtros basados en diversos criterios.
🔗 URL y Método
-
Método: GET
-
Ruta: /api/b-master-books/all
💡 Descripción
Recupera una página de entidades BMasterBook. La respuesta incluye información de paginación en las cabeceras HTTP, lo que permite al cliente iterar a través de los resultados. Los filtros se aplican utilizando la clase BMasterBookCriteria.
⚙️ Parámetros de Consulta (Query Parameters)
El endpoint acepta dos tipos de parámetros: Paginación y Criterios de Filtro.
1. Parámetros de Paginación (Pageable)
|
Parámetro |
Tipo |
Descripción |
Ejemplo |
|
page |
Integer |
El número de página a recuperar (base 0). |
page=1 |
|
size |
Integer |
El número de elementos por página. |
size=20 |
|
sort |
String |
Propiedad(es) por la(s) que ordenar, seguido de ,asc o ,desc. |
sort=id,desc |
2. Parámetros de Criterios de Filtro (BMasterBookCriteria)
Estos filtros se basan en la clase BMasterBookCriteria y utilizan la notación de JHipster Criteria (e.g., .equals, .contains, .greaterThan).
|
Parámetro (Campo) |
Tipo de Filtro |
Descripción |
|
id |
LongFilter |
Filtro por el ID único de la reserva maestra. |
|
uuid |
UUIDFilter |
Filtro por el UUID. |
|
code |
StringFilter |
Filtro por el código de la reserva. |
|
checkin |
LocalDateFilter |
Filtro por la fecha de check-in. |
|
checkout |
LocalDateFilter |
Filtro por la fecha de check-out. |
|
resellerBookCode |
StringFilter |
Filtro por el código de reserva del revendedor. |
|
isActive |
BooleanFilter |
Filtro por el estado activo. |
|
createdAt |
InstantFilter |
Filtro por la fecha y hora de creación. |
|
updatedAt |
InstantFilter |
Filtro por la fecha y hora de la última actualización. |
|
deletedAt |
InstantFilter |
Filtro por la fecha y hora de eliminación. |
|
deleted |
BooleanFilter |
Filtro por el estado de eliminado. |
|
sPropertyId |
LongFilter |
Filtro por el ID de la propiedad (SProperty). |
|
sSaleChannelId |
LongFilter |
Filtro por el ID del canal de venta. |
|
coreCurrencyId |
LongFilter |
Filtro por el ID de la moneda principal. |
|
pResellerId |
LongFilter |
Filtro por el ID del revendedor. |
|
pGuestId |
LongFilter |
Filtro por el ID del huésped principal (PGuest). |
|
coreBookTypeId |
LongFilter |
Filtro por el ID del tipo de reserva. |
|
sPaymentTermId |
LongFilter |
Filtro por el ID del término de pago. |
Navicu Odoo DevOps
Git Branches
2 Branches has been defined
- UAT - Pre Production stage
- MAIN - Production
All commits must go to UAT branch first, wait until CI/CD has succeeded and then try changes on admin.uat.navicu.com.
After successfully testings on UAT merge changes into MAIN branch
Portainer
Jacidi uses Portainer to manage docker containers.
Go to https://portainer2.jacidi.com and log in with provided credentials using Login with Oauth
Once inside select BCN Datacenter Environment
Select Stacks from the left menu.
There should be 2 stacks navicu-odoo-uat and navicu-odoo (UAT and Production)
Once inside a stack you can see 2 services (Postgres DB and Odoo App) and a list of the containers for each service.
Only one container must be running per service, other containers are dead, failed or stopped.
Do NOT modify compose file from editor TAB
Do NOT use remove service button or automatic deploy will no longer work
Logs and Terminal
You can see logs from all container selecting action -> logs (first icon) and access terminal from each running container action -> terminal (last icon)
Once inside terminal you can run odoo command directly using following syntax:
odoo -d $DB_NAME -r $USER -w $PASSWORD --db_host $HOST --stop-after-init
Variables $DB_NAME $USER $PASSWORD $HOST are inherited from compose file. Must be used always to run any command. For example, run odoo install base: odoo -d $DB_NAME -r $USER -w $PASSWORD --db_host $HOST --stop-after-init -i base
Instalación de eRoom Server
Contenido del paquete:
- eRoomServer
- 2 soportes rack con sus tornillos
- Tornillos para rack
- Hembras para rack
- 2 latiguillos UTP Cat6
- Cable Alimentación
Instrucciones de instalación:
Preparación:
Verifique que tenga todos los componentes necesarios del paquete de instalación.
Asegúrese de tener acceso al rack principal y al switch principal.
Identifique la ubicación adecuada en el rack principal para instalar el servidor.
Instalación de los soportes rack:
- Coloque el servidor en una superficie adecuada y estable.
- Tome un soporte rack y alinee los orificios de montaje del soporte con los orificios de montaje en el servidor.
- Utilice los tornillos con cabeza plana suministrados para fijar el soporte rack al servidor. Repita este paso para el segundo soporte rack.
Asegúrese de apretar los tornillos de manera segura para garantizar una instalación estable.
Instalación del servidor en el rack principal:
- Abra el rack principal y ubique una posición adecuada para instalar las hembras.
- Fije las hembras suministradas en el rack principal con la ayuda de un destornillador plano.
- Coloque el servidor con los soportes rack en el rack principal, alineando los orificios de montaje del servidor con las hembras instaladas previamente en el rack.
- Utilice los tornillos para rack suministrados para fijar el servidor al rack principal.
Asegúrese de apretarlos de manera segura.
Conexión de los latiguillos al switch principal:
Antes de realizar esta conexión, contacte a Jacidi para confirmar en qué puertos específicos (ETH0 y ETH1) del switch principal se deben conectar los latiguillos.
- Conecte un extremo de cada latiguillo UTP Cat6 al puerto correspondiente en el servidor (ETH0 y ETH1).
- Conecte el otro extremo de cada latiguillo UTP Cat6 a los puertos designados del switch principal, según las indicaciones proporcionadas por Jacidi.
Conexión del cable de alimentación:
- Localice el cable de alimentación suministrado.
- Enchufe un extremo del cable de alimentación en el conector de alimentación del servidor.
- Conecte el otro extremo del cable de alimentación a una toma de corriente adecuada.
Es importante asegurarse de que la toma de corriente utilizada sea estable y confiable para evitar interrupciones en la alimentación del servidor.
¡Felicidades! Ha completado la instalación del eRoomServer en el rack principal. Asegúrese de revisar cualquier otra documentación o requisito específico del sistema antes de poner en funcionamiento el servidor.
Manual Pantalla XXL TOWER
Matriz de Video
Modos de Video
Se han creado los siguientes modos de video
- (1) MagicInfo: Muestra el input seleccionado en pantalla completa
- (2) PC
- (3) TV
- (4) TV + MagicInfo
- (5) TV + PC
Cambio de Modo
- Asegúrese que la botonera de la Matriz de video tiene el botón MODE seleccionado (debe estar en Azul). Si no lo está, presiónelo.
- Seleccione con los botones numéricos el modo deseado
IMPORTANTE
Queda terminantemente prohibido tocar cualquier otro botón de la botonera o realizar ajustes no autorizados por personal capacitado. Esta pantalla no es un juguete y manipulaciones incorrectas pueden afectar su funcionamiento. Si tiene alguna pregunta o problema, comuníquese con el soporte técnico de Jacidi (93 015 72 12) para obtener asistencia.
Información Exports De Opera - Pms
La configuración de Exports es un proceso que se ejcuta desde el front desk (Desde la Api solo pueden listarse) de Opera Pms justo como lo indica la documentación directa de opera https://docs.oracle.com/cd/F18689_01/doc.193/f38312/ch_exports.htm#OCSUH-Exports-86715163 y https://docs.oracle.com/en/industries/hospitality/opera-cloud/23.5/ocsuh/ch_exports.htm , en las siguientes imágenes haré una guía gráfica de como llegar al panel donde se pueden apreciar la lista de exports previamente configurados y donde se podrán crear alguno nuevo.
Como se puede apreciar, para ingresar a la lista de exports hay que ingresar desde el menú principal, desde la sección de Micellaneous, en el menu desplegable de la opción Exports hay que seleccionar General, inmediatamente se mostrará la siguiente página.
Desde aquí se puede apreciar la lista de Exports que ya están configurados.
Crear un nuevo Export:
Para la configuración y creación de un nuevo Export hay 2 formas de hacerlo basándonos en una plantilla pre configurada por Opera o partir de los GENERAL_VIEW, la diferencia entre estos 2 es básicamente que las plantillas ya creadas tienen unas consultas predefinidas y toda una estructura creada solo para que operemos a partir de los parámetros de búsqueda de la data que deseamos plasmar allí, es decir, ya la estructura está definida y lo que nos toca trabajar es sobre qué tipo de filtro usaremos para la data como fecha de inicio y fin de la consulta o que cumplan con alguna u otra condición; sin embargo, están limitados únicamente a los campos previamente definidos que se puedan obtener, por otra parte, los GENERAL_VIEW son mucho más amplios en lo que refieren a la data a extraer pueden traer todos los campos asociados a alguna entidad tomando como ejemplo la RESERVATION_GENERAL_VIEW tiene asociados 543 campos todos relacionados con la entidad de Booking de Opera a la cual se pueden acceder, pero la configuración debe hacerse desde 0.
Export a partir de plantilla
En las siguientes imágenes mostraré ejemplos de cómo configurar una Responsys_Resv_Day que es un Export que se genera de una plantilla como lo indica la documentación de Opera, esta plantilla es para la exportación de información de reservas https://docs.oracle.com/en/industries/hospitality/opera-cloud/23.5/ocsuh/t_exports_responsys_general_reservation_exports.htm .
Como se puede apreciar en la siguiente imagen, a la derecha sobre la tabla existen 2 opciones New y New From Template en este momento escogeremos la sección de New From Template y se desplegará un modal como este.
En la cual se debe dar click sobre el input de template para escoger uno (Además de cargar los demás inputs) se mostrará una lista como la siguiente.
Al culminar la selección encontrarás una vista cómo está en la cual podrás ver la configuración del Export creado.
Para cambiar los parámetros se debe clickear sobre el input Parameter Form
Al hacer esto, se mostrará la lista de tipos de parámetros que se pueden aplicar, como la que se muestra a continuación.
Es importante acotar que no todos los tipos de parámetros aplican para todos los Exports la asociación y correspondencia son empírica.
En la lista de los Exports podremos apreciar el nuestro ya creado. Para poder probarlo, debemos darle click en la fila al final en los 3 puntos para desplegar el menú desplegable de opciones.
Al hacer esto, se desplegará un menú desplegable donde se deberán ejecutar 2 acciones cuando el Export está recién creado o modificado. 1) Clickar sobre Export Data 2) clickar sobre View Exports y si ya está creado y sin modificaciones solo se clickea sobre View Exports .
Al ejecutar estos pasos, llegarás a una vista como la siguiente (Importante: si la lista continuación está vacía, es porque no se le dio click a la opción Export Data en el paso anterior).
Ya en este punto se debe dar click en los 3 puntos para desplegar las opciones como se muestra a continuación, en la cual se debe dar click sobre la opción Generate File
Esto desplegará un último modal para escoger el nombre del archivo y el formato del mismo se le da click al botón Generate File por último debes darle click de nuevo en los 3 puntos cuando ya se genere el archivo y te dará la opción Download y con esto descargará el archivo.
Anexo links sobre documentación de algunas plantillas de Opera:
- Para Huespedes: https://docs.oracle.com/en/industries/hospitality/opera-cloud/23.5/ocsuh/t_exports_responsys_general_profile_exports.htm
- Para Reservas: https://docs.oracle.com/en/industries/hospitality/opera-cloud/23.5/ocsuh/t_exports_responsys_general_reservation_exports.htm
- Para Transacciones: https://docs.oracle.com/en/industries/hospitality/opera-cloud/23.5/ocsuh/t_exports_responsys_general_transaction_exports.htm
Export sin plantilla
En las siguientes imágenes mostraré ejemplos de cómo configurar sin plantillas un Export .
Como se puede apreciar en la siguiente imagen, a la derecha sobre la tabla existen 2 opciones New y New From Template en este momento escogeremos la sección de New con esto se redirigirá a una página como esta.
Como se puede apreciar a diferencia de los generados a partir de plantilla hay que configurar cada uno de los campos de manera manual, para efectos de esta documentación se muestra como fue cargado los datos para un export enfocado en reservas y esto a partir de la selección del Data Source Name de RESERVATION_GENERAL_VIEW esto en resumen de lo que se enfoca de buscar todos los campos relacionados con alguna entidad principal en este caso reserva.
Para gestionar los campos que se agregarán al archivo Export se utiliza este editor integrado en el sistema que te permite agregar, remover y ordenar los campos que se exportarán.
Para cambiar los parámetros se debe clickear sobre el input Parameter Form
Al hacer esto, se mostrará la lista de tipos de parámetros que se pueden aplicar, como la que se muestra a continuación.
Es importante acotar que no todos los tipos de parámetros aplican para todos los Exports la asociación y correspondencia son empírica.
En la lista de los Exports podremos apreciar el nuestro ya creado. Para poder probarlo, debemos darle click en la fila al final en los 3 puntos para desplegar el menú desplegable de opciones.
Al hacer esto, se desplegará un menú desplegable donde se deberán ejecutar 2 acciones cuando el Export está recién creado o modificado. 1) Clickar sobre Export Data 2) clickar sobre View Exports y si ya está creado y sin modificaciones solo se clickea sobre View Exports .
Al ejecutar estos pasos, llegarás a una vista como la siguiente (Importante: si la lista continuación está vacía, es porque no se le dio click a la opción Export Data en el paso anterior).
Ya en este punto se debe dar click en los 3 puntos para desplegar las opciones como se muestra a continuación, en la cual se debe dar click sobre la opción Generate File
Esto desplegará un último modal para escoger el nombre del archivo y el formato del mismo se le da click al botón Generate File por último debes darle click de nuevo en los 3 puntos cuando ya se genere el archivo y te dará la opción Download y con esto descargará el archivo.
Proceso de configuración de export para Reservas
Para la configuración, se debe crear un export sin plantilla, como se ha indicado anteriormente, y en selección del Data Source Name se debe escoger RESERVATION_GENERAL_VIEW, y se deben definir los parámetros de la siguiente forma: comencemos con las General Configurations; se debe hacer check en Always Export Header and Footer, check en Compress Data, en el selector de Column Separator se debe seleccionar a Semi Colon y, por último, hacer check en Add Newline.
Pasemos a la configuración del Header, se debe respetar el orden y los nombres, debido a que están relacionados con los valores que se ejecutarán en el Data, el proceso para agregar los valores es el siguiente:
-
Darle clic al botón Add.
-
Inmediatamente en el selector Column Data Type, se debe seleccionar la opción Header, y posteriormente a la derecha sobre el apartado de Formula, dar clic sobre el lápiz y se verá un modal de esta forma.
-
En la primera columna, en el último input, el de String, se debe colocar el nombre del campo que se desea configurar; por ejemplo, sería reservation_id, y por último darle clic al botón de Replace, y con ello reemplazará el valor; por último, darle clic al botón Ok.
La lista de valores que deben ser registrados en el Header son los siguientes:
-
reservation_id
-
external_reference
-
channel
-
room_number
-
room_type_code
-
room_type_description
-
reservation_status
-
cancellation_code
-
cancellation_description
-
cancellation_date
-
checkin_at
-
checkout_at
-
checkin
-
checkout
-
nights
-
balance
-
payment_amount
-
payment_method
-
discount
-
total_revenue
-
fb_revenue
-
room_revenue
-
has_meal_plan
-
products
-
guest_id
-
has_companions
-
companions
-
adults_quantity
-
childrens_quantity
Pasemos a la configuración del Data; se debe respetar el orden y los nombres debido a que están relacionados con los valores que se ejecutarán en el Header. El proceso para agregar los valores es el siguiente:
- Darle click al boton Add
-
Inmediatamente en el selector Column Data Type, se debe dejar la opción Data y, posteriormente, al selector Column Type, se debe cambiar a la opción Database Column; por consiguiente, falta asignar qué columna de la base de datos, y esto se realiza con el selector Column Name. Adjunto imagen de ejemplo.
La lista de valores que deben ser registrados en el DATA son los siguientes:
-
RESV_NAME_ID
-
EXTERNAL_REFERENCE
-
CHANNEL
-
ROOM
-
ROOM_CATEGORY
-
ROOM_CATEGORY_LABEL
-
RESV_STATUS
-
CANCELLATION_REASON_CODE
-
CANCELLATION_REASON_DESC
-
CANCELLATION_DATE
-
ACTUAL_CHECK_IN_DATE
-
ACTUAL_CHECK_OUT_DATE
-
ARRIVAL
-
DEPARTURE
-
NIGHTS
-
BALANCE
-
PAYMENT_AMOUNT
-
PAYMENT_METHOD
-
DISCOUNT_AMT
-
TOTAL_REVENUE
-
FB_REVENUE
-
ROOM_REVENUE
-
MEALPLAN_YN
-
PRODUCTS
-
GUEST_NAME_ID
-
ACCOMPANYING_YN
-
ACCOMPANYING_NAMES
-
ADULTS
-
CHILDREN
Proceso de configuración de export para Perfiles
Para la configuración, se debe crear un export sin plantilla, como se ha indicado anteriormente, y en selección del Data Source Name se debe escoger Name_View, y se deben definir los parámetros de la siguiente forma: comencemos con las General Configurations; se debe hacer check Always Export Header and Footer, check en Compress Data, en el selector de Column Separator se debe seleccionar a Semi Colon y, por último, hacer check en Add Newline.
Pasemos a la configuración del Header, se debe respetar el orden y los nombres, debido a que están relacionados con los valores que se ejecutarán en el Data, el proceso para agregar los valores es el siguiente:
-
Darle clic al botón Add.
-
Inmediatamente en el selector Column Data Type, se debe seleccionar la opción Header, y posteriormente a la derecha sobre el apartado de Formula, dar clic sobre el lápiz y se verá un modal de esta forma.
-
En la primera columna, en el último input, el de String, se debe colocar el nombre del campo que se desea configurar; por ejemplo, sería guest_id, y por último darle clic al botón de Replace, y con ello reemplazará el valor; por último, darle clic al botón Ok.
La lista de valores que deben ser registrados en el Header son los siguientes:
-
guest_id -
firts_name -
last_name -
email_id -
email -
address_id -
address_line_1 -
address_line_2 -
address_line_3 -
city -
country -
zip_code -
birthdate -
document_identity_id -
document_identity_effective_date -
document_identity_expiration_date -
document_identity_value -
document_identity_type -
gender -
language -
nationality -
phone_id -
phone_country_code -
phone_area_code -
phone
Pasemos a la configuracion del Data, se debe respetar el orden y los nombres debido a que estan relacionados con los valores que se ejecutaran en el Header, el proceso para agregar los valores es el siguiente:
- Darle click al boton Add
-
Inmediatamente en el selector Column Data Type, se debe dejar la opción Data y, posteriormente, al selector Column Type, se debe cambiar a la opción Database Column; por consiguiente, falta asignar qué columna de la base de datos, y esto se realiza con el selector Column Name. Adjunto imagen de ejemplo.
La lista de valores que deben ser registrados en el DATA son los siguientes:
-
NAME_ID -
FIRST -
NAME -
EMAIL_ID -
EMAIL -
ADDRESS_ID -
ADDRESS1 -
ADDRESS2 -
ADDRESS3 -
CITY -
STATE -
COUNTRY -
ZIP_CODE -
BIRTH_DATE -
ID_DOCUMENT_ATTACH_ID -
ID_DATE -
ID_EXPIRATION_DATE -
ID_NUMBER -
ID_TYPE -
GENDER -
LANGUAGE -
NATIONALITY -
PHONE_ID -
PHONE_COUNTRY_CODE -
PHONE_EXTENSION -
PHONE_NO
Proceso de configuración de export para Transacciones
Para la configuración, se debe crear un export con plantilla, como se ha indicado anteriormente, y en selección del Template se debe escoger EXP_TRANSACTIONS, y se deben definir los parámetros de la siguiente forma: comencemos con las General Configurations; se debe hacer check en Always Export Header and Footer, check en Compress Data, en el selector de Column Separator se debe seleccionar a Semi Colon y, por último, hacer check en Add Newline.
Pasemos a la configuración del Header, se debe respetar el orden y los nombres, debido a que están relacionados con los valores que se ejecutarán en el Data, el proceso para agregar los valores es el siguiente:
- Darle click al boton Add
-
Inmediatamente en el selector Column Data Type, se debe seleccionar la opción Header, y posteriormente a la derecha sobre el apartado de Formula, dar clic sobre el lápiz y se verá un modal de esta forma.
-
En la primera columna, en el último input, el de String, se debe colocar el nombre del campo que se desea configurar; por ejemplo, sería guest_id, y por último darle clic al botón de Replace, y con ello reemplazará el valor; por último, darle clic al botón Ok.
La lista de valores que deben ser registrados en el Header son los siguientes:
-
confirmation_no -
trx_code -
trx_type -
trx_type_description -
transaction_action_id -
transaction_description -
reservation_id -
guest_id -
net_amount -
gross_amount -
posted_amount -
non_revuene_amount -
currency -
market_code -
product -
quantity -
price_per_unit -
billing_no
-
Pasemos a la configuración del Data; se debe respetar el orden y los nombres debido a que están relacionados con los valores que se ejecutarán en el Header. El proceso para agregar los valores es el siguiente:
- Darle click al boton Add
-
Inmediatamente en el selector Column Data Type, se debe dejar la opción Data y, posteriormente, al selector Column Type, se debe cambiar a la opción Database Column; por consiguiente, falta asignar qué columna de la base de datos, y esto se realiza con el selector Column Name. Adjunto imagen de ejemplo.
La lista de valores que deben ser registrados en el DATA son los siguientes:
-
CONFIRMATION_NO -
TRX_CODE -
TRX_TYPE -
TRX_TYPE_DESCRIPTION -
TRAN_ACTION_ID -
TRANSACTION_DESCRIPTION -
RESV_NAME_ID -
NAME_ID -
NET_AMOUNT -
GROSS_AMOUNT -
POSTED_AMOUNT -
NON_REVENUE_AMOUNT -
CURRENCY -
MARKET_CODE -
PRODUCT -
QUANTITY -
PRICE_PER_UNIT -
BILL_NO
Configuración de SFTP
Para iniciar el proceso de configuración de las credenciales SFTP para el envío de los datos por medio de este protocolo, debemos seguir los siguientes pasos:
- Hacer clic en la zona superior izquierda en el botón del menú de hamburguesa que está a la izquierda del logo de la propiedad y se desplegará un sidebar con varias opciones; debe darle clic en la opción de Toolbox.
-
Posterior a esos pasos se verá una nueva pantalla, en la cual mostrará 2 opciones en el menú del header; deberás hacer clic en la opción System Setup para desplegar el menú de opciones y sobre Outbound se mostrarán 3 opciones; deberás dar clic sobre la opción Outbound Domain Allowlist, debido a que aquí configuraremos los dominios habilitados.
-
Ya dentro de esta opción, deberás crear un nuevo dominio dándole clic a la pestaña de New que aparece a la derecha, aproximadamente a la mitad de la pantalla.
-
Ya dentro del apartado de New, se deberán colocar los datos específicos de la configuración y guardar (Importante: la documentación de Opera indica que los puertos disponibles para SFTP son los siguientes: 22 y del 22001 al 22099).
-
Al hacer esto, el dominio recién creado tendrá un status de Awaiting Approval. En los 3 puntos se mostrará una opción para aprobar; deberá darle clic y cambiará a un status Pending para ser revisado por Opera y colocarlo como Ready. Opera puede tardar hasta 6 horas en hacer esta aprobación.
Esta información está documentada a partir de Opera acá https://docs.oracle.com/en/industries/hospitality/opera-cloud/24.4/ocsuh/t_toolbox_configuring_outbound_domain_allow_listings.htm
Después de que el dominio esté en el estatus Ready, deberás seguir estos pasos para continuar con la configuración:
-
De nuevo, desde el menú superior del header, sobre la opción System Setup, pero ahora sobre el apartado de SFTP Configuration, haga clic.
-
En la siguiente vista, darle clic a la pestaña New para registrar una nueva configuración de SFTP.
-
En este punto se deben cargar las credenciales en los campos; se recomienda que a nivel de la selección de Context se seleccione Global y así estará disponible para todas las propiedades.
-
Para el campo Host Key se debe correr un comando como lo indica ssh-keyscan -p <port> <hostname>. Muestro un ejemplo de que se debe agregar este campo.
-
Por último, debes configurar las folders donde se alojarán estos archivos que se generarán; lo ideal ya sería crear una carpeta por propiedad, de tal manera que se alojen donde corresponde.
-
Hay que darle clic a la opción Add Rows, como por ejemplo esta imagen que muestro a continuación.
-
Se da clic a los 3 puntos de la derecha y en las opciones que se despliegan y se da clic en Validate.
Con esto, si esa carpeta existe o puede ser creada, se agregará y estará disponible para usar esta configuración SFTP.
Configuración de los Delivery Configuration
Con respecto a la configuración de envío de estos exports hay una sección de documentación dedicada a ello: https://docs.oracle.com/en/industries/hospitality/opera-cloud/23.5/ocsuh/t_exports_managing_export_file_delivery_configuration.htm en las siguientes imágenes mostraremos cómo se configura.
En la lista de los Exports debemos darle click en la fila al final en los 3 puntos para desplegar el menú desplegable de opciones.
Al hacer esto, veremos una página como está en la cual para configurar debemos dar click en la opción Edit para poder configurar la opción de envío que deseemos.
Podemos apreciar que tenemos 3 opciones: SFTP, HTTPS y File System
Con respecto al envío por medio de SFTP existen consideraciones que se abordan en este fragmento de la documentación https://docs.oracle.com/cd/F18689_01/doc.193/f38312/t_exports_sftp_delivery_method_configuration.htm#OCSUH-SFTPDeliveryMethodConfiguration-434729C0 y es importante resaltar esta nota en la documentación.
Regression Test Documentation Cartas Digitales
Regression Test
El Regression Test tiene como objetivo:
Verificar que las funcionalidades existentes siguen comportándose igual que antes de los cambios.
Detectar errores introducidos por optimizaciones, refactorizaciones o correcciones de bugs.
Asegurar que las modificaciones no reintroduzcan fallos antiguos (reversiones de fallos).
Confirmar que las correcciones de defectos recientes no afecten negativamente a otras partes del sistema.
Mantener la estabilidad general del software a lo largo del tiempo.
Pasos para realizar un test de regresión en QA.
- Definir alcance:
Módulos a trabajar en el test de regresión: Platos, Cartas, Canales, Publicidad, Qr.
2. funcionalidades y escenarios cubrir:
- Filtrado de platos por Restaurante.
- Lógica de programación de cartas en el sistema.sección de creación de cartas/secciones.
- Sección de canales/programación de la carta.
- Programación de cartas por restaurante.
- Generación de código QR.
- Genere la carta de ajuste por defecto.
- La plantillas de las cartas.
- Funcionalidad de cartas inactivas en la sección de canales.
- Ajustar la columna de duración en el DAM de actualización de imagen en el administrador de archivoTraducción de secciones al idioma seleccionado Español.
- Implementación de Carpetas DAM.
3. Identificar riesgos y áreas críticas.
- Sección de crear carta/Platos.
- Validación en los tipos de idioma.
- En el modal de detalle del plato
- Carpetas DAM.
- Validación de la programación de cartas.
- Carga de imagenes en los platos.
4. Priorizar casos de prueba basados en impacto y probabilidad de fallo.
5. Establecer criterios de aceptación y umbrales de calidad.
- Establecer criterios de aceptación y umbrales de calidad.
1) Criterios de aceptación funcional (nivel de sistema)
- Acceso y disponibilidad
- El sistema web debe estar accesible 99.9% del tiempo.
- Pautas de mantenimiento: ventanas planificadas fuera de horario comercial reducidas y notificadas con anticipación.
- Rendimiento end-to-end
- Carga de la página de inicio en ≤ 3 segundos en conexión promedio (p 95 en producción).
- Tiempos de respuesta de API (back-end) dentro de los límites establecidos (ver umbrales de calidad). ( SE REQUIERE VERIFICAR CON EL EQUIPO DE DESARROLLO).
- El rendering de menús en la página clave debe completar en ≤ 2 segundos en dispositivos de gama media. ( SE REQUIERE VERIFICAR CON EL EQUIPO DE DESARROLLO).
- Funcionalidad principal
- Visualización de menús: listado, filtros por categoría/acomodaciones, búsqueda, y ordenamiento deben funcionar sin errores.
- Detalle de menú: página de detalle con todos los campos obligatorios visibles y con enlaces a operaciones relacionadas.
- Gestión de contenido
- Crear/editar/eliminar menús y categorías desde la interfaz administrativa con validación de campos y permisos correspondientes.
- Actualización en tiempo real de disponibilidad y precios cuando corresponda.
- Importación/exportación de datos de menús en formatos estándar QR.
- Autenticación y autorización
- Inicio de sesión funcional para usuarios y roles (admin, staff, usuario).
- Roles correctamente aplicados: acciones sensibles restringidas según permisos.
- Revocación de sesiones y manejo de tokens (renovación/expiración).
- Accesibilidad y usabilidad
- Soporte básico de accesibilidad (contraste, navegación por teclado, textos alternativos de imágenes).
- Rendimiento razonable en dispositivos móviles (responsivo) y navegadores modernos.
- Seguridad
- Protección contra inyección básica, validación de entradas, y manejo seguro de tokens.
- Cifrado de datos sensibles en tránsito (TLS) y buenas prácticas de seguridad.
- Observabilidad y mantenimiento
- Logs estructurados y trazabilidad por operación (ID de pedido/consulta).
- Monitoreo de uptime, latencias y errores con alertas básicas (Slack/Email).
- Pruebas de regresión automatizadas ejecutadas en cada despliegue.
2) Umbrales de calidad (target) REVISAR ESTE PUNTO CON EL EQUIPO DE DESARROLLO.
- Latencia y rendimiento
- UI inicial: p95 ≤ 2.5 segundos; p99 ≤ 4 segundos en staging; en producción, p95 ≤ 3 segundos.
- API crítica (GET /menus, GET /menus/{id}): p95 ≤ 500 ms en staging; ≤ 350 ms en producción.
- Operaciones mutation (POST/PUT/DELETE): p95 ≤ 800 ms.
- Tiempos de renderizado en movil: tiempo total de interacción inicial ≤ 4 segundos.
- Errores y confiabilidad
- Tasa de error global (5xx) < 0.5% en producción; 4xx < 1% para usos válidos.
- Latencia de p99 durante picos no exceder 2x de p95.
- Integridad de datos
- 100% de operaciones de creación/actualización con validación de esquema y reglas de negocio.
- Consistencia entre UI y back-end: datos mostrados reflejan estado real (disponibilidad, precios, etc.).
- Sin datos sensibles expuestos en respuestas.
- Seguridad y cumplimiento
- Pruebas de autenticación/ autorización cubiertas; fallos de autorización devuelven 401/403 correctamente.
- Escaneo de vulnerabilidades sin fallos críticos en pipelines de CI/CD.
- Cumplimiento básico de privacidad y retención de datos según políticas.
- Calidad de contrato y pruebas
- Contratos API (OpenAPI/GraphQL) cubiertos al 100% con pruebas automatizadas.
- Pruebas de regresión automatizadas ejecutadas en cada despliegue; tasa de fallo inferior al 1%.
- Experiencia de desarrollador/operaciones
Preparación del entorno y datos.
- Asegurar un entorno aislado para pruebas (sandbox/staging) con datos consistentes. https://cartas.qa.ticepro.com/
- Crear conjuntos de datos representativos: positivos, negativos, límites y casos de error (403, 404, 429, 500).
Selección y mantenimiento de casos de prueba REVISAR ESTE PUNTO CON EL EQUIPO DE DESARROLLO.
- Casos de regresión para operaciones CRUD básicas, autenticación, autorización, validación de entradas y manejo de errores.
- Pruebas de integración entre servicios (por ejemplo, API A llama a API B).
- Pruebas de rendimiento y límites (p. ej., picos de tráfico simulados).
Ejecución de pruebas REVISAR ESTE PUNTO CON EL EQUIPO DE DESARROLLO.
- Ejecutar en el orden definido, priorizando endpoints críticos.
- Verificar código de estado correcto, estructura del cuerpo, cabeceras y tiempos de respuesta.
- Registrar resultados y evidencia (logs, respuestas completas, trazas).
- Documentar incidencias con pasos reproducibles y configuraciones de entorno.
Gestión de incidencias y seguimiento
- Crear tickets de defecto con severidad, entorno, reproducibilidad y impacto.
- Asignar responsables y plazos; agrupar fallos por componente.
- Re-ejecutar pruebas críticas después de correcciones y cambios de API.
- Mantener trazabilidad entre requerimientos, casos de prueba y fallos.
Validación de cambios y cierre
- Verificar que las correcciones no impacten otras rutas (regresión cruzada).
- Confirmar que se cumplen criterios de aceptación (latencia, código de respuesta, formato).
- Generar reporte de regresión específico de API (resumen, cobertura por endpoint, métricas).
- Aprobar cierre del ciclo de regresión.
Métricas y mejora continua
- Cobertura de regresión de API (endpoint críticos y contratos).
- Tasa de fallo por servicio, tiempo de ciclo de regresión, tasa de re-trabajo.
- Lecciones aprendidas y mejoras en contratos, validación de esquemas y pruebas de rendimiento.
ERP Castro Exclusive Residences
ACCESO A ERP-CASTRO
REGISTRAR UN NUEVO ESTABLECIMIENTO
- Gestionar Creación de Establecimiento
- Gestión Configuración de Centralita
- Gestión Configuración de Tipologías
- Gestión Configuración Exclusive Services
- Gestión Configuración de Apartamentos
CONFIGURACIÓN ADICIONAL DE ESTABLECIMIENTO
- Gestionar Configuración Precio Master
- Gestión Configuración Regímenes
- Gestión Configuración de Experienias
- Gestión Configuración de Promociones
- Gestión Configuración de Código Promocional
- Gestión Configuración Política de Cancelación
- Gestión Configuración de Tarifas
GESTIÓN DE ESTABLECIMIENTO
- Recepción
- Reservas
- Crear Reserva
- Ocupación
- Disponibilidad
- House Keeping
- Apartamentos
- Resellers
- Restanrante
- Resumen Desayunos
GESTIÓN DE VENTAS
GESTIÓN DE ACCESOS POR ESTABLECIMIENTO
GESTIÓN DE CONTENIDO
GESTIÓN DE GRÁFICAS - REVENUE
CONFIGURACIÓN EXTRAS
GESTIÓN DE SEGURIDAD
GESTIÓN CHECKIN MASTER
ACLFiber - Tutoriales de Gestión de Productos
Esta página contiene una guía completa y práctica para la gestión eficiente de productos, diseñada específicamente para el equipo de ACLFiber. Los tutoriales cubren desde la visualización básica de pedidos hasta la importación masiva de productos, proporcionando las herramientas necesarias para administrar el catálogo de productos y pedidos de manera profesional y eficaz.
🎯 Objetivos de Aprendizaje
Al completar estos tutoriales, el equipo de ACLFiber será capaz de:- Gestionar pedidos de manera eficiente y profesional- Crear y configurar productos con todas las especificaciones necesarias- Realizar importaciones masivas de productos de forma segura y efectiva; lograr observar sus pedidos, optimizando el flujo de trabajo diario en la plataforma.
1.- Gestión de Pedidos
- Acceder al panel de pedidos
- Interpretar estados de pedidos
- Filtrar y buscar pedidos específicos
- Gestionar estados de pedidos
- Exportar datos para análisis
2.- Gestionar Categorías y Productos en WooCommerce
- Crear categorías específicas
- Crear productos
- Configurar precios y descuentos
- Añadir imágenes y descripciones
3.- Gestionar Importación Masiva de Productos
- Preparar catálogo de productos
- Configurar archivo CSV específico
- Importar productos masivamente
- Verificar campos y corregir errores
- Listar para el catálogo
Metropolitan APP
Realizar backup (DBeaver)
Restaurar backup postgres (DBeaver)
- Instalar Postgres 17
- Crear base de datos
- Crear esquema public
- Instalar extensión hstore:
CREATE EXTENSION IF NOT EXISTS hstore SCHEMA public; - Restaurar backup con los argumentos --no-owner --no-privileges para no tener problemas de privilegios:
/usr/lib/postgresql/17/bin/pg_restore --verbose --host=localhost --port=5435 --username=postgres --no-owner --no-privileges --format=c --dbname=metropolitan_db /home/developer/Documentos/work/gitlab/eRoom/bk-metropolitan-202601091524.sql