Skip to content
This repository has been archived by the owner on Apr 24, 2020. It is now read-only.

Configuration

Tanay Pant edited this page Oct 10, 2016 · 8 revisions

Melissa detects if you have a profile.json file present and runs a profile populator if you are using Melissa for the first time. The profile populator just asks for basic pieces of information that are crucial for the personalised running of the software. However, at a later stage, you can edit the profile.json file anytime to change your details and/or add the various API keys. Let us go through the various data entry fields of profile.json file:

"name": "Tanay",

Your name.

"va_name": "Melissa", 

Name of your VA.

"va_gender": "female",

This is the option for customising the gender of your virtual assistant. Setting it either male or female will effect the voice of the VA.

"hotword_detection": "on",

This option enables the hotword detection, the hotword being Melissa. This is useful when you want Melissa to enter a passive state when you issue the sleep command instead of quitting. The software will listen for the hotword in the background and re-start Melissa when the hotword is issued. You can change the hotword (or create your own model) by creating a new .pmdl file and replacing it with data/snowboy_resources/Melissa.pmdl. Instructions on generating a new lmdl file are here.

"stt": "google",

There are four methods to give commands to Melissa namely google, sphinx, keyboard and telegram. These options can be assigned to stt.

"tts": "xxxx",

During the initial and consecutive runs, Melissa makes use of the in-built say TTS for OS X and the installed espeak TTS for speaking. You can set this to ivona for using a much advanced online TTS for a better experience. Instructions on configuring are given below.

"ivona": {
    "access_key": "xxxx", 
    "secret_key": "xxxx"
},

You can obtain the access and secret keys of Ivona from here.

"images_path": ".",

This is the path where you have kept the images that you wish to be uploaded to imgur via voice commands.

"music_path": ".",

This is the path where you have kept the music files that you wish to play via voice commands.

"telegram_username": "tanay1337",

Your telegram username used to validate if the messages that are received by the bot are sent from your account.

    "telegram_token": "xxxx", 

Fill in this field with the token to access the HTTP API of Telegram to control Melissa via a Telegram bot. Details on creating a bot and obtaining the API token here.

"twitter": {
    "access_token": "xxxx", 
    "consumer_key": "xxxx", 
    "access_token_secret": "xxxx", 
    "consumer_secret": "xxxx"
}, 

Fields for filling in Twitter API details.

"gmail": {
    "password": "", 
    "address": ""
}, 

Gmail username and password details for use in a future module.

"icloud": {
    "username": "", 
    "password": ""
},

iCloud username and password details for the iPhone related modules.

"imgur": {
    "client_secret": "xxxx", 
    "client_id": "xxxx"
}, 

Imgur API details for the related modules.

"actions_db_file": ":memory:",

Do not edit unless you are sure you know what you are doing.

"memory_db": "./data/memory.db",

Location of the SQLite database that serves as Melissa's permanent memory.

"pocketsphinx": {
    "hmm": "hmm/en_us/hub4wsj_sc_8k", 
    "lm": "lm/sphinx.lm", 
    "modeldir": "./data/model/", 
    "dic": "lm/sphinx.dic"
}, 

Location of the various files required by PocketSphinx to run, do not change the locations unless you know what you are doing.

"degrees": "celsius", 

Specifying the units of temperature.

"city_code": "INXX0096", 

Code of your city according to weather.com

"city_name": "New Delhi", 

Name of the city where you reside in.

"modules": "melissa.actions",

Location of the various action modules of Melissa, do not change this location unless you know what you are doing.

NOTE: You should NEVER store your passwords and other sensitive details in an unencrypted text file.

Clone this wiki locally