---
# System prepended metadata

title: Untitled

---

## Definitions


{
  "columnNames": [
    "name",    **// This is the term's official title**
    "lookup",  **// This is how docs will match if the term exists in the article**
    "description" **// This is the hover text that will appear**
  ],
  "data": [
    {
      "name": "Admin Console",
      "lookup": ["admin console","admin console's"],
      "description": "A portal, at [console.rake.ai](https://console.rake.ai), which allows system users to configure organizations, projects, workspaces, and other aspects of the Rake System."
    },
    {
      "name": "Channel",
      "lookup": ["channel","channels","channel's"],
      "description": "A single place in the Rake User App for a team to share messages, tools, and files.

A Channel:
- Is created within a Workspace.
- Is a child of a single Session, which does not expire as long as the Channel is active.
- Can be public or private.  A public Channel is available to all members of a Workspace.  A private Channel is available only by invitation."
    },
    {
      "name": "Conversation Flow",
      "lookup": ["conversation flow","conversation flows","conversation flow's"],
      "description": "A means of designated which Module and which function in a module have current control over messages in a session.
- By default, a new Session follows the Module order for a Workspace to select the Conversation Flow.
- That Module retains control of the Session until (1) it calls [???]; or (2) specically transfers to another Conversation Flow.
- [[Does a Module register Conversation Flows??]].
- In code, a Conversaton Flow is referenced as follows:  {module}.{function}.
- There are system Conversation Flows, including ???.
- When sending a message to Rake using Rake Direct, you can, optionally, specify the Conversation Flow to handle the message."
    },
    {
      "name": "Entity",
      "lookup": ["entity","entities","entity's"],
      "description": "A global term for the source or destination for a Message, such as a User, System User, or Module (examples of Entity Types).
- All messages are between entities.
- An Entity can have multiple Entity Types.
- Entities are unique by Phone Number or Email within an Organization.
- Entities can belong to multiple Organizations.
- Two Entities will merge automatically if [[?????]].
- Each Workspace has an associated Entity (the Workspace Entity).  If a message is sent to or from a Workspace without specifying the From Entity or the To Entity, then the Workspaces Entity is used."
    },
    {
      "name": "Entity Type",
      "lookup": ["entity type","entity types","entity type's"],
      "description": "An enumerator for an entity classification.
- 0: User.  This is the default Entity Type.  Typically, this represents an Entity connecting to Rake via a Platform (other than Rake User App). For instance, a person sending a message via Twilio SMS to Rake would be a User.
- 1: Workspace.  Each Workspace has a designated Entity. If a message is sent to from a Workspace without a From Entity, then it is sent from the Workspace Entity record.
- 2: inContact System User.  This is a special case user related to the NICE inContact platform.
- 3: inContact Agent.  This is a special case user related to the NICE inContact platform.
- 4: Rake System User. Any Entity using Rake user interfaces or APIs is doing so as a Rake System User, with Permissions based on Role(s).
- 9: Channel.  Each Channel has a designated Entity. If a message is sent to a Channel, then it is sent to the Channel Entity record. 
    },
    {
      "name": "Event",
      "lookup": ["event","events","event's"],
      "description": "A singular system level action or circumstance that is monitored by the Event monitoring service.
- Events can have triggers defined to fire other actions, notifications, or messages.
- Events can be pre-defined System Events or developers can create custom Events for use with their Modules.
- Events are Messages with Message Type of Event."
    },
    {
      "name": "Event Trigger",
      "lookup": ["event trigger","event triggers","event trigger's"],
      "description": "Procedures that are fired based on criteria set in the Trigger based on one or more Events.
- Event Triggers are always fired by an Event.
- Every Event in Rake is examined by the Event Trigger service.
- Event Triggers may fire based on a series of Events.  For example, an Event Trigger may fire on the nth occurence of an Event for a Workspace within 24 hours.
- Event Triggers can perform any functions available on Rake (e.g., send a Message), call a procedure in a Module, change a Converation Flow, or call a webhook."
    },
    {
      "name": "External Session",
      "lookup": ["external session","external sessions","external session's"],
      "description": "A session where at least one entity is not communicating via the Rake User App Platform Id."
    },
    {
      "name": "Internal Session",
      "lookup": ["internal session","internal sessions","internal session's"],
      "description": "A session where all entities communicate via the Rake User App Platform Id."
    },
    {
      "name": "Knowledge Base",
      "lookup": ["knowledge base","knowledge base's"],
      "description": "A collection of curated articles specific to a defined workspace that may be searched or shared with public domain users and visitors."
    },
    {
      "name": "Message",
      "lookup": ["message","messages","message's"],
      "description": "Information that gets sent from one entity on the system to another.
- Each messages has a Message Type, such as Text or Event.
- All Messages are sent in Sessions.
- Messages have one Initiating Entity and one Secondary (receiving) Entity????????"
    },
    {
      "name": "Message Type",
      "lookup": ["message type","message types","message type's"],
      "description": "Available Message Types are Text, Event, and ????"
    },
    {
      "name": "Rake Mobile App",
      "lookup": ["rake mobile app","rake mobile app's"],
      "description": "A client facing native mobile application available for iOS or Android devices that allows Rake system users to manage, interact, send and respond to messages from platform users or other system users."
    },
    {
      "name": "Module",
      "lookup": ["module","modules","module's"],
      "description": "Program unit that interacts with messages for routing, bot functionality, or to trigger actions. These can be system modules or custom modules."
    },
    {
      "name": "Organization",
      "lookup": ["organization","organizations","organization's"],
      "description": "Rake structural level that is directly below system and contains one or more projects.
- A Workspace which is created by signing up at rake.ai is a member of the Rake Project which is a member of the Rake Organization.
- A company would create their own Organization in Rake if they wanted to have multiple Workspaces in one or more Projects.
- One reason for creating an Organization would be to have custom Modules handling routing flows or bot logic across multiple teams, locations, business units."
    },
    {
      "name": "Platform",
      "lookup": ["platform","platforms","platform's"],
      "description": "Cloud messaging service (e.g., Facebook Messenger) to which Rake connects. In other vendors, a Platform might be referred to as a 'channel'." 
    },
    {
      "name": "Project",
      "lookup": ["project","projects","project's"],
      "description": "Rake structural level that is directly below Organization and contains one or more Workspaces.
- A Workspace which is created by signing up at rake.ai is a member of the Rake Project which is a member of the Rake Organization.
- One reason for creating a Project would be to have custom Modules handling routing flows or bot logic across multiple teams, locations, business units."
    },
    {
      "name": "Rake Core",
      "lookup": ["rake core","rake core's"],
      "description": "The central message processing service of Rake.  All messages pass through the Rake core."
    },
    {
      "name": "Rake System",
      "lookup": ["rake system","rake system's"],
      "description": "Refers to the entire ecosystem of Rake."
    },
    {
      "name": "Role",
      "lookup": ["role","roles","role's"],
      "description": "Defines a list of system function permissions.  System Users are assigned system functions permissions by assigning one or more Roles for an Organization, Project, or Workspace."
    },
    {
      "name": "Session",
      "lookup": ["session","sessions","session's"],
      "description": "An active interaction between entities on the Rake system.  All messages are sent within a session.  A session follows a conversation flow as defined for a workspace."
    },
    {
      "name": "System Function",
      "lookup": ["system function","system functions","system function's"],
      "description": "An API route called on the Rake System.  Most system functions must be called by a System User with the appropriate permission(s) granted."
    },
    {
      "name": "System User",
      "lookup": ["system user","system users","system user's"],
      "description": "A designation for an entity which has permissions assigned within the Rake system, such as access to the Rake User App or APIs."
    },
    {
      "name": "Tasks",
      "lookup": ["task","tasks","task's"],
      "description": "A to-do or follow-up item that may be related to a session, and/or related to a specific workspace entity. The task may be assigned ownership to any system user or channel in the workspace it originated and has statuses of unassigned, assigned, working, complete. Notes and files may be attached to a task."
    },
    {
      "name": "Rake User App",
      "lookup": ["rake user app","rake user app's"],
      "description": "A client facing web application supported across all modern browsers that allows Rake system users to manage, interact, send and respond to messages from platform users or other system users."
    },
    {
      "name": "Widget",
      "lookup": ["widget","widgets","widget's"],
      "description": "The widget is the user facing application that enables Rake Live Chat conversations for website visitors."
    },
    {
      "name": "Workspace",
      "lookup": ["workspace","workspaces","workspace's"],
      "description": "An organizational designation which defines the flow for any session on the Rake system.  It is also the core level for how system users interact with the Rake User App."
    }
  ]
}
