Search the Community
Showing results for tags 'google'.
Found 19 results
-
Convidar pessoas para evento no google calendar através de PHP
Anderson Modolon posted a question in Perguntas e respostas rápidas
Estou com uma dúvida mas não sei exatamente aonde seria o melhor local, pois é sobre o Google Calendar e também sobre PHP. Estou tentando fazer o convite de uma pessoa para um evento no Google Calendar onde é feito a criação do evento sem problemas, porém na parte do convite é retornado o seguinte erro: Fatal error: Uncaught Google\Service\Exception: { "error": { "errors": [ { "domain": "calendar", "reason": "forbiddenForServiceAccounts", "message": "Service accounts cannot invite attendees without Domain-Wide Delegation of Authority." } ], "code": 403, "message": "Service accounts cannot invite attendees without Domain-Wide Delegation of Authority." } } in D:\amwebagencia\testes-\agendamento-google\vendor\google\apiclient\src\Http\REST.php on line 134. Já fiz pesquisas a respeito desse erro mas até então sem resultados relevantes. require_once 'vendor/autoload.php'; // Autorização - Está funcionando corretamente $client = new Google_Client(); $client->setAuthConfig('json-google-calendar/arquivo.json'); $client->addScope(Google_Service_Calendar::CALENDAR); $service = new Google_Service_Calendar($client); // Criação de evento - Está funcionando corretamente $calendarId = 'bbb@gmail.com'; // ID da agenda (por padrão, usa a agenda primária) $evento = new Google_Service_Calendar_Event(array( 'summary' => 'Título do Evento 22', 'description' => 'Descrição do Evento', 'start' => array( 'dateTime' => '2023-06-11T16:02:00', 'timeZone' => 'America/Sao_Paulo', ), 'end' => array( 'dateTime' => '2023-06-11T17:02:00', 'timeZone' => 'America/Sao_Paulo', ), )); $eventoInserido = $service->events->insert($calendarId, $evento); echo 'Evento inserido com sucesso. ID do Evento: ' . $eventoInserido->getId(); // Convidar pessoa para evento - Está retornando o erro: Fatal error: Uncaught Google\Service\Exception: { "error": { "errors": [ { "domain": "calendar", "reason": "forbiddenForServiceAccounts", "message": "Service accounts cannot invite attendees without Domain-Wide Delegation of Authority." } ], "code": 403, "message": "Service accounts cannot invite attendees without Domain-Wide Delegation of Authority." } } in D:\amwebagencia\testes-\agendamento-google\vendor\google\apiclient\src\Http\REST.php on line 134 $eventId = $eventoInserido->getId(); // ID do evento específico $email = 'xxx@gmail.com'; // E-mail da pessoa que você deseja convidar $attendee = new Google_Service_Calendar_EventAttendee(array( 'email' => $email, )); $event = $service->events->get('bbb@gmail.com', $eventId); $attendees = $event->getAttendees(); $attendees[] = $attendee; $event->setAttendees($attendees); $updatedEvent = $service->events->update('bbb@gmail.com', $eventId, $event, array('sendUpdates' => 'all')); echo 'Pessoa convidada com sucesso para o evento.';- 1 reply
-
- google-calendar
-
(and 2 more)
Tagged with:
-
Olá pessoa estou criando um sistema de agendamento porém agora quero fazer a implementação do Google calendar porém meu sistema não usa o composer teria alguma forma de usar a api sem precisar do composer
-
O seguinte script não retorna o valor de PRICE function getPreco() { var url = "https://api2.binance.com/api/v3/ticker/price?symbol=ADABNB"; var response = UrlFetchApp.fetch(url, {'muteHttpExceptions': true}); var json = response.getContentText(); var data = JSON.parse(json); //Logger.log(url); //Logger.log(response); //Logger.log(json); Logger.log(data); return data.price } Ao executar em script.google 17:49:16 Notificação Execução iniciada 17:49:14 Informação {price=0.00433800, symbol=ADABNB} 17:49:17 Notificação Execução concluída Usando o return data.price o resultado não deveria ser 0.00433800 ?
-
Olá estou precisando de uma ajuda, estou programando um script em python onde ele possa ler um arquivo.txt de um google drive e pega infomaçôes de lar.. mas vim que só tem tutoriais em ingles que não são tão explicativos..
-
EUA acusam Google por manter monopólio ilegal em buscas online Você pode usar o Bing ...
-
Big techs abusam de poder e devem ser divididas, diz relatório da Câmara dos EUA
Motta posted a topic in Geral
Big techs abusam de poder e devem ser divididas, diz relatório da Câmara dos EUA-
- antagonista
- apple
-
(and 3 more)
Tagged with:
-
olá colegas. depois de tanto quebrar a cabeça com o RECAPTCHA do google, v3. não estou conseguindo resgatar o ID do INPUT hidden que guarda o TOKEN!!!! Segue código HTML <!DOCTYPE html> <html lang="pt_BR"> <head> <meta charset="utf-8"> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <meta content="ie=edge" http-equiv="X-UA-Compatible"> <title>Google Recaptcha - v3</title> <!-- STYLES CSS --> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/inputmask@3.3.11/css/inputmask.min.css"> <!-- STYLES CSS --> <!-- SCRIPTS JS --> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery/dist/jquery.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-form@4.2.2/dist/jquery.form.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/jquery.validate.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/localization/messages_pt_BR.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/additional-methods.min.js"></script> <!-- SCRIPTS JS --> <!-- SCRIPTS RECAPTCHA - SITE KEY --> <script src="https://www.google.com/recaptcha/api.js?render=6LesQewUAAAAAIWQKRKk19yob6G8hx3LEoYXybIC"></script> <!-- SCRIPTS RECAPTCHA - SITE KEY --> <style type="text/css"> *:focus { outline: none !important; } html, body { height: 100%; width: 100%; } body { color: darkgrey; margin: 60px 0px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* google captcha - hidden na tela */ .grecaptcha-badge { display: none !important; } .valid-class { color: #006400; padding-left: 12px; padding-top: 3px; font-size: 15px; display: block; } .error-class { color: #e33d00; padding-left: 12px; padding-top: 3px; font-size: 15px; display: block; } .loading { position: fixed; left: 0px; top: 0px; margin: 0px; width: 100%; height: 100%; display: block; z-index: 999999; opacity: 0.92; -moz-opacity: 0.92; filter: alpha(opacity=98); background-color: #00224b; background-image: url("img/loading.gif"); background-repeat: no-repeat; background-position: 50% 50%; text-align: center; overflow: hidden; font-weight: bold; font-size: 25px; color: white; padding-top: 25%; } </style> </head> <body> <!-- code | formulario --> <section class="container-fluid"> <h1 class="text-center">RECAPTCHA</h1> <h4 class="text-center">GOOGLE v3</h4> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12"> <form id="frm_form_contato" method="post" action="inc/google-form.asp"> <div class="form-group"> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_nome">Nome</label> <input type="text" id="campo_nome" name="campo_nome" class="form-control" autocomplete="name" placeholder="Digite seu nome"> </div> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_email">Email</label> <input type="text" id="campo_email" name="campo_email" class="form-control" autocomplete="email" placeholder="Digite seu e-mail"> </div> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_mensagem">Mensagem</label> <textarea type="text" id="campo_mensagem" name="campo_mensagem" class="form-control" placeholder="Descreva sua mensagem"></textarea> </div> <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 mt-4"> <div id="contato_retorno"></div> <button id="btn-form" type="submit" class="btn btn-block btn-md btn-success">ENVIAR</button> </div> </div> <input type="hidden" id="token"> </form> </div> <div id="contato_carregando"></div> </section> <!-- code | formulario --> <!-- GOOGLE reCAPTCHA --> <script type="text/javascript"> "use strict"; //formulario de validacao $("#frm_form_contato").validate({ errorClass: "error-class", validClass: "valid-class", onkeyup: function (element) { this.element(element); }, onfocusout: function (element) { this.element(element); }, rules: { campo_nome: { required: true, minlength: 5, maxlength: 50 }, campo_email: { required: true, minlength: 5, email: true }, campo_mensagem: { required: true, minlength: 5, maxlength: 5000 } }, submitHandler: function (form) { grecaptcha.ready(function () { grecaptcha.execute('6LesQewUAAAAAIWQKRKk19yob6G8hx3LEoYXybIC', { action: 'homepage' }).then(function (token) { $("input#token").attr({ "value": "" + token + "" }); }); }); // A) resgatar variaveis (uma por uma) var form_url = $(this).attr("action"); var form_method = $(this).attr("method"); var form_token = $(this).find('input[name="token"]').val(); var form_nome = $(this).find('input[name="campo_nome"]').val(); var form_email = $(this).find('input[name="campo_email"]').val(); var form_telefone = $(this).find('input[name="campo_telefone"]').val(); var form_mensagem = $(this).find('input[name="campo_mensagem"]').val(); // B) resgatar variaveis (tudo de uma vez) // var form_data = $("#frm_form_contato").serializeArray(); var form_data = { 'campo_nome': $("#campo_nome").val(), 'campo_email': $("#campo_email").val(), 'campo_mensagem': $("#campo_mensagem").val(), 'campo_token': $("#token").val(), }; // ENVIAR FORM com POST // $("form").submit(function (e) { // e.preventDefault(); // var $form = $(this); // $.post($form.attr("action"), $form.serialize()).then(function () {}); // }); //ENVIAR FORM com AJAX $.ajax({ url: $("#frm_form_contato").attr("action"), type: $("#frm_form_contato").attr("method"), data: JSON.stringify(form_data), dataType: 'json', contentType: 'application/json; utf-8', //loading antes do sucesso e do envio beforeSend: function () { $("#btn-form").prop("disabled", false).text('Enviando ...').fadeIn(); $("#contato_carregando").html("<div class='loading'></div>").fadeIn(500); }, //se houver sucesso success: function (response) { setTimeout(function () { $("#contato_carregando").fadeOut(250); }, 3950); setTimeout(function () { $("#contato_retorno").html("<div class='valida_a_certo'>" + response + "</div>").fadeIn(500); }, 4000); setTimeout(function () { $("#contato_retorno").fadeOut(500); $("#btn-form").prop("disabled", false).text('Enviado'); $(form)[0].reset(); }, 10000); }, //se houver sucesso, finaliza complete: function (response) { $('body').fadeTo(4000, '1'); }, //se houver erro error: function (response) { setTimeout(function () { $("#contato_retorno").html("<div class='valida_a_erro'>" + response + "</div>").fadeIn(500); }, 4000); setTimeout(function () { $("#contato_retorno").fadeOut(500); $(form)[0].reset(); }, 10000); }, }); return false; } }); </script> <!-- SCRIPTS RODAPE --> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/js/bootstrap.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/inputmask@3.3.11/dist/jquery.inputmask.bundle.js"></script> <!-- SCRIPTS RODAPE --> </body> </html> BACKEND - ASP não estou conseguindo repassar o TOKEN para cá, já tentei de várias formas... mas não consigo nem com REQUEST.QUERYSTRING, REQUEST e nem REQUEST.FORM. <% Response.LCID = 1033 'USA LCID IF Request.ServerVariables("SERVER_NAME") <> Request.ServerVariables("SERVER_NAME") THEN Response.Write "ACESSO RESTRITO!" ELSE G_TOKEN = Request.Form("campo_token") 'google token G_KEY_URL = "https://www.google.com/recaptcha/api/siteverify?secret=" 'google url G_KEY_SITE = "" 'google chave do site G_KEY_SECRET = "" 'google chave secreta IF Request.ServerVariables("REQUEST_METHOD") = "POST" THEN SET objXML = Server.CreateObject("MSXML2.ServerXMLHTTP") objXML.Open "GET", ""& G_KEY_URL & G_KEY_SECRET &"&response=" & G_TOKEN & "", false objXML.Send IF InStr(objXML.ResponseText, "TRUE") THEN campo_nome = Request.Form("campo_nome") campo_email = Request.Form("campo_email") campo_mensagem = Replace(Request.Form("campo_mensagem"), Chr(13), "<br>") cdoSERVER = "mail.teste.com.br" cdoORIGEM = "teste@teste.com.br" cdoPASS = "senha" cdoPORT = 587 cdoTIMEOUT = 120 cdoUSING = 2 cdoAUT = 1 cdoSSL = 0 cdoDE = campo_nome &" <"& campo_email &">" cdoPARA = "teste@teste.com.br" cdoASSUNTO = "teste - contato" cdoTEXT = "Envio de mensagem usando CDOSYS" SET objCDOSYSmail = Server.CreateObject("cdo.message") SET objCDOSYScon = Server.CreateObject("cdo.configuration") objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = cdoPORT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoUSING objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoAUT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = cdoTIMEOUT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = cdoSSL objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = cdoSERVER objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = cdoORIGEM objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = cdoPASS objCDOSYScon.Fields.Update SET objCDOSYSmail.Configuration = objCDOSYScon objCDOSYSmail.From = cdoORIGEM objCDOSYSmail.To = cdoPARA objCDOSYSmail.Subject = cdoASSUNTO objCDOSYSmail.TextBody = cdoTEXT ON ERROR RESUME NEXT IF objCDOSYSmail.SEND = "" THEN Response.Write "Mensagem enviada com sucesso!" ELSE IF NOT ERR.NUMBER = "0" THEN Response.Write "Não foi possível enviar a mensagem!" Response.Write "OCORREU UM ERRO: " & Err.Number & " | " & Err.Description Err.Clear() END IF END IF ON ERROR GOTO 0 SET objCDOSYSmail = Nothing SET objCDOSYScon = Nothing ELSE Response.Write "recaptcha errado!" END IF SET objXML = Nothing END IF END IF %> Quem tiver tempo, e quiser dar uma olhada, só falta isso para finalizar o código, PASSAR o bendito parametro que não consigo do input para o ASP. No demais, agradeço. Até....
-
Bom dia, Estou tentando incorporar comentários do google meu negocio no meu site, encotrei um código que quando coloco o id da empresa que quero puxar ele não retorna nada, mas com outro id´s(place_id ) ele funciona: <!DOCTYPE html> <html> <head> <title>Page Title</title> </head> <body> <div id="wpac-google-review"></div> </body> <script type="text/javascript"> wpac_init = window.wpac_init || []; wpac_init.push({widget: 'GoogleReview', id: 25199, place_id: 'ChIJe76wHt6WpgARKwwUjmwjK78', view_mode: 'list'}); (function() { if ('WIDGETPACK_LOADED' in window) return; WIDGETPACK_LOADED = true; var mc = document.createElement('script'); mc.type = 'text/javascript'; mc.async = true; mc.src = 'https://embed.widgetpack.com/widget.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(mc, s.nextSibling); })(); </script> </html> Alguém sabe oque pode está errado ou uma outra forma de incorporar os comentários?
-
Olá! Vocês conhecem algum curso online de SEO que seja realizado por uma Universidade para me indicarem? Pode ser brasileira ou estrangeira. Estou precisando de mais opções para contribuir em meu trabalho. Desde já agradeço, Gabriela.
- 4 replies
-
- seo
- technology
-
(and 3 more)
Tagged with:
-
Pessoal, boa noite Após uma longa pausa, estou retornando ao desenvolvimento Web, antes lembro que tinha umas ferramentas do Google que auxiliavam na escolha de palavras chave, dava pra ver palavras similares e tendências de palavras. Não encontrei, toda vez que pesquiso Google Keywords ou Google Trends sempre dá como resultado o Adwords que é pago. Qual ferramenta vocês utilizam para realizar esta pesquisa?
- 16 replies
-
- palavras-chave
- keywords
-
(and 1 more)
Tagged with:
-
Como melhorar pontuação no PageSpeed Insights - Google
Leandro Toricelli Rosa posted a topic in HTML e CSS
Estou tentando melhorar a pontuação deste site no PageSpeed Insights - Google https://planoamildentalvendas.com.br/ No MOBILE pois no DESKTOP já está ótimo. Dicas e sugestões? Principalmente neste link https://planoamildentalvendas.com.br/plano-amil-dental-individual-familiar/-
- amil dental
- plano amil dental
-
(and 4 more)
Tagged with:
-
Empresa disponibiliza algoritmo do Google em português gratuitamente
-
- olhardigital
-
(and 4 more)
Tagged with:
-
É possível rankear um site gratuito do WordPress?
nino_bk posted a question in Perguntas e respostas rápidas
Olá, não sei bem como funciona o fórum mas me cadastrei para tirar essa dúvida. Há um tempo criei um site gratuito no WordPress e, tentando aprender um pouco de SEO ouvi dizer que não se deve usar mais de um H1 na mesma página e quando coloco o site em ferramentas de análise de SEO, todos eles dizem que o site não deveria ter mais de um H1, queria saber. É possível rankear o site no Google mesmo assim? E também queria saber.É possível rankear sites gratuitos do WordPress? -
Opa, beleza? Tenho uma dúvida, a algum tempo tento e não consegui. Tenho no meu site uma agenda (full calendar), e gostaria de que meus clientes que acessam, possam sincronizar sua agenda do google com a do meu site. Só consegui de uma forma, deixando minha agenda google pública e informando o id no script. Mas imagino que tenha uma forma, como o sign-in com google, onde há permissões, etc. Será que alguém conhece algum material/algo que possa me ajudar? Abs, Agradeço!
-
- javascript
-
(and 1 more)
Tagged with: