Tekil Mesaj gösterimi
Alt 27 Ağustos 2021, 13:46   #1
SuLh
SuLh - ait Kullanıcı Resmi (Avatar)

Standart Sesli Asistan Uygulaması | mIRC Scripting ve Python

mIRC ve Python etkileşimi ile arka planda bir mikrofon dinleyicisi oluşturup mIRC de bunu manipüle ederek bir asistan oluşturmayı gösterdim.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Video da tamamlanmış kod:

Kod

alias pybaslat {
  pythonagit
  .timerb 1 3 bslt
}
alias bslt {
  sockudp -k python 127.0.0.1 2002 Selam 
  echo 4 -a Python bağlantısı başladı.
}
on *:udpread:python: {
  var %s | sockread -f %s | tokenize 32 %s
  if $1- == Bağlantı başarılı {
    echo 3 -a Python bağlantısı sağlandı. | return
  }
  if $1- == Program kapatıldı. {
    echo 4 -a Python programı kapatıldı.
    sockclose $sockname
    return
  }
  if $regex($1-,/kanal.+gir/i) {
    join $+($chr(35),$1)
  }
  if $1 == cmd {
    run cmd
  }
  echo -a $1-
}

alias t {
  if !$1 { return $chr(9) }
  else {
    return $str($chr(9),$1)
  }
}

alias pythonagit {
  write -c dinle.py
  write dinle.py import socket
  write dinle.py import speech_recognition as sr
  write dinle.py import sys, time
  write dinle.py ip = "127.0.0.1"
  write dinle.py port = 2002
  write dinle.py s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
  write dinle.py s.bind((ip,port))
  write dinle.py while True:
  write dinle.py $t $+ data = s.recvfrom(1024)
  write dinle.py $t $+ global adres
  write dinle.py $t $+ adres = data[1]
  write dinle.py $t $+ break
  write dinle.py mic = sr.Microphone()
  write dinle.py r = sr.Recognizer()
  write dinle.py def callback(recognizer, audio):
  write dinle.py $t $+ try:
  write dinle.py $t $+ $t $+ yazi = r.recognize_google(audio, language="tr-tr")
  write dinle.py $t $+ $t $+ if yazi.lower() == "kapat":
  write dinle.py $t(3) $+ back = "Program kapatildi."
  write dinle.py $t(3) $+ back = str.encode(back)
  write dinle.py $t(3) $+ s.sendto(back, adres)
  write dinle.py $t(3) $+ sys.exit()
  write dinle.py $t(2) $+ yazi = str.encode(yazi)
  write dinle.py $t(2) $+ s.sendto(yazi, adres)
  write dinle.py $t $+ except sr.WaitTimeoutError:
  write dinle.py $t(2) $+ yazi = "Zaman asimi"
  write dinle.py $t(2) $+ yazi = str.encode(yazi)
  write dinle.py $t(2) $+ s.sendto(yazi, adres)
  write dinle.py $t $+ except sr.UnknownValueError:
  write dinle.py $t(2) $+ yazi = "Algilayamadim"
  write dinle.py $t(2) $+ yazi = str.encode(yazi)
  write dinle.py $t(2) $+ s.sendto(yazi, adres)
  write dinle.py $t $+ except sr.RequestError:
  write dinle.py $t(2) $+ yazi = "Baglanti hatasi"
  write dinle.py $t(2) $+ yazi = str.encode(yazi)
  write dinle.py $t(2) $+ s.sendto(yazi, adres)
  write dinle.py r.listen_in_background(mic, callback)
  write dinle.py while True:
  write dinle.py $t $+ time.sleep(0.1)
  run -h python dinle.py
}