{"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":"notificacoes-toz","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/pt\/toz-notifications\/","title":{"rendered":"ToZ Notifications para FiveM"},"content":{"rendered":"<p>ToZ Notifications \u00e9 um recurso independente de notifica\u00e7\u00f5es criado por TottoZZ. Seu cliente Lua envia mensagens para uma interface de navegador inclu\u00edda, sem exigir ESX ou QBCore. Ele serve para apresenta\u00e7\u00e3o: n\u00e3o valida o evento de jogo subjacente nem oferece um export de notifica\u00e7\u00e3o no servidor.<\/p>\n<h2>Envie notifica\u00e7\u00f5es pelas interfaces dispon\u00edveis<\/h2>\n<p>O export do cliente sendNotification recebe uma tabela de dados com title, text, type e duration. O wrapper Lua usa por padr\u00e3o uma notifica\u00e7\u00e3o informativa de 4000 milissegundos. A interface oferece os estilos info, success, warning e error. Informe uma dura\u00e7\u00e3o positiva e textos adequados ao seu fluxo de notifica\u00e7\u00f5es.<\/p>\n<p>No c\u00f3digo do servidor, a integra\u00e7\u00e3o documentada envia o evento de cliente toz-notifications:sendNotification ao jogador pretendido com essa tabela de dados. \u00c9 uma chamada de evento, n\u00e3o um export do servidor. N\u00e3o transmita mensagens privadas de personagem, pagamento ou equipe para todos os jogadores.<\/p>\n<h2>Instale e adapte ao seu framework<\/h2>\n<p>Mantenha o manifesto e os diret\u00f3rios src\/client e build juntos na pasta do recurso. O manifesto serve build\/index.html e seus arquivos. Inicie o recurso antes dos scripts que chamam seu export do cliente. config.lua existe no reposit\u00f3rio, mas n\u00e3o \u00e9 carregado pelo manifesto revisado; alterar seu idioma n\u00e3o configura o recurso em execu\u00e7\u00e3o.<\/p>\n<p>O README inclui exemplos que substituem as fun\u00e7\u00f5es de notifica\u00e7\u00e3o do framework. Confira primeiro as assinaturas reais na vers\u00e3o instalada do ESX ou QBCore. Os exemplos pressup\u00f5em uma tabela de op\u00e7\u00f5es, e a verifica\u00e7\u00e3o de estado tamb\u00e9m aceita recursos parados. Prefira uma pequena integra\u00e7\u00e3o no seu pr\u00f3prio script, verificando o estado started e mantendo uma alternativa funcional.<\/p>\n<h2>Tratamento das mensagens e escopo da revis\u00e3o<\/h2>\n<p>O c\u00f3digo Vue converte c\u00f3digos de formata\u00e7\u00e3o GTA em HTML e exibe o texto com v-html sem escapar a marca\u00e7\u00e3o existente. Higienize conte\u00fado n\u00e3o confi\u00e1vel e valide os tipos de dados antes da exibi\u00e7\u00e3o. Teste os quatro estilos, campos ausentes, textos longos, mensagens repetidas, rein\u00edcio e alternativa de notifica\u00e7\u00e3o em um servidor de desenvolvimento.<\/p>\n<p>C\u00f3digo verificado em 10 de setembro de 2026 na revis\u00e3o 5ca472086703b3db614214b2be691bd8e7d62c69. Manifesto, wrapper do cliente, README e c\u00f3digo Vue foram inspecionados; n\u00e3o houve integra\u00e7\u00e3o com framework nem teste do navegador dentro do jogo.<\/p>\n<p><a href=\"https:\/\/github.com\/TottoZZ\/toz-notifications\/tree\/5ca472086703b3db614214b2be691bd8e7d62c69\">Consultar o c\u00f3digo do ToZ Notifications<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Integre ToZ Notifications por export do cliente ou evento do servidor. Verifique dados, HTML das mensagens e adaptadores antes de substituir 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\/pt\/wp-json\/wp\/v2\/posts\/145661","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/comments?post=145661"}],"version-history":[{"count":8,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/posts\/145661\/revisions"}],"predecessor-version":[{"id":214304,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/posts\/145661\/revisions\/214304"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/media\/145662"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/media?parent=145661"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/categories?post=145661"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/pt\/wp-json\/wp\/v2\/tags?post=145661"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}