Skip to content

⚪ A RiveScript interpreter for PHP. RiveScript is a scripting language for chatbots.

License

Notifications You must be signed in to change notification settings

Junker/rivescript-php

 
 

Repository files navigation

RiveScript-PHP

Source License

This is a RiveScript interpreter library for PHP. See the below Working Draft section for more information.

The package follows the FIG standards PSR-1, PSR-2, and PSR-4 to ensure a high level of interoperability between shared PHP code.

Screenshot

Quick Installation

Simply install the package through Composer.

composer require junker/rivescript

Integration

The RiveScript PHP interpreter is framework agnostic. As such, the interpreter can be used as is with native PHP, or with your favorite framework.


Working Draft

The RiveScript Working Draft (WD) is a document that defines the standards for how RiveScript should work, from an implementation-agnostic point of view. The Working Draft should be followed when contributing to the RiveScript-PHP interpreter. If any of the current implementations don't do what the Working Draft says they should, this is considered to be a bug and you can file a bug report or send a pull request.

A copy of the working draft can be found within the resources directory of this repository. You may also find the latest version on the RiveScript website at http://www.rivescript.com/wd/RiveScript.

Roadmap

Interpreter

  • Format
  • Whitespace
  • Standard Global Variables
  • Sort +Triggers
  • Sort %Previous
  • Sort Replies
  • Syntax Checking

Tag Priority

  • Within BEGIN/Request
  • Within +Trigger
  • Within Replies

Commands

  • % Previous
  • ^ Continue
  • @ Redirect
  • * Condition
  • // Comment

! Definition

  • version
  • global
  • var
  • array
  • sub
  • person

> Label

  • begin
  • topic
  • object

+ Trigger

  • Atomic
  • Wildcard
  • Alternation
  • Optional
  • Arrays
  • Priority

- Response

  • Atomic
  • Random
  • Weighted Random

Tags

  • <star>
  • <star1> - <starN>
  • <botstar>
  • <botstar1> - <botstarN>
  • <input>
  • <input1> - <input9>
  • <reply>
  • <reply1> - <reply9
  • <id>
  • <bot>
  • <env>
  • <get>
  • <set>
  • <add>
  • <sub>
  • <mult>
  • <div>
  • {topic=...}
  • {weight=...}
  • {@...}
  • <@>
  • {random}...{/random}
  • {person}...{/person}
  • <person>
  • {formal}...{/formal}
  • <formal>
  • {sentence}...{/sentence}
  • <sentence>
  • {uppercase}...{/uppercase}
  • <uppercase>
  • {lowercase}...{/lowercase}
  • <lowercase>
  • {ok}
  • \s
  • \n
  • \/
  • \#

About

⚪ A RiveScript interpreter for PHP. RiveScript is a scripting language for chatbots.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • PHP 99.2%
  • JavaScript 0.8%