Skip to content

clefincode/clefincode_chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ClefinCode Chat logo

ClefinCode Chat

Enhance business communication with multimedia messaging and ERPNext integration.

Learn More Β»

Issues Β· Discussions


Welcome to ClefinCode, where innovation meets digital transformation. We’re proud to introduce ClefinCode Chat, a groundbreaking solution designed to revolutionize the way businesses communicate. Our expertise in web and mobile application development has led us to create a platform that enhances, secures, and streamlines communication across your organization, ensuring that your business stays ahead in today’s digital world.

Comprehensive Communication Solution: ClefinCode Chat offers a full suite of multimedia messaging capabilities, allowing your team to share pictures, videos, files, and voice clips effortlessly. With an intuitive interface, our chat application facilitates easy adoption, enabling direct messaging or group conversations without the complexity.

Advanced Features for Business Efficiency: Our application supports dynamic participation in conversations, topic-integrated discussions, and guest messaging via a website support portal, ensuring that your communication is both efficient and comprehensive. Manage privacy and collaboration within your organization with ease, fostering a secure and productive environment.

Access Anywhere, Anytime: ClefinCode Chat is a free mobile app available for download from Google Play. This ensures that you and your team can stay connected, whether on the go or at the office.

Open Source and Customizable: Behind ClefinCode Chat is the powerful ERPNext system, supported by the open-source Frappe application. You can download the backend code from GitHub and install it on your own server. This flexibility allows you to customize your ERPNext instance to suit your specific business needs, seamlessly integrating with both our web and mobile applications.

Dedicated Support: Our support section within the app is designed to assist you whenever you need information, help with an issue, or have questions about our ERPNext services and mobile application development. We are here to ensure that your experience with ClefinCode Chat and ERPNext is nothing short of exceptional.

Show more screenshots










Features

🌐 Comprehensive Communication Solution

  • πŸ’¬ Direct & Group Messaging: Smooth engagement in one-on-one or group chats.
  • πŸ–Ό Multimedia Messaging: Share pictures, videos, files, and voice clips effortlessly.
  • πŸ“± Intuitive Interface: An easy-to-use application for quick adoption.

πŸš€ Advanced Features for Business Efficiency

  • πŸ”„ User / Doctype Mentions: Flexibly join and contribute to conversations and topic-integrated discussions.
  • 🌟 Guest Messaging: Enhance customer service with a website support portal.
  • πŸ“² WhatsApp Business API Integration: Manage WhatsApp conversations directly within your ERP, centralizing and organizing interactions for invoices, projects, and day-to-day communications.

🌍 Access Anywhere, Anytime

  • πŸ“² Mobile App Availability: Free to download from Google Play and App Store, keeping you connected whether on the go or at the office.

    Show mobile screenshots













πŸ’» Open Source and Customizable

  • πŸ›  Powered by ERPNext & Frappe: Utilize the flexibility of open-source to customize your experience.
  • πŸ”„ Seamless Integration: Seamlessly integrate with our web and mobile applications to suit specific business needs.

🀝 Dedicated Support

  • πŸ†˜ In-App Support Section: Get instant assistance, information, and answers to your ERPNext and mobile app development queries.
  • 🌟 Exceptional Experience: We're here to ensure your experience with ClefinCode Chat is nothing short of exceptional.

Built with

ClefinCode Chat is built using the Frappe Framework - an open-source full stack development framework.

These are some of the tools it's built on:

The mobile app is built using Flutter

Installation

Since ClefinCode Chat is a Frappe app, it can be installed via frappe-bench on your local machine or on your production site.

Once you have setup your bench and your site, you can install the app via the following commands:

bench get-app https://github.com/clefincode/clefincode_chat.git
bench --site yoursite.name install-app clefincode_chat
bench --site yoursite.name migrate
bench build

Note: If migrating from version < 1.3.0 to > 1.3.0, run the following command before migrate:

bench setup requirements

Getting Started with WhatsApp in ERPNext

You'll first need to set up developer assets and obtain credentials from the Meta Developer Portal. Follow this guide to get started: Meta Developer Portal Guide

1. Enter WhatsApp Credentials

2. Set Up the WhatsApp Profile

Important Tips:

  • When entering the WhatsApp number, do not include 00 or +. Start directly with the country code and the number, e.g., 971xxxxxxxxx.

  • There are two types of WhatsApp profiles you can create:

    1. Personal πŸ‘€: Opens a direct communication channel between the sender and the receiver.
    2. Support πŸ‘₯: Opens a group channel between the sender and receiver, allowing the admin to add or remove other members from the channel.
  • After saving the WhatsApp profile, a WhatsApp template will be automatically created.

πŸŽ‰Now, you can begin sending and receiving WhatsApp messages directly using our chat app within your ERP systemπŸŽ‰

Twilio WhatsApp Integration

Connect WhatsApp through Twilio to manage inbound and outbound messages directly inside ERPNext.

  1. Enter Twilio Credentials

Add your Twilio credentials:

Twilio Account SID

Auth Token

2. Create a Twilio WhatsApp Profile

Select the WhatsApp-enabled number from Twilio

Select Provider: Twilio

Choose a Type (Personal or Support) and save

Important tip: A template will be created automatically and its preview will be visible.

3. Test WhatsApp Messaging Test Sent Messages

Text

Image

Voice note

Test Received Messages

Text

Image

Voice note

Location

Contact

Twilio Templates

Create message templates, submit them for approval, then send them from chat using /.

Create Twilio Text Template

Enter Friendly Name

Select Template Type: twilio/text

Select Category

Select Language

Write message in Body

Save, submit, and wait for approval

Important tips (Meta/WhatsApp template name rules)

Allowed characters: lowercase alphanumeric only (a-z, 0-9)

Allowed separator: underscore _ only

No spaces

No special characters (! @ # $ % - . etc.)

Use meaningful names (example: order_delivery)

Name should be unique for your account if template content is unique

Create Twilio Media Template

  • Enter Friendly Name

  • Select Template Type: twilio/media

  • Select Category

  • Select Language

  • Write message in Body

  • Add media link in Media URL

  • Save, submit, and wait for approval

Create Quick Reply Template
  • Enter Friendly Name

  • Select Template Type: quick-replay

  • Write message in Body

  • Add button and value in actions table

  • Save, submit, and wait for approval

Create List Picker Template

Enter Friendly Name

Select Template Type: list-picker

Write message in Body

Add list items in Items table

Save, submit, and wait for approval

Use Variables

Twilio uses variables in content templates to personalize messages. Variables follow the {{...}} syntax and are populated with dynamic data when the message is sent.

You can map variables to fields from the associated DocType by filling the variable table.

Important tips

Variables must be sequential: {{1}}, {{2}}, {{3}}

Variables should not be adjacent

Variables should not start or end the message

Must have enough text: (2x + 1) non-variable words per x variables

Avoid too many variables in short messages

Add Variable to Media Template

Set base URL of your site

Select field with attached file

Add default value

Attach DocType Print to Template

To send the connected DocType print:

  • Use a Media Template and add a variable (as above)

  • No need to add a DocType field, but default value is required

  • Enable Attach Document Print

  • Select Print Format

  • Select Language Format: English

  • Select Letter Head

Send Template from Chat

  • Open Chat

  • Type / and wait for approved templates

  • Select a template

  • If linked to a DocType, choose the required document

Manage Contacts

Add and manage contacts directly from the chat interface, including multiple identifiers per contact.

Manage Contacts (Admin)

  • Click the Chat icon.
  • Click the + button.
  • Select Add Contact to create a new contact.
  • Admins can edit contacts using Manage Contact.
  • Update contact details in the popup window.
  • If an identifier already exists, the system will show an error.

ClefinCode Chat Profile

A Chat Profile centralizes all identifiers for a person/company (WhatsApp, Telegram, Instagram, Messenger, etc.) and maps them to a system user.

  • Create a Chat Profile and set its name.
  • Assign a System User (email).
  • Add one or more contact identifiers (WhatsApp / Telegram / Instagram / Messenger).
  • The profile keeps all identifiers organized in one place.

Reporting Bugs

If you find any bugs, feel free to report them here on GitHub Issues.

License

GNU General Public License (v3)