Giter Club home page Giter Club logo

robbie's People

Contributors

iver1988 avatar tacoberu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

robbie's Issues

Text to speech

  • Async (stops reading when after new response)
  • Mute function
  • Do not disturb in selected time settings
  • Language depends on user profile (primary), OS settings (secondary) or geolocation settings
  • Voice depends on Language (primary), Robie gender (secondary) or user selection.
  • Change Robbie gender when no gender voices available.
  • Change Robbie voice language when no voices for actual language are installed.

Default OS settings

  • Linux
  • MacOS
  • Windows

Inbuild solution as second option

  • Linux
  • MacOS
  • Windows

Sound module

  • Module classes to robbie/src/programy/utils/modules
  • Helper classes (shared methods for multiple modules) to robbie/src/programy/utils/helpers
  • Module name as "sound.py" or something
  • Public getters and setters for access from main application (bool is_muted)
  • Public "Mute" method for Mute/Unmute with possibility to set parameter like Mute(true)
  • Public "Say" method for voice output (Apple's "say" command only actually when running on mac)
  • Public "PlaySound" method for playing sound effect from robbie/sounds
  • In consoly.py run all sounds and output all voices using this method
  • Add startup sound support

Support for another chat bots

  • Add bot integration command
  • Remove bot integration command
  • Asking another bots
  • Getting response from another bots

Python GUI for desktop

Multiplatform desktop GUI application with input, voice recognization support and nice design.

Pannous & Pandora

  • Remove Pannous service
  • Remove Pandora service
  • Remove mentions from categories too

Wikipedia

  • Ask for term meaning
  • Only first paragraph is returned
  • "Tell me more" category
  • "Source: Wikipedia" after definition

Ask for term meaning

Robbie - "What you want talking about? Nikola Tesla, Organizations...?"

User - "About organizations"

Robbie - "What you want talking about? Tesla Inc., Tesla (Czechoslovak company) or Tesla Science Center at Wardenclyffe?"

User - "About Tesla Inc."

Robbie - "Tesla, Inc. (formerly named Tesla Motors) is an American automaker and energy storage company co-founded by Elon Musk, Martin Eberhard, Marc Tarpenning, JB Straubel and Ian Wright, and is based in Palo Alto, California. The company specializes in electric cars, their powertrain components, and also produces battery charging equipment."

User profiles

User profiles with users switching ("Hello, here is Thomas. Can you do some notes for me?", "Hi Thomas, what do you want to note?")

Sound effect

  • Sound OK after successful command or understanding of sentence
  • Sound Failure after error, problem or not understanding of sentence (default text)

Disable pydub console output

From e-mail

Hello jiaaro,
I like your pydub sound library for Python. It works like a charm. But I have one issue. I have console application and I want let it clean as possible. Only user inputs and application outputs. But everytime when sound plays, something like this shown:
avplay version 11.4, Copyright (c) 2003-2014 the Libav developers
built on Feb 11 2017 01:10:02 with Apple LLVM version 8.0.0 (clang-800.0.42.1)
Input #0, wav, from '/var/folders/fx/y_8sjl8d48g51x2c9g_55yyw0000gn/T/tmpvwr2374p.wav':
Duration: 00:00:00.11, bitrate: 1539 kb/s
Stream #0.0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
1486777806.72 A-V: 0.000 s:0.0 aq= 0KB vq= 0KB sq= 0B f=0/0
Is there something for playing of sound in silent mode. Another play method or parameter? Thank you for answer.
Tomáš Tříska

I would suggest creating a copy of the play function in your own codebase and setting stdout to sys.devnull (or adding a flag to reduce the verbosity of ffplay)

Answers.com service

  • Best answer is returned
  • Only first paragraph is returned
  • "Tell me more" category
  • "Another definition" category
  • "Source: Answers.com" after definition

Queues with threads

Queues

  • "speaking" queue is using 2-dimensional array with texts and priority. Priorities are Disabled, Low, Normal and High. Low are used for not much important info like Robbies random conversations, normal for standard results and high for very important informations like "I have no power source and battery is on 10%" for example. Disabled is used for special cases, when user can tell "Disable battery notifications" for example. First item in queue is actual output which stays until text is written and spoken. After that, first item is removed and first one with highest priority is processed using "speak" method in "speaking" thread. Exclude disabled, which are not removed completely, but waiting to potential change back to Low, Normal or High. Priority can be changed using modules except first one in queue which is running actually.

Threads

  • "speaking" thread is special thread for speech of text. It takes texts from "speaking" queue, displays them, use text to speech on them and take another one. When no items in queue, it waits.
  • "listening" thread is special thread for listening of inputs from user. When command for stopping of speak is used, text with stoping of talking is added to "speaking" queue and actual text to speed method in "speaking" thread is stopped.
  • Other threads have own names and are used for modules purposes.

Intel Edison support

  • USB
  • SD card reader
  • Restart
  • Autoload
  • Intel Edison programming in Python 3 support
  • Arduino modules support

Timer

  • Set timer function
  • OS support primary (for example MacOS calendar)
  • Inbuild timer method with alert sound when no native support

Prompt back to bot settings

  • Fix Unicode in YAML
    or
  • Change default "o" in "R🤖bbie ➜" to "🤖" in code
    and
  • Change ">>>" to "➜" in code

Sensors and devices using protocols support

Protocols

  • TCP/IP
  • COM
  • JSON
  • GET
  • POST
  • Bluetooth
  • LAN
  • IR
  • Remote file

Features

  • Add sensor/device
  • Remove sensor/device
  • Turn on sensor/device
  • Turn of sensor/device
  • Send data to sensor/device using protocol
  • Get data from sensor/device using protocol

Time

  • "What time is it" category after #20

Voice recognization

  • Robbie waits for his name keyword
  • He listens and write text to input after few seconds of silence and message is send

Web server

  • Lauching and terminating of web console using console.py as new thread instead of starting sh file

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.