{"id":145661,"date":"2024-07-02T23:19:34","date_gmt":"2024-07-02T21:19:34","guid":{"rendered":"https:\/\/hifivem.com\/?p=145661"},"modified":"2026-08-11T12:02:19","modified_gmt":"2026-08-11T10:02:19","slug":"notificaciones-toz","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/es\/toz-notifications\/","title":{"rendered":"Notificaciones de ToZ para FiveM"},"content":{"rendered":"<p>ToZ Notifications es un recurso independiente de notificaciones de TottoZZ. Su cliente Lua env\u00eda mensajes a una interfaz de navegador incluida sin requerir ESX ni QBCore. Sirve para presentar informaci\u00f3n: no valida el evento de juego subyacente ni proporciona un export de notificaci\u00f3n de servidor.<\/p>\n<h2>Enviar notificaciones mediante las interfaces incluidas<\/h2>\n<p>El export de cliente sendNotification acepta una tabla de datos con title, text, type y duration. El wrapper Lua utiliza por defecto una notificaci\u00f3n informativa de 4000 milisegundos. La interfaz admite los estilos info, success, warning y error. Proporciona una duraci\u00f3n positiva y textos adecuados para tu flujo de notificaciones.<\/p>\n<p>Desde el servidor, la integraci\u00f3n documentada env\u00eda el evento de cliente toz-notifications:sendNotification al jugador previsto con esa tabla de datos. Es una llamada de evento, no un export de servidor. No difundas mensajes privados de personaje, pagos o personal a todos los jugadores.<\/p>\n<h2>Instalaci\u00f3n y adaptaci\u00f3n al framework<\/h2>\n<p>Mant\u00e9n el manifiesto y los directorios src\/client y build juntos en la carpeta del recurso. El manifiesto sirve build\/index.html y sus archivos. Inicia el recurso antes de los scripts que llamen a su export de cliente. config.lua existe en el repositorio, pero el manifiesto revisado no lo carga; cambiar su idioma no configura el recurso en ejecuci\u00f3n.<\/p>\n<p>El README incluye ejemplos que sustituyen las funciones de notificaci\u00f3n del framework. Comprueba primero sus firmas reales en tu versi\u00f3n instalada de ESX o QBCore. Los ejemplos presuponen una tabla de opciones y su comprobaci\u00f3n de estado tambi\u00e9n acepta recursos detenidos. Es preferible una peque\u00f1a integraci\u00f3n en tu propio script, con comprobaci\u00f3n del estado started y una alternativa funcional.<\/p>\n<h2>Tratamiento de mensajes y alcance de la revisi\u00f3n<\/h2>\n<p>El c\u00f3digo Vue convierte los c\u00f3digos de formato GTA en HTML y muestra el texto con v-html sin escapar el marcado existente. Sanea el contenido no fiable y valida los tipos de datos antes de mostrarlo. Prueba los cuatro estilos, campos ausentes, textos largos, mensajes repetidos, reinicio y alternativa de notificaci\u00f3n en un servidor de desarrollo.<\/p>\n<p>C\u00f3digo revisado el 10 de septiembre de 2026 en la revisi\u00f3n 5ca472086703b3db614214b2be691bd8e7d62c69. Se inspeccionaron el manifiesto, el wrapper de cliente, el README y el c\u00f3digo Vue; no se realiz\u00f3 una integraci\u00f3n con framework ni una prueba del navegador dentro del juego.<\/p>\n<p><a href=\"https:\/\/github.com\/TottoZZ\/toz-notifications\/tree\/5ca472086703b3db614214b2be691bd8e7d62c69\">Consultar el c\u00f3digo de ToZ Notifications<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Integra ToZ Notifications mediante export de cliente o evento de servidor. Revisa datos, HTML de mensajes y adaptadores antes de sustituir avisos.<\/p>","protected":false},"author":1,"featured_media":145662,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2297,2298],"tags":[3001,2928,3000],"class_list":["post-145661","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-free","category-scripts","tag-fivem-script","tag-free","tag-free-script"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/145661","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/comments?post=145661"}],"version-history":[{"count":8,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/145661\/revisions"}],"predecessor-version":[{"id":214304,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/145661\/revisions\/214304"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/media\/145662"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/media?parent=145661"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/categories?post=145661"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/tags?post=145661"}],"curies":[{"name":"gracias","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}