IBM / ios-virtual-assistant-app

WARNING: This repository is no longer maintained
https://developer.ibm.com/patterns/build-a-virtual-assistant-for-ios-with-watson/
MIT License
25 stars 17 forks source link
ibmcode starter-kit swift watson-assistant xcode

WARNING: This repository is no longer maintained :warning:

This repository will not be updated. The repository will be kept available in read-only mode.

Create a virtual assistant for iOS using Watson Assistant

Platform

Table of Contents

Summary

This IBM Cloud Starter Kit will showcase the Watson Assistant service on iOS. We'll walk through setting up Xcode, installing dependencies, and running the application.

By running this code, you'll understand how to:

Flow

  1. The user enters a message with an iOS device.
  2. The message is sent to the IBM Watson Assistant service, the sent message is displayed on the iOS device.
  3. Watson Assistant responds and sends a message back to be displayed on the iOS device.

Included Components

Featured technologies

Requirements

Steps

  1. Use CocoaPods to create an Xcode workspace
  2. Configure Watson Assistant

1. Use CocoaPods to create an Xcode workspace

For this starter, a pre-configured Podfile has been provided, which includes the Watson SDK. To download and install the required dependencies, run the following command in your project directory:

$ cd {APP_Name}
$ pod install

NOTE: If the CocoaPods repository was not configured, we'd have to run pod setup first.

Now open the Xcode workspace to see what the project looks like. We can also use Xcode to run the application with Xcode's simulator, which we'll do in a few steps.

$ open {APP_Name}.xcworkspace

NOTE: If you run into any issues during the pod install, it is recommended to run a pod update by running: pod update; pod install

2. Configure Watson Assistant

Ensure you have a running Watson Assistant service, if you do not, create one by going to the link below:

Every chatbot needs a dialog, right? To make things easier we've coded this application to look at the available conversations for a specified Watson Assistant service and use the first workspace it finds.

To easily obtain a conversation dialog we can simply launch the Watson Assistant Tool and view the sample conversation that is provided by Watson Assistant. This is enough to get your application running locally.

(Optional) 2.1 Specify your own assistant

If you prefer to specify your own conversation you can import or create a new dialog with the Watson Assistant Tool. To do that, follow the documentation online. Once created we need to find the workspace ID. See the image below as a guide to finding the workspace ID.

Once we have the workspace ID we'll need to let our application know about it. We need to update BMSCredentials.plist by adding a workspaceID entry, like below:

Sample Output

You can now run the application on a simulator or physical device. Try a few queries for yourself:

A quick snapshot of a conversation.

A full walkthrough of a sample conversation.

License

Apache 2.0

Links

Learn More