Função cumprimentar (bom dia, boa tarde, boa noite)

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por Itamar M. Lins Jr. »

Ola!
Alguém tem uma ai ?

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por alxsts »

Olá!

Segue:

Código: Selecionar todos

#include "set.ch"

Function Main()

    cls

    ? Greetings()

    Return Nil
//------------------------------------------------------------------------------

Function Greetings()

    Local cString := "", nHour, cOldTime 
 
    cOldTime := Set( _SET_TIMEFORMAT, "hh:mm:ss" )

    nHour := Val( Left( Time(), 2 ) )
    
    Do Case
       Case nHour < 12
          cString := "Bom dia"
       Case nHour < 18
          cString := "Boa tarde"
       OtherWise
          cString := "Boa noite"
    End Case
 
    Set( _SET_TIMEFORMAT, cOldTime )

    Return cString
 //------------------------------------------------------------------------------
[]´s
Alexandre Santos (AlxSts)
Softwhouse
Usuário Nível 3
Usuário Nível 3
Mensagens: 324
Registrado em: 07 Dez 2011 18:44
Localização: Porto Alegre/RS

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por Softwhouse »

Imaginei que o Itamar quisesse que o programa falasse ...
Fernando
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por alxsts »

Olá!

Dá para fazer. Está lançado o desafio!
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por Itamar M. Lins Jr. »

Ola!
Há muitas "eras" atrás... Já tinha visto algumas, mas sempre tem uma mais simples. Essa tá show!
To estudando, CGI com Apache/PHP/Harbour, acho que não falta muito da parte do Harbour para ser usando em pé de igualdade com PHP, e ainda podemos compilar os fontes. Ai existe "os poréns" conforme a letra do samba ai eu volto para o Harbour rsrsrs é da Portela mas a gente associa da um "class inherit" para o Harbour rsrsrs e não usamos muito o PHP, Só de leitura do APACHE, configuração etc... coloca ai tempo...
Vejo fontes em PHP na internet e acabo fazendo no Harbour, funciona e eu entendo o que estou fazendo, e ainda tem o "mala" do APACHE para aprender, aprender HTML, CSS(só firulas) paginas bonitinhas e mais tempo, para aprender. A vantagem é que são coisas usadas para tudo praticamente!
Dizem que HTML é uma linguagem de marcação, mas isso foi no inicio, com HTML5 é programação "NORMAL" DIRETO no HTML. Para comprovarem basta olhar os códigos de HTML5 por ai.

Código: Selecionar todos

  <input type="text" name="nome" maxlength="10" size="30" etc...>
Define na variável nome, tamanho, tipo, cor etc... se isso não é programação normal não sei mais o que é programar.
Sobre computadores e a IA(inteligencia Artificial) isso que está acontecendo com Win10, foi mais um motivo para ir deixando de usar o windows.
Fui instalar em um cliente 2 notebooks novos, um veio com 2MB, pense numa maquina lenta, o "cortana" enchendo o saco, um software de propaganda das "casas bahia" afff o note ficou uma carroça, nem removendo alguns programas ficou bom, pq o tempo todo a tal "telemetria" comendo recursos da "máquina" e outras tantas doidices... tá todo mundo mundo querendo nossa atenção para vender algo desnecessário no momento.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por JoséQuintas »

alxsts escreveu:Dá para fazer. Está lançado o desafio!
Não entendi.
Tá falando disto?
test.zip
(442.32 KiB) Baixado 162 vezes

hbmk2 test josequintas.hbc
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por JoséQuintas »

Isso é coisa velha.... rs
5 anos atrás.

https://pctoledo.org/forum/viewto ... ext#p84691

Passou por aqui num post, apenas deixei anotado até que deu pra usar, e no W10 liberou geral.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por alxsts »

Olá!
JoséQuintas escreveu:Isso é coisa velha.... rs
Não entendi.
Tá falando disto?
Não tinha visto aquele tópico, agora que vi. Boa evolução em cinco anos. Eu tinha pensado em algo usando a API do Google mas não sei se tem para Harbour e nem se é gratuita. Ela é capaz disto e do inverso: converter fala em arquivos de texto (reconhecimento de voz). De novo, quanta evolução!

Quanto ao anexo, como compilar isto sem a tua lib?
Capturar.JPG
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por JoséQuintas »

https://github.com/JoseQuintas/JoseQuin ... aytext.prg

Uso a rotina executada em mulithread, por isso a janela invisível da GTWVG.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por alxsts »

Olá!

Agora compilou. Funcionou até com UTF8 e palavras acentuadas. Valeu.

Código: Selecionar todos

#include "hbgtinfo.ch"

Function Main()

    REQUEST HB_LANG_PT          
    REQUEST HB_CODEPAGE_UTF8
 
    hb_cdpSelect( "UTF8" )
    hb_gtInfo( HB_GTI_COMPATBUFFER, .f. ) // acentos
 
    cls

    AppIsPlayText(.T.)
    DO CASE
       CASE Time() < "12:00"; PlayText( "Bom dia e vá te ferrar" )
       CASE Time() < "18:00"; PlayText( "Boa tarde" )
       OTHERWISE            ; PlayText( "Boa noite" )
    ENDCASE
 
    Inkey(10)

    Return Nil
//------------------------------------------------------------------------------
/*
ZE_PLAYTEXT
José Quintas
*/

//#include "hbgtinfo.ch"

FUNCTION AppIsPlayText( xValue )

   STATIC AppIsPlayText := .F.

   IF xValue != NIL
      AppIsPlayText := xValue
   ENDIF

   RETURN AppIsPlayText

FUNCTION PlayText( cText )

   LOCAL oTalk

   IF ! AppIsPlayText() .OR. Empty( cText )
      RETURN NIL
   ENDIF

   hb_gtReload( hb_gtInfo( HB_GTI_VERSION ) )
   oTalk := win_OleCreateObject( "SAPI.SPVoice" )
   oTalk:Speak( cText ) // , SVSFDefault
   oTalk:WaitUntilDone( 1 )

   RETURN NIL
//------------------------------------------------------------------------------
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
clodoaldomonteiro
Usuário Nível 4
Usuário Nível 4
Mensagens: 821
Registrado em: 30 Dez 2006 13:17
Localização: Teresina-PI
Contato:

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por clodoaldomonteiro »

Quintas,

Esse Driver "SAPI.SPVoice" tem que estar instalado no PC do Cliente né?
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Avatar do usuário
clodoaldomonteiro
Usuário Nível 4
Usuário Nível 4
Mensagens: 821
Registrado em: 30 Dez 2006 13:17
Localização: Teresina-PI
Contato:

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por clodoaldomonteiro »

Usava a WinMM, no clipper puro.

Código: Selecionar todos

   **********************************
FUNCTION Play_Som(pszSound,fuSound)
   **********************************
   STATIC hLib
   STATIC nProcAddr
   IF nProcAddr==NIL
      hLib:=Loadlibrary("WINMM")
      nProcAddr:=GetProcAddress(hLib,"sndPlaySoundA")
   ENDIF
   RETURN CallDLL (hLib,nProcAddr,,8,10,pszSound,-3,fuSound)
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por alxsts »

Olá!

Não precisei instalar nada aqui. Só inclui o hbwin.hbc na compilação.
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por asimoes »

Alguém sabe como troca a voz ? do objeto SAPI.SPVoice
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Função cumprimentar (bom dia, boa tarde, boa noite)

Mensagem por alxsts »

Olá!

Ainda não consegui estudar mas deve ter aqui: SpVoice Interface (SAPI 5.3).

Página acima traduzida para o Português.
[]´s
Alexandre Santos (AlxSts)
Responder