The DevRev Opportunity Summarizer Project is designed to generate summary reports of opportunities within a specified timeframe and post these summaries to a Slack channel. The project interacts with the DevRev API to fetch opportunities, uses an LLM to generate summaries, and utilizes the Slack API to post messages
- Automated reporting of closed-won opportunities using GPT-4o.
- Generates PDF reports with charts and analytics.
- Posts reports directly to Slack channels.
- Supports custom timeframes in days (
d) and hours (h). - Default settings: Slack channel (
general) and timeframe (7d). - Simple
/reportcommand for quick report generation. - Integrates DevRev API, GPT-4o, and Slack API for seamless workflow.
- Provides a detailed timeline for each step in the process.
- DevRev Organization account
- Slack workspace and API token
- GPT-4o API token
- Clone the Repository
git clone https://github.com/Chaithra-S-Nayak/LadyBugs.git
cd LadyBugs/code- Install Dependencies
npm install- Authenticate with DevRev
devrev profiles authenticate -o <dev-org-slug> -u <your email@yourdomain.com>- Create a Snap-in Package
devrev snap_in_package create-one --slug my-first-snap-in | jq .- Create a Snap-in Version
devrev snap_in_version create-one --path .- Draft the Snap-in
devrev snap_in draft-
Access DevRev App
Open the DevRev App in your browser. -
Locate Your Snap-In
- Navigate to the Snap-Ins section in the app.
- Your deployed Snap-In should be visible in the waiting for installation state.
-
Enter Installation Configuration
When prompted, provide the following values:- SLACK-TOKEN: Slack API token.
- LLM-TOKEN: GPT-4o API token.
- Default Slack Channel Name: A default channel name for notifications.
- Default Timeframe: A default timeframe for your application.
-
Navigate to the Discussions Tab
- Open the Discussions tab in the Opportunity section of the DevRev app.
-
Enter the Command
- Use the
/reportcommand followed by the channel name and timeframe. - The timeframe should be in the format of Nd Nh , where N is a number, d stands for days, and h stands for hours.
- Example:
/report sales 2d 3h(for the last 2 days and 3 hours).
- Use the
-
Default Values
- If the channel name, timeframe, or both are not specified, the snap-in uses default values configured during installation:
- Default Slack Channel:
general - Default Timeframe:
7d(7 days)
- Default Slack Channel:
- If the channel name, timeframe, or both are not specified, the snap-in uses default values configured during installation:
View a sample generated report here.
This project was developed by Team LadyBugs from NMAM Institute of Technology, Nitte, Karkala.
Team Members: