OpenDialog Docs
opendialog.aiStart BuildingTalk to an expert
  • GETTING STARTED
    • Introduction
    • Getting ready
    • Billing and plans
    • Quick Start AI Agents
      • Quick Start AI Agent
      • The "Start from Scratch" AI Agent
        • Chat Management Conversation
        • Welcome Conversation
        • Topic Conversation
        • Global No Match Conversation
        • Supporting LLM Actions
        • Semantic Classifier: Query Classifier
      • A Process Handling AI Agent
  • STEP BY STEP GUIDES
    • AI Agent Creation Overview
    • Add a new topic of discussion
    • Use knowledge sources via RAG
    • Adding a structured conversation
    • Add a 3rd party integration
    • Test and tweak your AI Agent
    • Publish your AI Agent
  • CORE CONCEPTS
    • OpenDialog Approach
      • Designing Conversational AI Agents
    • OpenDialog Platform
      • Scenarios
        • Conversations
        • Scenes
        • Turns and intents
      • Language Services
      • OpenDialog Account Management
        • Creating and managing users
        • Deleting OpenDialog account
        • Account Security
    • OpenDialog Conversation Engine
    • Contexts and attributes
      • Contexts
      • Attributes
      • Attribute Management
      • Conditions and operators
      • Composite Attributes
  • CREATE AI APPLICATIONS
    • Designing your application
      • Conversation Design
        • Conversational Patterns
          • Introduction to conversational patterns
          • Building robust assistants
            • Contextual help
            • Restart
            • End chat
            • Contextual and Global No Match
            • Contextual FAQ
          • Openings
            • Anatomy of an opening
            • Transactional openings
            • Additional information
          • Authentication
            • Components
            • Example dialog
            • Using in OpenDialog
          • Information collection
            • Components
            • Example dialog
            • Using in OpenDialog
            • Additional information
          • Recommendations
            • Components
            • Example dialog
            • Additional information
          • Extended telling
            • Components
            • Example dialog
            • Additional information
          • Repair
            • Types of repair
            • User request not understood
            • Example dialog
            • Additional information
          • Transfer
            • Components
            • Example dialog
            • Additional information
          • Closing
            • Components
            • Example dialog
            • Using in OpenDialog
            • Additional information
        • Best practices
          • Use Case
          • Subject Matter Expertise
          • Business Goals
          • User needs
            • Primary research
            • Secondary research
            • Outcome: user profile
          • Assistant personality
          • Sample dialogs
          • Conversation structure
          • API Integration Capabilities
          • NLU modeling
          • Testing strategy
          • The team
            • What does a conversation designer do
          • Select resources
      • Message Design
        • Message editor
        • Constructing Messages
        • Message Conditions
        • Messages best practices
        • Subsequent Messages - Virtual Intents
        • Using Attributes in Messages
        • Using Markdown in messages
        • Message Types
          • Text Message
          • Image Message
          • Button Message
          • Date Picker Message
          • Audio Message
          • Form Message
          • Full Page Message
          • Conversation Handover message
          • Autocomplete Message
          • Address Autocomplete Message
          • List Message
          • Rich Message
          • Location Message
          • E-Sign Message
          • File Upload Message
          • Meta Messages
            • Progress Bar Message
          • Attribute Message
      • Webchat Interface design
        • Webchat Interface Settings
        • Webchat Controls
      • Accessibility
      • Inclusive design
    • Leveraging Generative AI
      • Language Services
        • Semantic Intent Classifier
          • OpenAI
          • Azure
          • Google Gemini
          • Output attributes
        • Retrieval Augmented Generation
        • Example-based intent classification [Deprecated]
      • Interpreters
        • Available interpreters
          • OpenDialog interpreter
          • Amazon Lex interpreter
          • Google Dialogflow
            • Google Dialogflow interpreter
            • Google Dialogflow Knowledge Base
          • OpenAI interpreter
        • Using a language service interpreter
        • Interpreter Orchestration
        • Troubleshooting interpreters
      • LLM Actions
        • OpenAI
        • Azure OpenAI
        • Output attributes
        • Using conversation history (memory) in LLM actions
        • LLM Action Analytics
    • 3rd party Integrations in your application
      • Webhook actions
      • Actions from library
        • Freshdesk Action
        • Send to Email Action
        • Set Attributes Action
      • Conversation Hand-off
        • Chatwoot
    • Previewing your application
    • Launching your application
    • Monitoring your application
    • Debugging your application
    • Translating your application
    • FAQ
    • Troubleshooting and Common Problems
  • Developing With OpenDialog
    • Integrating with OpenDialog
    • Actions
      • Webhook actions
      • LLM actions
    • WebChat
      • Chat API
      • WebChat authentication
      • User Tracking
      • Load Webchat within page Element
      • How to enable JavaScript in your browser
      • SDK
        • Methods
        • Events
        • Custom Components
    • External APIs
  • Release Notes
    • Version 3 Upgrade Guide
    • Release Notes
Powered by GitBook
On this page
  • What is a file upload message?
  • When to use file upload messages
  • How to create a file upload message
  • Via the custom message in Message Editor
  • How to use a file upload message
  • How to retrieve uploaded files
  • How to construct a file upload message
  1. CREATE AI APPLICATIONS
  2. Designing your application
  3. Message Design
  4. Message Types

File Upload Message

This page describes where to use and find a file upload block message type

PreviousE-Sign MessageNextMeta Messages

Last updated 11 months ago

What is a file upload message?

File upload messages allow us to submit more than one file at a time in multiple different formats.

When to use file upload messages

File upload messages are best used when submitting documentation such as proof of address or identifying documents like driving licenses is made possible directly in the chat window with file upload messages.

Parameters such as file type, file size and the number of files that can be uploaded are all defined by the designer.

How to create a file upload message

Via the custom message in Message Editor

  • Open your OpenDialog application

  • Select the Scenario that you wish to edit

  • Select Design from the left hand panel and select Messages

  • Go into the message that you want to add a message block to

  • Add a 'Custom Message' block

  • Select 'file upload' from the drop down

  • Add in your own text to the fields you want to customise

  • To preview your message, go to the Preview section

XML Snippet

 <file-upload-message>
    <callback>Continue</callback>
    <submit_text>Submit</submit_text>
    <cancel_callback>Cancel Callback</cancel_callback>
    <cancel_text>Cancel</cancel_text>
    <error_callback>Error Callback</error_callback>
    <multiple>false</multiple>
    <file_size>500000</file_size>
    <file_types>
       <option>jpg</option>
       <option>png</option>
       <option>gif</option>
    </file_types>
    <base_path>your/file/path</base_path>
    <attribute_name>date_attribute</attribute_name>
 </file-upload-message>

Properties

<attribute_name> The url to the host website where the uploaded files will be stored can be set here.

<file_types> List the extensions of the file types that you would like to accept in your uploader.

<callback> As with button messages, the callback parameter defines the user intent that is triggered when the user clicks the submit button. This should route the user to the next step in the conversation.

<multiple> is a boolean that turns the uploaders ability to take more than one file at a time on or off.

<submit_text> defines the text that appears on the button that advances the conversation.

<cancel_callback>The cancel callback parameter defines the user intent that is triggered when the user clicks the cancel button.

<cancel_text>defines the text that appears on the button that cancels the file upload step.

<file_size> The file size here is measures in bytes. So 11000 bytes equal 11KB.

<base_path> Your file path

If you change your mind and select a different message type after generating the XML code, the new message code will be appended in the same window so make sure to delete the old message code.

How to use a file upload message

Saving a message: Always remember to hit 'Save Message' before closing or navigating away from the edit screen.

How to retrieve uploaded files

All files will be uploaded physically to Amazon S3 Service

FileUploadMessage attribute_name should be a name of already registered attribute of type FileCollectionAttribute. The application registers a default

FileCollectionAttribute that is called file_upload and the FileUploadMessage uses that by default. Users can use Create Attribute Modal or admin/dynamic-attributes page to create additional FileCollectionAttribute and use that in the FileUploadMessage.

File Collection is a Composite Collection attribute and currently it contains following properties: name - the name of the file size - the size of the file type - the type of the uploaded file url - this is a temporary URL to access the uploaded file. By default this link will last 30 minutes. After that time it won't be accessible any more.

The properties of the File Collection attribute can be accessed using indexes. If the name of the attribute is file_upload, then something like this: file_upload[0]['name'] file_upload[0]['size'] file_upload[0]['type'] file_upload[0]['url']

How to construct a file upload message

Navigate to the and create a Custom Message. Copy the at the bottom of this page into the black box and your chat message will appear in the Preview panel.

Fill in the template with the of your particular message and when you are happy with it make sure to save your message and test it in the Test Preview chat window.

When structuring a message, you are able to use multiple different message blocks together to create the message that you are looking for. However, when it comes to ordering and structing these, there are some rules that need to be followed. To learn more about this, please head to the page for more information.

For all message types, a key element to take into consideration is Accessibility, especially for messages that include customisation with multimedia types such as buttons, images and links. For all information on accessibility within OpenDialog, please click .

Constructing Messages
here
Message Editor
XML snippet
properties
An example of a file upload message in use
How to create a file upload message in the custom message block