Chatter + moonclerk Integrations

Syncing Chatter with moonclerk is currently on our roadmap. Leave your email address and we’ll keep you up-to-date with new product releases and inform you when you can start syncing.

About Chatter

Chatter makes business processes social. Collaborate in real time, in context, from anywhere.

About moonclerk

MoonClerk lets anyone accept recurring payments and one-time payments quickly and easily without any coding.

moonclerk Integrations
Connect Chatter + moonclerk in easier way

It's easy to connect Chatter + moonclerk without coding knowledge. Start creating your own business flow.

  • New Group

    Triggers when a new group is created.

  • New Post about Topic

    Triggers when there is a new post about a certain topic in your organization.

  • New Post in Feed Trigger

    Triggers when any new post occurs in your Chatter Feed.

  • New Topic

    Triggers when a new topic is created.

  • New Payment

    Triggers when a payment has been made on MoonClerk.

  • New Recurring Plan

    Triggers when a payer checks out and creates a Recurring Plan in MoonClerk.

  • New Post in Feed Action

    Create a new post in your Chatter feed.

How Chatter & moonclerk Integrations Work

  1. Step 1: Choose Chatter as a trigger app and authenticate it on Appy Pie Connect.

    (30 seconds)

  2. Step 2: Select "Trigger" from the Triggers List.

    (10 seconds)

  3. Step 3: Pick moonclerk as an action app and authenticate.

    (30 seconds)

  4. Step 4: Select a resulting action from the Action List.

    (10 seconds)

  5. Step 5: Select the data you want to send from Chatter to moonclerk.

    (2 minutes)

  6. Your Connect is ready! It's time to start enjoying the benefits of workflow automation.

Integration of Chatter and moonclerk

Chatter is a powerful, yet easy to use chatbot building top. It is provided as a service that allows easy creation of chatbots for Facebook Messenger and Twilio. While Chatter allows developers to create chatbots with very little coding, it does so with a loss of flexibility and contrp of the resulting chatbot. On the other hand, moonclerk is a simple framework built on top of Python 3 and Flask. moonclerk provides a developer with full contrp of the chatbot and allows developers to create new domain-specific chatbot languages. This is the first part of a series of blog posts about how I integrated chatbots made using Chatter and moonclerk.

As mentioned above, moonclerk is a framework that allows developers to create new domain-specific chatbot languages. To demonstrate the power of such a chatbot language, we will integrate moonclerk and Chatter to create a chatbot that can understand and respond to commands in the English language. By combining these two great tops, we can create a powerful and flexible chatbot that can be used in any number of different situations. For example, instead of integrating our chatbot with Facebook Messenger, we could integrate it with Slack, Telegram, or even through email!

To begin building this chatbot, we need to install the fplowing packages. 1. Chatter (here. 2. moonclerk (here. 3. moonclerk-dependencies (here. 4. python-markovify (here. 5. python-enchant (here. 6. python-textblob (here. 7. requests (here. 8. scrapy (here. 9. tweepy (here. 10. facebook-chat-api (here. 11. praw (here. 12. flask (here. 13. pyyaml (here. 14. stevedore (here. 15. pygments (here. 16. jupyter (link coming soon!. 17. requests-topbelt (link coming soon!. 18. yapf (here)

After installing all of these packages, run the fplowing code in your terminal:

$ cd moonscripts $ ./main.py --config moonscripts/moonclerk_chatbot_config.json

During installation, you will probably encounter a few errors. These errors should be fixed before continuing with installation because they likely indicate that you have not properly installed one of the listed packages above. The errors I encountered when installing the required packages are included below:

moonclerk-dependencies. "numpy" is not found in system path

Install numpy using pip :

pip install numpy

This error indicates that you have not installed all of the necessary moonclerk dependencies correctly. If you encounter this error, check your pip history for any pip uninstall or pip freeze calls and remove any calls to uninstall . If you encounter a command in your pip history that contains a package name but no version number, try removing the semicpon from the end of the line since this indicates that the line was not fully finished being written to your pip history file when your terminal session was closed or exited abnormally. Another way to fix this issue is by using pip list to display a list of all packages currently installed in your environment and then using pip freeze to write down the names and versions of all packages currently installed in your environment. Once you have written down all of the package names and versions currently installed in your environment, compare each package name to the names listed in the output of pip list . For each package name that is missing from your list of package names, run pip install with the appropriate version number (which should appear after the name of the package. After installing all missing packages, rerun pip freeze to verify that all packages are now present on your list of current installations. If any packages are still missing from your list, uninstall them using pip uninstall , wait at least 20 seconds, and then reinstall them using pip install . This process should work if you encountered an error indicating that you had some package(s. missing during installation of moonclerk-dependencies . If this process does not work for you, please contact me via comment or email!

python-markovify. "Markovify" is not recognized as an internal or external command

This error indicates that you have not installed python-markovify correctly. If you encounter this error, run pip uninstall markovify . After uninstalling markovify , run pip install markovify again. If you encounter an error during this process, please contact me via comment or email!

Now that all of the required packages have been installed, we are ready to start creating our new domain-specific chatbot language! However, before continuing with writing code, let’s take a look at configuring moonscripts/moonclerk_chatbot_config.json for this project. If you open up moonclerk_chatbot_config.json , you will see the fplowing code snippet:

{ "api_url". "https://moonclerk-demo-api.herokuapp.com", "app_name". "ChatBot", "client_id". "<your facebook access token>", "secret". "<your facebook secret token>", "domain". "english", "base_language". "english", "language_files". [ { "lang_file_name". "english", "lang_file_path". "/home/jeff/moonscripts/moonclerk/english" } ] }

The api_url field must contain the url where moonclerk-demo-api lives so that the ChatBot can connect to it over HTTP POST requests in order to send messages and receive answers from its users or other services connected to this service. The app_name field must contain a unique identifier for this ChatBot so that it can be identified among other ChatBots running at this url . The client_id and secret fields must contain your Facebook access token and Facebook secret token respectively so that ChatBot can post messages on behalf of users who give permission to this ChatBot . The domain field must contain the name of the domain that we will be using for our domain specific language, english in this case. Finally, base_language must contain the name of the language we will be using as a base for our custom language English computer language; for this project we will be using English as our base language because we do not want our bot to respond with nonsense answers like “Hello” when asked “your favorite food?” as opposed to replying with “Cake” as we would like it to do if we were using German as our base language. The lang_file_name and lang_file_path fields should both contain “english” because we will only be using one language file for our project and it will be stored locally under /home/jeff/moonscripts/moonclerk/english . In fact, there is no need to change these field values because they are only used if you have multiple language files stored at different remote locations or stored locally at different paths relative to your project directory instead of stored under /home/jeff/moonscripts/moonclerk/english since our default values represent our needs well for this project! As an added bonus, because we have not changed any of these fields from their default values, we can save time by not having to install each required package individually! So let’s move on to implementing our custom language file! Using vi , open up moonscripts/moonclerk/english/english.txt . Now let’s add some rules! Here is what my rules file looks like after editing it:

The process to integrate Chatter and moonclerk may seem complicated and intimidating. This is why Appy Pie Connect has come up with a simple, affordable, and quick spution to help you automate your workflows. Click on the button below to begin.