Version 1.x had an issue where a corrupted ymAuthentication token was passed in some cases from SDK to the server. The conversation history was thus mapped to the corrupted ymAuthenticationToken
Version 2.x has fix for this issue and thus a correct ymAuthenticationToken is always passed. However, as the correct ymAuthentication is different from the corrupted token, our server treats this user as a new user which leads to a complete loss of history of user conversations. The user will have a fresh start after updating the app.
- ymAuthentication was corrupted only when it contained
=character in 1.x versions
- This issue was happening only on Android platform.
For more info feel free to email us at [email protected]
Run this command in terminal form project root folder
Add following key in your
strings.xml file found at
yourproject/platforms/android/app/src/main/res/values/strings.xml, this will override default file provider used by SDK.
Overriding the file provider path will avoid conflict with other app using YM CHATBOT SDK. You can use your application id and suffix it with ".fileprovider" Example - applicationId : "com.abc.xyz" then application_id_for_provider = com.abc.xyz.fileprovider
This is the first and compulsory step.
ymAuthenticationToken is used to associate an identity of the user with the chat bot.
Whenever chatbot is launched with ymAuthenticationToken it will load the previous chats associated with this user since inception.
Note: History will load only when
Show history flag is enabled in the channel settings
YMChat supports firebase notifications. Pass your
FCM token in setDeviceToken method.
Note: Firebase service account key is required to send notifications. You can share the service account key with us. More info here
Additional information can be passed in the form of key value pair from app to bot using payload.
Payload can be used to pass information from host app to bot. The payload dictionary should be JSON compatible else an error will be thrown
For passing data from bot to app refer bot Bot Events
Payload is securely passed in HTTPS post request to protect the information passed in it
A specific journey can be triggered on launch, by passing the slug in the payload.
cordova-plugin-ymchat supports bots with on-prem deployments. For the bot to work, pass the on-prem URL to
If the bot is deployed in a specific region(e.g. r1,r2,r3..rn)) on yellow.ai cloud, set the
customBaseUrl as follows
Here rx = r1,r2,r3,r4,r5 etc.
You can customize the loading image while bot loads. Just pass the URL in the following way. It is recommended to use jpg, png, svg or gif
You can enable V2 bot by calling
setVersion() method. Default value is 1
Speech to text can be enabled and disabled by calling setEnableSpeech(). Default value is
You can hide the input bar while bot is loading by calling the
setDisableActionsOnLoad API . Default value is
Status bar color can be set by calling
Close button color can be set by calling
If you are supporting Speech recognization, add following snippet to Info.plist of the host app
Chat bot can be presented by calling
startChatbot(). This method will display full screen chat view
Bot events are used to pass information from bot to app. For passing events from app to bot refer Payload
Bot close event is separately sent and it can be handled in following way.
Bot can be closed by tapping on cross button at top, and they can be programmatically closed using
If you want to stop receiving push notifications you can unlink the device token. Device token typically is unlinked when the user logs out of the app.
API key can be generated/found by visiting
https://cloud.yellow.ai -> Overview -> Configure -> API Key section
Existing client can upgrade their dependency to
v2.1.+ and replace exisitng key with new API Key.
Client using SDK version below
v2.1.0 will have no impact.
A demo app can be used as a reference to better understand how this SDK can be integrated in the app https://github.com/yellowmessenger/YMChatIonicDemo