Plugin Directory

Changeset 3309744


Ignore:
Timestamp:
06/11/2025 11:20:22 AM (9 months ago)
Author:
techbeeps
Message:

new version 1.3 chatbot add

Location:
replypilot-ai
Files:
50 added
10 edited

Legend:

Unmodified
Added
Removed
  • replypilot-ai/trunk/admin.php

    r3297035 r3309744  
    4444        $generated_ai_notic_enable_d =  isset($_POST['generated_ai_notic_enable']) ? 1 : 0;
    4545        $selected_comment_based_d = isset($_POST['selected_comment_based']) ? sanitize_text_field(wp_unslash($_POST['selected_comment_based'])) : '';
     46        $replypilot_ai_chatbot_tone = isset($_POST['replypilot_ai_chatbot_tone']) ? wp_kses_post(wp_unslash($_POST['replypilot_ai_chatbot_tone'])) :'You are a helpful AI assistant for this website. Be friendly, professional and provide concise answers.';
     47        $replypilot_ai_chatbot_about_business = isset($_POST['replypilot_ai_chatbot_about_business']) ? wp_kses_post(wp_unslash($_POST['replypilot_ai_chatbot_about_business'])) :'';
     48        $replypilot_ai_chatbot_enable = isset($_POST['replypilot_ai_chatbot_enable']) ? 1 : 0;
     49
    4650
    4751        update_option('replypilot_ai_rp_auto_reply', $replypilot_ai_rp_auto_reply_d);
     
    5458        update_option('replypilot_ai_generated_ai_notic_enable', $generated_ai_notic_enable_d);
    5559        update_option('replypilot_ai_selected_comment_based', $selected_comment_based_d);
     60        update_option('replypilot_ai_chatbot_tone', $replypilot_ai_chatbot_tone);
     61        update_option('replypilot_ai_chatbot_about_business', $replypilot_ai_chatbot_about_business);
     62        update_option('replypilot_ai_chatbot_enable', $replypilot_ai_chatbot_enable);
    5663
    5764
     
    7380function replypilot_ai_settings_html()
    7481{
    75     $api_key = get_option('replypilot_ai_api_key', '');
     82    $api_key = get_option('replypilot_ai_api_key', '1');
     83    $replypilot_ai_chatbot_enable = get_option('replypilot_ai_chatbot_enable', '1');
    7684    $user_email = get_option('replypilot_ai_email');
    7785    $user_key = substr(hash('sha256', $user_email), 0, 16);
     
    8896    $selected_comment_based = get_option('replypilot_ai_selected_comment_based', 'content');
    8997    $replypilot_ai_activated = get_option('replypilot_ai_activated', false);
     98    $replypilot_ai_chatbot_tone = get_option('replypilot_ai_chatbot_tone', '');
     99    $replypilot_ai_chatbot_about_business = get_option('replypilot_ai_chatbot_about_business', '');
     100
    90101    // Get all users
    91102    $users = get_users(['fields' => ['ID', 'display_name']]);
     
    134145                </li>
    135146                <li class="rp-nav-item">
     147                    <a href="#" class="rp-nav-link rp-nav-tab" data-tab="Chatbot">
     148                        <i class="fa-solid fa-comments"></i>
     149                        <span>Configure Chatbot</span>
     150                    </a>
     151                </li>
     152                <li class="rp-nav-item">
    136153                    <a href="#" class="rp-nav-link rp-nav-tab" data-tab="license">
    137154                        <i class="fas fa-key"></i>
     
    326343
    327344                </div>
     345                <div id="Chatbot" class="rp-tab-content active">
     346                    <div class="rp-content-header" bis_skin_checked="1">
     347                        <div bis_skin_checked="1">
     348                            <h1 class="rp-page-title">Chatbot</h1>
     349                            <div class="rp-breadcrumbs" bis_skin_checked="1">
     350                                <a href="#">ReplyPilot AI</a>
     351                                <span>/</span>
     352                                <span>Chatbot</span>
     353                            </div>
     354                        </div>
     355
     356
     357                        <button class="btn btn-primary rp-save-button">
     358                            <i class="fas fa-save"></i>
     359                            Save Changes
     360                        </button>
     361                    </div>
     362
     363                  <div class="er-card" bis_skin_checked="1">
     364                        <div class="er-card-header" bis_skin_checked="1">
     365                            <h2 class="er-card-title">ChatBot</h2>
     366
     367                        </div>
     368                        <div class="form-group" bis_skin_checked="1">
     369                            <label class="form-label">Enable ChatBot </label>
     370                            <div bis_skin_checked="1">
     371                                <div class="rp-toggle-slider-div" bis_skin_checked="1">
     372                                    <label class="toggle-switch">
     373                                        <input type="checkbox" id="replypilot_ai_chatbot_enable" name="replypilot_ai_chatbot_enable" value="1" <?php checked(1, $replypilot_ai_chatbot_enable); ?>>
     374                                        <span class="rp-toggle-slider"></span>
     375                                    </label>
     376                                    <span><?php echo esc_html($replypilot_ai_chatbot_enable ? 'Enabled' : 'Disabled'); ?> </span>
     377                                </div>
     378
     379                            </div>
     380                        </div>
     381
     382
     383
     384                    </div>
     385                    <div class="er-card" bis_skin_checked="1">
     386                        <div class="er-card-header" bis_skin_checked="1">
     387                            <h2 class="er-card-title">About Your Business:</h2>
     388
     389                        </div>
     390
     391                        <div class="form-group" bis_skin_checked="1">
     392                            <label class="form-label">Business Details</label>
     393                            <div style="display: flex; gap: 12px; align-items: center;" bis_skin_checked="1">
     394                                <textarea class="form-control" id="replypilot_ai_chatbot_about_business" name="replypilot_ai_chatbot_about_business"
     395                                    rows="5" cols="120"
     396                                    placeholder="Describe your business, products/services, and any specific information the chatbot should know."><?php echo esc_html($replypilot_ai_chatbot_about_business) ?></textarea>
     397
     398                            </div>
     399
     400                        </div>
     401
     402                    </div>
     403
     404
     405                    <div class="er-card" bis_skin_checked="1">
     406                        <div class="er-card-header" bis_skin_checked="1">
     407                            <h2 class="er-card-title">Chatbot Persona</h2>
     408
     409                        </div>
     410                   
     411
     412                        <div class="form-group" bis_skin_checked="1">
     413                            <label class="form-label">Describe Chatbot Behave</label>
     414                            <div style="display: flex; gap: 12px; align-items: center;" bis_skin_checked="1">
     415                                <textarea class="form-control" id="replypilot_ai_chatbot_tone" name="replypilot_ai_chatbot_tone"
     416                                    rows="5" cols="120"
     417                                    placeholder="Describe how the chatbot should behave (tone, style, etc.)"><?php echo esc_html($replypilot_ai_chatbot_tone) ?></textarea>
     418                               
     419                            </div>
     420                           <p></p>
     421                        </div>
     422                        <button class="btn btn-primary rp-save-button">
     423                            <i class="fas fa-save"></i>
     424                            Save Changes
     425                        </button>
     426
     427                    </div>
     428
     429                </div>
    328430
    329431                <div id="Forum-Plugins" class="rp-tab-content">
  • replypilot-ai/trunk/assets/css/style.css

    r3297027 r3309744  
    11:root {
    2   --primary: #3858e9;
    3   --primary-hover: #2a4bd7;
    4   --secondary: #f8f9fa;
    5   --border: #e0e3e7;
    6   --border-dark: #d0d5dd;
    7   --text: #1f2937;
    8   --text-light: #6b7280;
    9   --success: #10b981;
    10   --error: #ef4444;
    11   --warning: #f59e0b;
    12   --er-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    13   --er-card-shadow-hover: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    14   --accent-color: #ff7043;
    15   --white: #fff;
    16   --shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    17   --transition: all 0.3s ease;
    18 }
    19 
    20 
     2  --rp-primary: #3858e9;
     3  --rp-primary-hover: #2a4bd7;
     4  --rp-secondary: #f8f9fa;
     5  --rp-border: #e0e3e7;
     6  --rp-border-dark: #d0d5dd;
     7  --rp-text: #1f2937;
     8  --rp-text-light: #6b7280;
     9  --rp-success: #10b981;
     10  --rp-error: #ef4444;
     11  --rp-warning: #f59e0b;
     12  --rp-er-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
     13  --rp-er-card-shadow-hover: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
     14  --rp-accent-color: #ff7043;
     15  --rp-white: #fff;
     16  --rp-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
     17  --rp-transition: all 0.3s ease;
     18}
     19
     20#replypilot_ai_chatbot_tone,#replypilot_ai_chatbot_about_business{
     21    max-width: 100%;
     22}
     23#wpbody-content{
     24  display: flex;
     25  flex-wrap: wrap;
     26}
    2127.rp-plugin-admin {
    2228  display: flex;
     
    3238  width: 280px;
    3339  background: white;
    34   border-right: 1px solid var(--border);
     40  border-right: 1px solid var(--rp-border);
    3541  padding: 80px 0;
    3642  position: sticky;
     
    4147.rp-sidebar-header {
    4248  padding: 0 24px 24px;
    43   border-bottom: 1px solid var(--border);
     49  border-bottom: 1px solid var(--rp-border);
    4450  margin-bottom: 24px;
    4551}
     
    6470.rp-plugin-version {
    6571  font-size: 12px;
    66   color: var(--text-light);
     72  color: var(--rp-text-light);
    6773  font-weight: 400;
    6874  margin-top: 2px;
     
    8490  padding: 10px 16px;
    8591  border-radius: 6px;
    86   color: var(--text-light);
     92  color: var(--rp-text-light);
    8793  text-decoration: none;
    8894  font-size: 14px;
     
    9298
    9399.rp-nav-link:hover {
    94   background-color: var(--secondary);
    95   color: var(--text);
     100  background-color: var(--rp-secondary);
     101  color: var(--rp-text);
    96102}
    97103
     
    106112.rp-nav-link.active {
    107113  background-color: rgba(56, 88, 233, 0.1);
    108   color: var(--primary);
     114  color: var(--rp-primary);
    109115  font-weight: 600;
    110116}
     
    132138  font-size: 24px;
    133139  font-weight: 700;
    134   color: var(--text);
     140  color: var(--rp-text);
    135141}
    136142
     
    140146  gap: 8px;
    141147  font-size: 14px;
    142   color: var(--text-light);
     148  color: var(--rp-text-light);
    143149}
    144150
    145151.rp-breadcrumbs a {
    146   color: var(--text-light);
     152  color: var(--rp-text-light);
    147153  text-decoration: none;
    148154}
    149155
    150156.rp-breadcrumbs a:hover {
    151   color: var(--primary);
     157  color: var(--rp-primary);
    152158}
    153159
     
    156162  background: white;
    157163  border-radius: 12px;
    158   box-shadow: var(--er-card-shadow);
     164  box-shadow: var(--rp-er-card-shadow);
    159165  padding: 24px;
    160166  margin-bottom: 24px;
    161   border: 1px solid var(--border);
     167  border: 1px solid var(--rp-border);
    162168  transition: transform 0.2s, box-shadow 0.2s;
    163169}
    164170
    165171.er-card:hover {
    166   box-shadow: var(--er-card-shadow-hover);
     172  box-shadow: var(--rp-er-card-shadow-hover);
    167173  transform: translateY(-2px);
    168174}
     
    174180  margin-bottom: 20px;
    175181  padding-bottom: 12px;
    176   border-bottom: 1px solid var(--border);
     182  border-bottom: 1px solid var(--rp-border);
    177183}
    178184
     
    180186  font-size: 18px;
    181187  font-weight: 600;
    182   color: var(--text);
     188  color: var(--rp-text);
    183189}
    184190
     
    193199  font-size: 14px;
    194200  font-weight: 500;
    195   color: var(--text);
     201  color: var(--rp-text);
    196202}
    197203
     
    199205  width: 100%;
    200206  padding: 10px 14px;
    201   border: 1px solid var(--border);
     207  border: 1px solid var(--rp-border);
    202208  border-radius: 8px;
    203209  font-size: 14px;
     
    208214.form-control:focus {
    209215  outline: none;
    210   border-color: var(--primary);
     216  border-color: var(--rp-primary);
    211217  box-shadow: 0 0 0 3px rgba(56, 88, 233, 0.1);
    212218}
     
    214220.form-text {
    215221  font-size: 13px;
    216   color: var(--text-light);
     222  color: var(--rp-text-light);
    217223  margin-top: 6px;
    218224}
     
    234240
    235241.btn-primary {
    236   background-color: var(--primary);
     242  background-color: var(--rp-primary);
    237243  color: white;
    238244}
    239245
    240246.btn-primary:hover {
    241   background-color: var(--primary-hover);
     247  background-color: var(--rp-primary-hover);
    242248}
    243249
    244250.btn-secondary {
    245251  background-color: white;
    246   color: var(--text);
    247   border: 1px solid var(--border);
     252  color: var(--rp-text);
     253  border: 1px solid var(--rp-border);
    248254}
    249255
    250256.btn-secondary:hover {
    251   background-color: var(--secondary);
    252   border-color: var(--border-dark);
     257  background-color: var(--rp-secondary);
     258  border-color: var(--rp-border-dark);
    253259}
    254260
    255261.btn-danger {
    256   background-color: var(--error);
     262  background-color: var(--rp-error);
    257263  color: white;
    258264}
     
    307313
    308314input:checked+.rp-toggle-slider {
    309   background-color: var(--primary);
     315  background-color: var(--rp-primary);
    310316}
    311317
     
    325331.badge-success {
    326332  background-color: rgba(16, 185, 129, 0.1);
    327   color: var(--success);
     333  color: var(--rp-success);
    328334}
    329335
     
    342348
    343349  .rp-pricing-card {
    344       background: var(--white);
     350      background: var(--rp-white);
    345351      border-radius: 10px;
    346352      overflow: hidden;
    347       box-shadow: var(--shadow);
     353      box-shadow: var(--rp-shadow);
    348354      width: 100%;
    349355      max-width: 300px;
    350       transition: var(--transition);
     356      transition: var(--rp-transition);
    351357      position: relative;
    352358  }
     
    360366      padding: 1rem;
    361367      text-align: center;
    362       background: linear-gradient(135deg, var(--primary), #6a5acd);
    363       color: var(--white);
     368      background: linear-gradient(135deg, var(--rp-primary), #6a5acd);
     369      color: var(--rp-white);
    364370      position: relative;
    365371  }
     
    369375      top: 0;
    370376      right: 2rem;
    371       background: var(--accent-color);
    372       color: var(--white);
     377      background: var(--rp-accent-color);
     378      color: var(--rp-white);
    373379      padding: 0.5rem 1.5rem;
    374380      font-size: 0.8rem;
     
    427433  .rp-feature-list li::before {
    428434      content: "✓";
    429       color: var(--primary);
     435      color: var(--rp-primary);
    430436      font-weight: bold;
    431437      margin-right: 0.5rem;
     
    446452      padding: 10px  0;
    447453      border: none;
    448       background: var(--primary);
    449       color: var(--white);
     454      background: var(--rp-primary);
     455      color: var(--rp-white);
    450456      font-size: 1rem;
    451457      font-weight: 600;
    452458      border-radius: 5px;
    453459      cursor: pointer;
    454       transition: var(--transition);
     460      transition: var(--rp-transition);
    455461      text-align: center;
    456462      text-decoration: none;
     
    464470
    465471  .popular .rp-pricing-button {
    466       background: var(--accent-color);
     472      background: var(--rp-accent-color);
    467473  }
    468474
     
    496502      padding: 16px;
    497503      border-right: none;
    498       border-bottom: 1px solid var(--border);
     504      border-bottom: 1px solid var(--rp-border);
    499505  }
    500506
  • replypilot-ai/trunk/includes/functions.php

    r3297027 r3309744  
    4141    );
    4242
     43   
    4344    wp_enqueue_style(
    4445        'font-awesome',
    45         plugins_url('assets/fontawesome-free-6.7.2-web/css/all.min.css', REPLYPILOT_AI_TBS_URL),
     46        plugins_url('assets/fontawesome/css/all.min.css', REPLYPILOT_AI_TBS_URL),
    4647        array(),
    4748        '6.0.0'
  • replypilot-ai/trunk/readme.txt

    r3297043 r3309744  
    11=== ReplyPilot AI ===
    22Contributors: techbeeps, gurjeet6090
    3 Tags: auto reply, AI comment reply, AI bot, comment bot,forum replies
     3Tags: auto reply, AI comment, chatbot, comment bot,ai chatbot
    44Requires at least: 5.0
    55Tested up to: 6.8
    66Requires PHP: 7.4
    7 Stable tag: 1.2
     7Stable tag: 1.3
    88License: GPL-2.0+
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html
    1010
    11 AI-powered plugin that auto-generates human-like replies to user comments across WordPress, forums, and communities.
     11AI-powered plugin that auto-generates human-like replies to user comments and provides a real-time chatbot on your website.
    1212
    1313== Description ==
    1414
    15 **ReplyPilot AI** is an advanced WordPress plugin that automatically generates context-aware, human-like replies to user comments. Designed to enhance engagement and streamline communication, it supports multiple platforms including WordPress comments, BuddyPress, wpForo, ForumWP, Asgaros Forum, and bbPress.
     15**ReplyPilot AI** is an advanced WordPress plugin that automatically generates context-aware, human-like replies to user comments and now includes an AI Chatbot. Designed to enhance engagement and streamline communication, it supports multiple platforms including WordPress comments, BuddyPress, wpForo, ForumWP, Asgaros Forum, and bbPress.
     16
     17**New in v1.3 – Chatbot Feature**
     18- Add a floating or embedded AI Chatbot to your website.
     19- Answer visitor queries in real time using AI.
     20- Customize bot appearance, greeting, and behavior.
     21- Perfect for support, FAQs, lead capture, and user interaction.
    1622
    1723**Key Features:**
     24
     25- **Chatbot Integration:** Seamlessly embed an AI chatbot on your site to assist users 24/7.
    1826
    1927- **Context-Aware AI Replies:** Understands the context, tone, and subject matter of each comment to deliver relevant and thoughtful replies.
     
    4048
    4149- **ReplyPilot AI Engine:** AI engine hosted at https://replypilot.techbeeps.com/api/.
     50- **ReplyPilot AI chatbot:** AI engine hosted at https://replypilot.techbeeps.com/api/chatbot/.
    4251
    4352**Subscription Plans:**
     
    101110You can obtain an API key by signing up on the [ReplyPilot Dashboard](https://replypilot.techbeeps.com/account/).
    102111
     112= How do I enable the chatbot? =
     113Go to **Settings > ReplyPilot AI > Configure Chatbot**, enable the toggle, customize the appearance, and save.
     114
    103115= Does this work with comment systems? =
    104116Yes, the plugin supports WordPress comments, BuddyPress, wpForo, ForumWP, Asgaros Forum, and bbPress.
     
    128140
    129141== Changelog ==
     142
     143= 1.3 =
     144* New Feature: Integrated live chatbot powered by ReplyPilot AI.
     145* Chatbot customization options added
     146
    130147= 1.2 =
    131148* Generate API Key URL Update.
    132 
    133149
    134150= 1.1 =
     
    140156== Upgrade Notice ==
    141157
    142 = 1.2 =
    143 Initial release of ReplyPilot AI with full features and multi-platform support.
     158= 1.3 =
     159New chatbot feature added. You can now provide real-time AI-powered chat support on your website.
     160
    144161
    145162== External Services ==
     
    152169   - **Terms of Service:** https://replypilot.techbeeps.com/terms-and-conditions/
    153170   - **Privacy Policy:** https://replypilot.techbeeps.com/privacy-policy/
     171
     1722. **ReplyPilot Chatbot API** (https://replypilot.techbeeps.com/api/chatbot/  )
     173   - **Purpose:** Real-time AI chat interaction 
     174   - **Data sent:** User chat messages,API key 
  • replypilot-ai/trunk/replypilot-ai.php

    r3297043 r3309744  
    33Plugin Name: ReplyPilot AI
    44Plugin URI:  https://replypilot.techbeeps.com/
    5 Description: A plugin that enables automatic replies using AI, allowing admins to configure API keys, word limits, and user selection.
    6 Version:     1.2
     5Description: AI-powered plugin that auto-generates human-like replies to user comments and provides a real-time chatbot on your website.
     6Version:     1.3
    77Author:      Techbeeps
    88Author URI:  https://techbeeps.co.in/
     
    1616}
    1717
    18 define('REPLYPILOT_AI_TBS', '1.2');
     18define('REPLYPILOT_AI_TBS', '1.3');
    1919define('REPLYPILOT_AI_TBS_PATH', plugin_dir_path(__FILE__));
    2020define('REPLYPILOT_AI_TBS_URL',  __FILE__);
    2121
    2222
    23 
     23require_once REPLYPILOT_AI_TBS_PATH . 'ai-chatbot.php';
    2424require_once REPLYPILOT_AI_TBS_PATH . 'admin.php';
    2525require_once REPLYPILOT_AI_TBS_PATH . 'autoreply-comments.php';
Note: See TracChangeset for help on using the changeset viewer.