Plugin Directory

Changeset 3393775


Ignore:
Timestamp:
11/11/2025 04:05:25 PM (3 months ago)
Author:
wpazleen
Message:

v1.5.1

Location:
askany
Files:
404 added
8 edited

Legend:

Unmodified
Added
Removed
  • askany/trunk/askany.php

    r3393344 r3393775  
    44 * Plugin URI: https://wordpress.org/plugins/askany
    55 * Description: Askany is AI-powered chat assistant using DeepSeek API and OpenAI to answer questions based on WordPress content and imported PDFs.
    6  * Version: 1.5.0
     6 * Version: 1.5.1
    77 * Requires at least: 5.9
    88 * Requires PHP:      7.4
    9  * Author: Michaelbar
    10  * Author URI: https://profiles.wordpress.org/michaelbar
     9 * Author: wpazleen
     10 * Author URI: https://profiles.wordpress.org/wpazleen
    1111 * Text Domain: askany
    1212 * Domain Path:       /languages/
     
    6666
    6767// Define plugin constants.
    68 define('ASKANY_VERSION', '1.5.0');
     68define('ASKANY_VERSION', '1.5.1');
    6969define('ASKANY_PLUGIN_FILE', __FILE__);
    7070define('ASKANY_PLUGIN_DIR', plugin_dir_path(__FILE__));
  • askany/trunk/includes/class-admin-pages.php

    r3393344 r3393775  
    273273        wp_localize_script('askany-admin', 'askanyAdmin', array(
    274274            'ajaxUrl' => admin_url('admin-ajax.php'),
    275             'nonce' => wp_create_nonce('askany-admin-nonce'),
     275            'nonce' => wp_create_nonce('askany_chat_nonce'),
    276276            'restUrl' => rest_url(),
    277277            'restNonce' => wp_create_nonce('wp_rest'),
  • askany/trunk/includes/class-ajax-handler.php

    r3393344 r3393775  
    891891     */
    892892    public function save_settings() {
    893         check_ajax_referer('askany-admin-nonce', 'nonce');
     893        check_ajax_referer('askany_chat_nonce', 'nonce');
    894894
    895895        if ( ! current_user_can('manage_options') ) {
     
    952952     */
    953953    public function reindex_content() {
    954         check_ajax_referer('askany-admin-nonce', 'nonce');
     954        check_ajax_referer('askany_chat_nonce', 'nonce');
    955955
    956956        if ( ! current_user_can('manage_options') ) {
     
    979979     */
    980980    public function add_qa_pair() {
    981         check_ajax_referer('askany-admin-nonce', 'nonce');
     981        check_ajax_referer('askany_chat_nonce', 'nonce');
    982982
    983983        if ( ! current_user_can('manage_options') ) {
     
    10381038     */
    10391039    public function update_qa_pair() {
    1040         check_ajax_referer('askany-admin-nonce', 'nonce');
     1040        check_ajax_referer('askany_chat_nonce', 'nonce');
    10411041
    10421042        if ( ! current_user_can('manage_options') ) {
     
    10771077     */
    10781078    public function delete_qa_pair() {
    1079         check_ajax_referer('askany-admin-nonce', 'nonce');
     1079        check_ajax_referer('askany_chat_nonce', 'nonce');
    10801080
    10811081        if ( ! current_user_can('manage_options') ) {
     
    11141114     */
    11151115    public function get_qa_pair() {
    1116         check_ajax_referer('askany-admin-nonce', 'nonce');
     1116        check_ajax_referer('askany_chat_nonce', 'nonce');
    11171117
    11181118        if ( ! current_user_can('manage_options') ) {
     
    11501150     */
    11511151    public function process_pdf() {
    1152         check_ajax_referer( 'askany-admin-nonce', 'nonce' );
     1152        check_ajax_referer( 'askany_chat_nonce', 'nonce' );
    11531153
    11541154        if ( ! current_user_can( 'manage_options' ) ) {
     
    12041204     */
    12051205    public function delete_pdf() {
    1206         check_ajax_referer('askany-admin-nonce', 'nonce');
     1206        check_ajax_referer('askany_chat_nonce', 'nonce');
    12071207
    12081208        if ( ! current_user_can('manage_options') ) {
     
    12361236     */
    12371237    public function clear_chat_all_history() {
    1238         check_ajax_referer('askany-admin-nonce', 'nonce');
     1238        check_ajax_referer('askany_chat_nonce', 'nonce');
    12391239
    12401240        if ( ! current_user_can('manage_options') ) {
     
    12601260     */
    12611261    public function get_provider_models() {
    1262         check_ajax_referer('askany-admin-nonce', 'nonce');
     1262        check_ajax_referer('askany_chat_nonce', 'nonce');
    12631263
    12641264        if ( ! current_user_can('manage_options') ) {
     
    12921292     */
    12931293    public function get_provider_settings() {
    1294         check_ajax_referer('askany-admin-nonce', 'nonce');
     1294        check_ajax_referer('askany_chat_nonce', 'nonce');
    12951295
    12961296        if ( ! current_user_can('manage_options') ) {
     
    13501350     */
    13511351    public function test_api_connection() {
    1352         check_ajax_referer('askany-admin-nonce', 'nonce');
     1352        check_ajax_referer('askany_chat_nonce', 'nonce');
    13531353
    13541354        if ( ! current_user_can('manage_options') ) {
     
    13961396     */
    13971397    public function add_agent() {
    1398         check_ajax_referer('askany-admin-nonce', 'nonce');
     1398        check_ajax_referer('askany_chat_nonce', 'nonce');
    13991399
    14001400        if ( ! current_user_can('manage_options') ) {
     
    14441444     */
    14451445    public function remove_agent() {
    1446         check_ajax_referer('askany-admin-nonce', 'nonce');
     1446        check_ajax_referer('askany_chat_nonce', 'nonce');
    14471447
    14481448        if ( ! current_user_can('manage_options') ) {
     
    14711471     */
    14721472    public function get_chat_sessions() {
    1473         check_ajax_referer('askany-admin-nonce', 'nonce');
     1473        check_ajax_referer('askany_chat_nonce', 'nonce');
    14741474
    14751475        if ( ! current_user_can('manage_options') ) {
     
    14881488     */
    14891489    public function get_chat_messages() {
    1490         check_ajax_referer('askany-admin-nonce', 'nonce');
     1490        check_ajax_referer('askany_chat_nonce', 'nonce');
    14911491
    14921492        if ( ! current_user_can('manage_options') ) {
     
    16811681     */
    16821682    public function assign_agent() {
    1683         check_ajax_referer('askany-admin-nonce', 'nonce');
     1683        check_ajax_referer('askany_chat_nonce', 'nonce');
    16841684
    16851685        if ( ! current_user_can('manage_options') ) {
     
    17421742     */
    17431743    public function release_agent() {
    1744         check_ajax_referer('askany-admin-nonce', 'nonce');
     1744        check_ajax_referer('askany_chat_nonce', 'nonce');
    17451745
    17461746        if ( ! current_user_can('manage_options') ) {
     
    17761776     */
    17771777    public function send_agent_message() {
    1778         check_ajax_referer('askany-admin-nonce', 'nonce');
     1778        check_ajax_referer('askany_chat_nonce', 'nonce');
    17791779
    17801780        if ( ! current_user_can('manage_options') ) {
     
    18601860        if ($is_admin_request) {
    18611861            // For admin requests, check admin nonce
    1862             $nonce_valid = wp_verify_nonce($nonce, 'askany-admin-nonce');
     1862            $nonce_valid = wp_verify_nonce($nonce, 'askany_chat_nonce');
    18631863        } else {
    18641864            // For frontend requests, check chat nonce
     
    19111911            if ($is_admin_request) {
    19121912                // For admin requests, check admin nonce
    1913                 $nonce_valid = wp_verify_nonce($nonce, 'askany-admin-nonce');
     1913                $nonce_valid = wp_verify_nonce($nonce, 'askany_chat_nonce');
    19141914            } else {
    19151915                // For frontend requests, check chat nonce
     
    19541954     */
    19551955    public function poll_messages() {
    1956         check_ajax_referer('askany-admin-nonce', 'nonce');
     1956        check_ajax_referer('askany_chat_nonce', 'nonce');
    19571957
    19581958        if ( ! current_user_can('manage_options') ) {
     
    19891989        if ( $type === 'toggle' ) {
    19901990            // For toggle operations, use the admin nonce
    1991             check_ajax_referer('askany-admin-nonce', 'nonce');
     1991            check_ajax_referer('askany_chat_nonce', 'nonce');
    19921992        } else {
    19931993            // For form submissions, use the home settings nonce
     
    20482048     */
    20492049    public function save_home_faq() {
    2050         check_ajax_referer('askany-admin-nonce', 'nonce');
     2050        check_ajax_referer('askany_chat_nonce', 'nonce');
    20512051
    20522052        if ( ! current_user_can('manage_options') ) {
     
    20842084     */
    20852085    public function get_home_faq() {
    2086         check_ajax_referer('askany-admin-nonce', 'nonce');
     2086        check_ajax_referer('askany_chat_nonce', 'nonce');
    20872087
    20882088        if ( ! current_user_can('manage_options') ) {
     
    21112111     */
    21122112    public function delete_home_faq() {
    2113         check_ajax_referer('askany-admin-nonce', 'nonce');
     2113        check_ajax_referer('askany_chat_nonce', 'nonce');
    21142114
    21152115        if ( ! current_user_can('manage_options') ) {
     
    21382138     */
    21392139    public function toggle_home_faq() {
    2140         check_ajax_referer('askany-admin-nonce', 'nonce');
     2140        check_ajax_referer('askany_chat_nonce', 'nonce');
    21412141
    21422142        if ( ! current_user_can('manage_options') ) {
     
    21662166     */
    21672167    public function save_home_link() {
    2168         check_ajax_referer('askany-admin-nonce', 'nonce');
     2168        check_ajax_referer('askany_chat_nonce', 'nonce');
    21692169
    21702170        if ( ! current_user_can('manage_options') ) {
     
    22032203     */
    22042204    public function get_home_link() {
    2205         check_ajax_referer('askany-admin-nonce', 'nonce');
     2205        check_ajax_referer('askany_chat_nonce', 'nonce');
    22062206
    22072207        if ( ! current_user_can('manage_options') ) {
     
    22302230     */
    22312231    public function delete_home_link() {
    2232         check_ajax_referer('askany-admin-nonce', 'nonce');
     2232        check_ajax_referer('askany_chat_nonce', 'nonce');
    22332233
    22342234        if ( ! current_user_can('manage_options') ) {
     
    22572257     */
    22582258    public function toggle_home_link() {
    2259         check_ajax_referer('askany-admin-nonce', 'nonce');
     2259        check_ajax_referer('askany_chat_nonce', 'nonce');
    22602260
    22612261        if ( ! current_user_can('manage_options') ) {
     
    22852285     */
    22862286    public function clear_chat_history() {
    2287         check_ajax_referer('askany-admin-nonce', 'nonce');
     2287        check_ajax_referer('askany_chat_nonce', 'nonce');
    22882288
    22892289        if ( ! current_user_can('manage_options') ) {
     
    23122312     */
    23132313    public function delete_user_session() {
    2314         check_ajax_referer('askany-admin-nonce', 'nonce');
     2314        check_ajax_referer('askany_chat_nonce', 'nonce');
    23152315
    23162316        if ( ! current_user_can('manage_options') ) {
     
    23772377     */
    23782378    public function get_api_stats() {
    2379         check_ajax_referer('askany-admin-nonce', 'nonce');
     2379        check_ajax_referer('askany_chat_nonce', 'nonce');
    23802380
    23812381        if ( ! current_user_can('manage_options') ) {
     
    24022402     */
    24032403    public function refresh_api_stats() {
    2404         check_ajax_referer('askany-admin-nonce', 'nonce');
     2404        check_ajax_referer('askany_chat_nonce', 'nonce');
    24052405
    24062406        if ( ! current_user_can('manage_options') ) {
     
    24312431     */
    24322432    public function get_paginated_errors() {
    2433         check_ajax_referer('askany-admin-nonce', 'nonce');
     2433        check_ajax_referer('askany_chat_nonce', 'nonce');
    24342434
    24352435        if ( ! current_user_can('manage_options') ) {
     
    24542454     */
    24552455    public function clear_api_errors() {
    2456         check_ajax_referer('askany-admin-nonce', 'nonce');
     2456        check_ajax_referer('askany_chat_nonce', 'nonce');
    24572457
    24582458        if ( ! current_user_can('manage_options') ) {
     
    24862486     */
    24872487    public function get_paginated_chat_logs() {
    2488         check_ajax_referer('askany-admin-nonce', 'nonce');
     2488        check_ajax_referer('askany_chat_nonce', 'nonce');
    24892489
    24902490        if ( ! current_user_can('manage_options') ) {
     
    25092509     */
    25102510    public function clear_chat_logs() {
    2511         check_ajax_referer('askany-admin-nonce', 'nonce');
     2511        check_ajax_referer('askany_chat_nonce', 'nonce');
    25122512
    25132513        if ( ! current_user_can('manage_options') ) {
  • askany/trunk/includes/class-pdf-upload-handler.php

    r3296689 r3393775  
    7272    public function handle_pdf_upload() {
    7373        // Check nonce for security.
    74         if ( ! isset($_POST['nonce']) || ! wp_verify_nonce(sanitize_text_field( wp_unslash($_POST['nonce'])), 'askany-admin-nonce') ) {
     74        if ( ! isset($_POST['nonce']) || ! wp_verify_nonce(sanitize_text_field( wp_unslash($_POST['nonce'])), 'askany_chat_nonce') ) {
    7575            wp_send_json_error(array( 'message' => 'Security check failed.' ), 403);
    7676        }
     
    333333    public function handle_pdf_delete() {
    334334        // Check nonce for security.
    335         if ( ! isset($_POST['nonce']) || ! wp_verify_nonce(sanitize_text_field( wp_unslash($_POST['nonce'])), 'askany-admin-nonce') ) {
     335        if ( ! isset($_POST['nonce']) || ! wp_verify_nonce(sanitize_text_field( wp_unslash($_POST['nonce'])), 'askany_chat_nonce') ) {
    336336            wp_send_json_error(array( 'message' => 'Security check failed.' ), 403);
    337337        }
  • askany/trunk/readme.txt

    r3393344 r3393775  
    11=== AskAny - AI-Powered Chat Assistant ===
    2 Contributors: michaelbar, wpazleen
     2Contributors: wpazleen
    33Tags: ai chat, chatbot, customer support, woocommerce, pdf search, openai, deepseek
    44Requires at least: 5.9
    55Tested up to: 6.8
    6 Stable tag: 1.5.0
     6Stable tag: 1.5.1
    77Requires PHP: 7.4
    88License: GPLv2 or later
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html
    1010
    11 Transform your WordPress site with AI-powered assistant featuring with SSE technology for instant responses and unmatched performance.
     11Transform your WordPress site with AI-powered assistant for instant responses and unmatched performance.
    1212
    1313== Description ==
    1414
    15 **AskAny - AI Chatbot for WooCommerce & WordPress** is the most advanced **AI chat** assistant featuring breakthrough **SSE technology**. Powered by **OpenAI** and **DeepSeek**, this revolutionary **chatbot** delivers **instant responses**, **reduced server load**, and **seamless communication** that transforms your **customer support** experience.
     15**AskAny - AI Chatbot for WooCommerce & WordPress** is the most advanced **AI chat** assistant featuring breakthrough **SSE technology**,  powered by **OpenAI**, **DeepSeek**, and **Gemini**. This revolutionary **chatbot** delivers **instant responses**, **reduced server load**, and **seamless communication** that transforms your **customer support** experience.
    1616
    1717Whether you run a **WooCommerce** store or a content-rich **WordPress** site, AskAny combines **AI chat**, **PDF search**, and contextual understanding to provide the most intelligent **customer support chatbot** experience.
     
    1919## Why AskAny Is the Ultimate AI Chatbot for WooCommerce & WordPress
    2020
    21 ### 🚀 Revolutionary SSE Technology
    22 
    23 **AskAny delivering:
    24 
    25 - ⚡ **Instant Responses**: 100ms delivery vs 3000ms with traditional plugins
    26 - 🔥 **90% Less Server Load**: Eliminates constant polling, dramatically improves performance
    27 - 🌐 **True Real-Time Chat**: Messages appear instantly, like WhatsApp or Telegram
    28 - 🛡️ **Automatic Fallback**: Seamlessly switches to polling if SSE isn't supported
    29 - 📱 **Zero Configuration**: Works out-of-the-box, no server setup required
    30 
    31 **This breakthrough technology makes AskAny 30x faster than any other WordPress chatbot plugin.**
    32 
    33 Managing a website or **WooCommerce** store involves constant customer queries. AskAny uses **OpenAI**, **DeepSeek**, and revolutionary **SSE real-time technology** to automatically handle repetitive questions, product inquiries, and form submissions giving you more time to focus on business.
    34 
    35 ### 💬 24/7 AI Chat Customer Support
    36 
    37 AskAny works like a human agent but smarter and faster. This **AI chatbot** provides real-time **customer support**, understands product catalogs, navigates site content, and offers instant answers even while you sleep. Every **AI chat** response is powered by **OpenAI** or **DeepSeek** and tailored to your website’s content. AskAny offers flexible **customer support** through both **AI chat** and real-time agents.
    38 
    39 - ✅ Assign any registered WordPress user as a **live agent**
    40 - ✅ Let agents jump into chats alongside the **AI chatbot**
    41 - ✅ Perfect for offering **hybrid support**: human + AI 
    42 - ✅ On weekends or off-hours, full **AI chat** takes over seamlessly 
    43 - ✅ Every conversation is powered by **OpenAI** or **DeepSeek** and context-aware
    44 
    45 This dual system ensures users always receive a response whether from a real support agent or the intelligent **AI chatbot**.
    46 
    47 ### 🛍️ Designed for WooCommerce Excellence
    48 
    49 Not just any **chatbot** this is your **AI chat** sales team. It’s fully integrated with **WooCommerce**, allowing users to:
    50 
    51 - Discover products via **AI chat**
    52 - See product cards with price, image, and stock info
    53 - Add items to cart right from the **chatbot**
    54 - Get custom answers based on product data 
    55 - Reduce pre-sale questions through automated **customer support**
    56 
    57 Whether you're upselling or troubleshooting, AskAny’s **WooCommerce** integration handles it with ease.
    58 
    59 ### 📄 Intelligent PDF Search & Document AI
    60 
    61 AskAny includes powerful **PDF search** features. Upload manuals, guides, or policy documents, and the **AI chatbot** will intelligently extract answers from them. Using **DeepSeek** and **OpenAI**, this makes the plugin ideal for knowledge bases and documentation-heavy sites.
    62 
    63 ### 🧾 Forms Inside the Chatbot (No Page Reload!)
    64 
    65 Connect any form plugin (like Contact Form 7, WPForms, Gravity Forms, Simple Form) directly inside the **AI chat** widget:
    66 
    67 - Capture leads 
    68 - Get user feedback 
    69 - Run surveys or polls 
    70 - Offer support via embedded forms 
    71 
    72 All within the same **chatbot** window no popups or redirects. This keeps your users engaged and improves your **customer support** experience.
    73 
    74 ### 🧠 AI Chat That Understands Your Website
    75 
    76 Built specifically for **WordPress**, not just compatible. This **AI chat** assistant can:
    77 
    78 - Understand pages, posts, FAQs 
    79 - Handle **WooCommerce** products natively 
    80 - Search content and documents via **PDF search** 
    81 - Use **OpenAI** or **DeepSeek** for context-aware responses 
    82 - Let you customize Q&A behavior 
    83 
    84 It’s not just a **chatbot**, it’s a full-on **AI chat** system designed for seamless **customer support**.
     21### ⚡ Revolutionary Real-Time Chat (Industry First!)
     22
     23AskAny is the **only AI chatbot** that uses **Server-Sent Events (SSE)** for true real-time performance.
     24
     25- 🔥 **90% Less Server Load** — No more heavy polling, ultra-light performance 
     26- 🌐 **True Real-Time Messaging** — Replies appear instantly, like WhatsApp or Telegram 
     27- 🛡️ **Automatic Fallback Mode** — Smoothly switches to polling if SSE isn’t supported 
     28- 📱 **Zero Configuration** — Works instantly, no technical setup needed 
     29- 🌍 **External Website Indexing** — Crawl and index **external websites** to feed your AI assistant with extended knowledge 
     30
     31AskAny delivers **30x faster responses** than traditional chatbot plugins — combining speed, accuracy, and real-time intelligence.
     32
     33## 💬 24/7 AI Chat Support That Never Sleeps
     34
     35AskAny acts as a **smart support agent** that’s always online — answering questions, browsing content, and even handling WooCommerce interactions.
     36
     37- 🤖 AI chat powered by **OpenAI**, **DeepSeek**, and **Gemini** 
     38- 👥 Assign real **support agents** for hybrid human + AI chat 
     39- 🔄 Seamless **AI-to-Agent** conversation handover 
     40- 🌙 **AI takeover** during off-hours or weekends 
     41- 💾 Every conversation saved in your dashboard 
     42
     43Your visitors always get the best of both worlds: **instant AI assistance** or **human chat support** when needed.
     44
     45# 🛍️ Designed for WooCommerce Success
     46
     47AskAny isn’t just a chatbot it’s your **AI sales assistant**. 
     48It understands your product catalog, pricing, and stock in real-time.
     49
     50- 🛒 Show product cards with **images, price, and stock info** 
     51- 🧭 Smart **product recommendations** and upselling 
     52- 🗂️ Fetch product info directly in chat 
     53- 💬 Add to cart directly from the chat window 
     54- 📦 Reduce repetitive pre-sale questions 
     55
     56Drive more sales while cutting down manual support automatically.
     57
     58## 📄 Intelligent Document & PDF Search
     59
     60AskAny’s **Document AI** allows users to search through uploaded manuals, policies, or guides right inside chat.
     61
     62- 📚 Upload **PDFs or documents** to serve as your knowledge base 
     63- 🧠 AskAny extracts **contextual answers** using AI 
     64- 🔍 Combine document-based results with AI chat for precise responses 
     65
     66Perfect for **knowledge bases**, **policy documentation**, or **training materials**.
     67
     68## 🌐 External Website Crawling & Indexing
     69
     70Go beyond your WordPress site. 
     71With AskAny’s **External Website Indexing**, you can connect and crawl external websites to expand your AI’s knowledge.
     72
     73- 🌍 Add URLs or entire domains to index their content 
     74- 🔎 Allow your AI to reference information from trusted sources 
     75- 🧩 Combine internal + external data for richer AI responses 
     76- 🧠 Perfect for multi-brand support, documentation hubs, and SaaS integrations 
     77
     78Empower your AI to understand your **whole digital ecosystem** — not just one site.
     79
     80
     81## 🧾 Forms Inside the Chatbot (No Reload Needed)
     82
     83Enable any form plugin directly inside the chat widget: 
     84(Contact Form 7, WPForms, Gravity Forms, Simple Form, etc.)
     85
     86- 💡 Capture leads instantly 
     87- 🗣️ Run surveys and polls 
     88- 💬 Handle feedback and support queries 
     89- ⚙️ No page reloads or popups 
     90
     91Keep users engaged and capture valuable information effortlessly.
     92
     93
     94## 🧠 AI That Understands Your Website
     95
     96AskAny is designed **specifically for WordPress** and deeply integrated with your site’s data.
     97
     98- 📄 Reads and understands pages, posts, and FAQs 
     99- 🏷️ Handles WooCommerce products natively 
     100- 📚 Supports **PDF search** for document-based responses 
     101- ⚙️ Integrates **OpenAI**, **DeepSeek**, and **Gemini** for intelligence 
     102- 🎯 Customizable **Q&A** logic and behavior 
     103
     104Your users get **contextual, relevant, and instant answers** every time.
     105
    85106
    86107
     
    189210   * Service information
    190211
    191    
    192 == Usage ==
    193 
    194 Basic Shortcode:
    195 [askany_chat]
    196 
    197 Advanced Shortcode Options:
    198 [askany_chat title="Customer Support" theme="dark" position="bottom-right" width="350px" height="500px"]
    199 
    200 Available Attributes:
    201 * title - Chat window title
    202 * placeholder - Input placeholder text
    203 * button_text - Send button text
    204 * theme - Theme (light/dark)
    205 * position - Position (inline/bottom-left/bottom-right)
    206 * width - Width (e.g., 350px)
    207 * height - Height (e.g., 500px)
    208 
    209212== Installation ==
    210213
     
    218221
    219222= API Key =
    220 To obtain an API key, you must [register with Open AI](https://platform.openai.com/login?launch) or [register with DeepSeek](https://platform.deepseek.com/login?launch). Here you can find free [Open AI API key](https://help.openai.com/en/articles/4936850-where-do-i-find-my-openai-api-key).
     223To obtain an API key for the AI Assistant, you must register with one of the following providers:
     224
     225* **OpenAI:** Register with [Open AI](https://platform.openai.com/login?launch) or log in to obtain your key.
     226    * Find your key here: [Open AI API Key Location](https://help.openai.com/en/articles/4936850-where-do-i-find-my-openai-api-key)
     227* **DeepSeek:** Register with [DeepSeek](https://platform.deepseek.com/login?launch) or log in to obtain your key.
     228* **Google Gemini:** Log in to [Google AI Studio](https://aistudio.google.com/app/apikey) to generate and manage your Gemini API key.
     229
    221230
    222231== Privacy Notes ==
    223232
    224 The AI Assistant accesses the API interface of Open AI to generate responses based on your indexing Content, PDF and Q&A.
    225 
    226 Data is sent to and retrieved from the following interfaces:
    227 
    228 - https://api.openai.com/v1/chat/completions
    229 - https://api.deepseek.com/v1/chat/completions
    230 
    231 Here you can find all information about the terms of use and data protection of Open AI: https://openai.com/policies and DeepSeek AI : https://deepseek.com/terms-of-service.
     233The AI Assistant accesses the API interface of your chosen provider (OpenAI, DeepSeek, or Google Gemini) to generate responses based on your indexing Content, PDF, and Q&A.
     234
     235Data is sent to and retrieved from the following interfaces:
     236
     237* `https://api.openai.com/v1/chat/completions`
     238* `https://api.deepseek.com/v1/chat/completions`
     239* `https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent`
     240
     241== Policy Information ==
     242Please review the full terms of use and data protection policies for the AI providers you choose to use:
     243
     244* **OpenAI:** [OpenAI Policies](https://openai.com/policies)
     245* **DeepSeek AI:** [DeepSeek AI Terms of Service](https://deepseek.com/terms-of-service)
     246* **Google Gemini:**
     247    * [Gemini API Additional Terms of Service](https://ai.google.dev/gemini-api/terms)
     248    * [Google API Services User Data Policy](https://policies.google.com/terms/service-specific?hl=en-US)
     249   
    232250
    233251== Frequently Asked Questions ==
     
    255273== Screenshots ==
    256274
    257 1. Chat widget in action
     2751. 💬 Chat Widget in Action – See the live chat experience on the frontend.
     276
     2772. 🧑‍💻 Agent Chat Interface – Manage real-time conversations from the backend.
     278
     2793. 🏠 Homepage Settings – Configure chat display and entry behavior easily.
     280
     2814. 🤖 AI Assistant Setup – Connect and customize your AI assistant effortlessly.
     282
     2835. 👥 AI Agent Management – Add, edit, or organize multiple AI agents.
     284
     2856. ⚡ AI Replies in Chat Panel – Experience instant AI-generated markdown supported responses.
     286
     2877. 🧩 Embed Form Support – Seamlessly integrate chat forms anywhere on your site.
     288
    258289
    259290== Changelog ==
     291
     292= 1.5.1 – 12 Nov 2025 =
     293- ✨ Improved frontend chat typing indicator
     294- ⚙️ Fixed all frontend bug and logs
    260295
    261296= 1.5.0 – 11 Nov 2025 =
  • askany/trunk/templates/admin-api-stats.php

    r3336134 r3393775  
    518518        jQuery.post(ajaxurl, {
    519519            action: 'askany_get_paginated_errors',
    520             nonce: '<?php echo wp_create_nonce( 'askany-admin-nonce' ); ?>',
     520            nonce: '<?php echo wp_create_nonce( 'askany_chat_nonce' ); ?>',
    521521            page: page,
    522522            per_page: errorsPerPage,
     
    661661        jQuery.post(ajaxurl, {
    662662            action: 'askany_clear_api_errors',
    663             nonce: '<?php echo wp_create_nonce( 'askany-admin-nonce' ); ?>',
     663            nonce: '<?php echo wp_create_nonce( 'askany_chat_nonce' ); ?>',
    664664            days: days
    665665        }, function(response) {
  • askany/trunk/templates/admin-chat-logs.php

    r3336134 r3393775  
    193193        jQuery.post(ajaxurl, {
    194194            action: 'askany_get_paginated_chat_logs',
    195             nonce: '<?php echo wp_create_nonce( 'askany-admin-nonce' ); ?>',
     195            nonce: '<?php echo wp_create_nonce( 'askany_chat_nonce' ); ?>',
    196196            page: page,
    197197            per_page: logsPerPage,
     
    364364        jQuery.post(ajaxurl, {
    365365            action: 'askany_clear_chat_logs',
    366             nonce: '<?php echo wp_create_nonce( 'askany-admin-nonce' ); ?>',
     366            nonce: '<?php echo wp_create_nonce( 'askany_chat_nonce' ); ?>',
    367367            days: days
    368368        }, function(response) {
  • askany/trunk/templates/admin-pdf-import.php

    r3295859 r3393775  
    9191                                <button type="button" class="button button-small delete-pdf"
    9292                                        data-id="<?php echo esc_attr($pdf->id); ?>"
    93                                         data-nonce="<?php echo esc_attr(wp_create_nonce('askany-admin-nonce')); ?>">
     93                                        data-nonce="<?php echo esc_attr(wp_create_nonce('askany_chat_nonce')); ?>">
    9494                                    <?php esc_html_e('Delete', 'askany'); ?>
    9595                                </button>
Note: See TracChangeset for help on using the changeset viewer.