- hanke: Added “Go back” as an alias for “Thanks, James”. (Better recognition)
- hanke: James now starts in the away state. So an “Are you there, James?” or “James?” is needed to get him to the attentive state where he answers questions etc.
- hanke: Added preference .james file. Currently, it supports one option,
voice
, e.g. the file could containvoice: "com.acapelagroup.AGix.voice.Peter22k_HQ"
. The preferences are handled in this order: - Options in file
.james
- Options in file
~/.james
- Default options
- hanke: Removed Gemspec platform specification.
- hanke: In-state transitions defined using
hear 'Some Phrase' => ->(){ "I will be spoken on hearing 'Some Phrase'" }
will speak the returned text out loud. - hanke: Audio output waits for a sentence to be finished until the next is spoken.
- hanke: Renamed
James.use_dialog
→James.dialog
, since it is clear what it does.
- hanke: Rewrite of internals. Complex dialogs or injecting your own core (starting) dialog now possible.
- hanke: States now accessible from dialog through instance method. E.g.
state.welcome
exists if astate :welcome do ...
has been defined.
- hanke:
james
command line includes options-s
(silent input/output),-si
(silent input) and-so
(silent output).-s
is equal to-si -so
.
- hanke: API breakage,
James.dialog
→James.dialog
. - hanke: Command line
james
now takes file names (or patterns, likejames time_dialog.rb
orjames {time,twitter}*.rb
) - hanke:
James.listen
can only be called once. So if you useruby
to run a dialog, it needs to be called once at the end of the script. - hanke: Added
James.use
. It takes any number ofJames::Dialog
instances to use when listening.
- hanke:
hear 'Stay in same state' => ->(){ "This block will now be instance eval'd in the context of the Dialog" }
- hanke: Bugfix on missing state handling.
- hanke: Reordered dialog options such that the most important ones, currently, are on top.
- hanke:
hear
method of state now also takes as target a->(){}
lambda to execute without going to another state like'phrase' => :another_state
. It stays in the same state.
- hanke: Dialogs implemented.
- hanke: Dialogs are hooked up to a central control dialog.
- hanke: James steps out of the cave. Utters an “Ugh”. Then, pees on a berry bush.