Plugin Directory

Changeset 3336712


Ignore:
Timestamp:
07/30/2025 02:59:16 PM (7 months ago)
Author:
cameron434
Message:

Update trunk 1.1.3

Location:
dialbunny/trunk
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • dialbunny/trunk/app.php

    r3328438 r3336712  
    7373                </div>
    7474                                <div class="menu-item show menu-accordion">
    75                   <a class="menu-link" href="<?php echo esc_url(wp_nonce_url($dialbunnyDashboardUrl.'&dashboardpage=voiceassistant', 'DialBunny', 'user_nonce')); ?>">
     75                  <a class="menu-link" href="<?php echo esc_url(wp_nonce_url($dialbunnyDashboardUrl.'&dashboardpage=aiassistant', 'DialBunny', 'user_nonce')); ?>">
    7676                    <span class="menu-link">
    7777                        <span class="menu-bullet">
     
    167167                    echo 'Inbound Calls';
    168168                                    break;
    169                                     case 'voiceassistant':
     169                                    case 'aiassistant':
    170170                    echo 'AI Assistant';
    171171                                    break;
     
    231231                include(plugin_dir_path(__FILE__) . 'lib/views/dashboard/inbound.php');
    232232                break;
    233                                 case 'voiceassistant':
    234                 include(plugin_dir_path(__FILE__) . 'lib/views/dashboard/voice_assistant.php');
    235                 break;
    236                                 case 'messagesassistant':
    237                 include(plugin_dir_path(__FILE__) . 'lib/views/dashboard/messages_assistant.php');
     233                                case 'aiassistant':
     234                include(plugin_dir_path(__FILE__) . 'lib/views/dashboard/ai_assistant.php');
    238235                break;
    239236                                case 'calendar':
     
    395392                        </div>
    396393                                        <div class="menu-item show menu-accordion">
    397                           <a class="menu-link text-dark" href="<?php echo esc_url(wp_nonce_url($dialbunnyDashboardUrl.'&dashboardpage=voiceassistant', 'DialBunny', 'user_nonce')); ?>">
     394                          <a class="menu-link text-dark" href="<?php echo esc_url(wp_nonce_url($dialbunnyDashboardUrl.'&dashboardpage=aiassistant', 'DialBunny', 'user_nonce')); ?>">
    398395                            <span class="menu-link">
    399396                                <span class="menu-bullet">
  • dialbunny/trunk/dialbunny.php

    r3328438 r3336712  
    44 Plugin URI: https://dialbunny.com/
    55 Description: Easily manage inbound and outbound phone calls and text messages
    6  Version: 1.1.2
     6 Version: 1.1.3
    77 Author:DialBunny
    88 Author URI: https://dialbunny.com
  • dialbunny/trunk/lib/controllers/dashboard.php

    r3325864 r3336712  
    110110    if (isset($_POST['busy'])) { $rawdata['ai_busy'] = sanitize_textarea_field(wp_unslash($_POST['busy'])); } else { $rawdata['ai_busy'] = 0; }
    111111    if (isset($_POST['timetable'])) { $rawdata['ai_timetable'] = sanitize_textarea_field(wp_unslash($_POST['timetable'])); } else { $rawdata['ai_timetable'] = 0; }
    112     if (isset($_POST['id'])) { $rawdata['id'] = sanitize_textarea_field(wp_unslash($_POST['id'])); } else { $rawdata['id'] = 0; }
    113     if (isset($_POST['greeting'])) { $rawdata['greeting'] = sanitize_textarea_field(wp_unslash($_POST['greeting'])); } else { $rawdata['greeting'] = 0; }
    114     if (isset($_POST['voice'])) { $rawdata['voice'] = sanitize_textarea_field(wp_unslash($_POST['voice'])); } else { $rawdata['voice'] = 0; }
     112    if (isset($_POST['twilio_sid'])) { $rawdata['twilio_sid'] = sanitize_textarea_field(wp_unslash(str_replace(' ', '', $_POST['twilio_sid']))); } else { $rawdata['twilio_sid'] = ''; }
     113    if (isset($_POST['vapi_sip'])) { $rawdata['vapi_sip'] = sanitize_textarea_field(wp_unslash(str_replace(' ', '', $_POST['vapi_sip']))); } else { $rawdata['vapi_sip'] = ''; }
     114    if (isset($_POST['radio'])) { $rawdata['voice_company'] = sanitize_textarea_field(wp_unslash($_POST['radio'])); } else { $rawdata['voice_company'] = 'twilio'; }
     115    if (!empty($_POST['greeting'])) { $rawdata['greeting'] = sanitize_textarea_field(wp_unslash($_POST['greeting'])); } else { $rawdata['greeting'] = 'Hi! Ask me anything!'; }
     116    if (!empty($_POST['voice'])) { $rawdata['voice'] = sanitize_textarea_field(wp_unslash($_POST['voice'])); } else { $rawdata['voice'] = 'en-US-Journey-O'; }
     117    if (isset($_POST['messages'])) { $rawdata['ai_messages'] = sanitize_textarea_field(wp_unslash($_POST['messages'])); } else { $rawdata['ai_messages'] = 0; }
    115118    $json_data = wp_json_encode($rawdata);
    116119    $data['voice_assistant'] = $json_data;
  • dialbunny/trunk/lib/controllers/webcalling.php

    r3325864 r3336712  
    2424      // Direct database query used below – $wpdb->prepare() is always used to prevent SQL injection.
    2525      $result = $wpdb->get_row($wpdb->prepare("SELECT web_token FROM {$wpdb->prefix}dialbunny_phone_details WHERE user = %d AND token_created >= (NOW() - INTERVAL 15 MINUTE) LIMIT 1",$user_id)); // phpcs:ignore WordPress.DB.DirectDatabaseQuery
     26      // AND token_created >= (NOW() - INTERVAL 15 MINUTE)
    2627
    2728      if (isset($opened_item[0]->web_token)) {
     
    262263        $response->say($sayText);
    263264        // AI assistant response
    264         if ($voiceAssistantData['ai_timetable'] == 1 && isset($voiceAssistantData['id']) && isset($voiceAssistantData['greeting']) && isset($voiceAssistantData['voice']))
    265         {
    266           $connect = $response->connect();
    267           $connect->assistant([
    268               'id' => $voiceAssistantData['id'],
    269               'welcomeGreeting' => $voiceAssistantData['greeting'],
    270               'voice' => $voiceAssistantData['voice'],
    271           ]);
     265        if ($voiceAssistantData['ai_timetable'] == 1)
     266        {
     267          if ($voiceAssistantData['voice_company'] === 'twilio') {
     268            if (empty($voiceAssistantData['twilio_sid'])) { $response->say("No valid Twilio SID key was saved. Goodbye."); echo $response; exit; }
     269            $connect = $response->connect();
     270            $connect->assistant([
     271                'id' => $voiceAssistantData['twilio_sid'],
     272                'welcomeGreeting' => $voiceAssistantData['greeting'],
     273                'voice' => $voiceAssistantData['voice'],
     274            ]);
     275          }
     276          elseif ($voiceAssistantData['voice_company'] === 'vapi')
     277          {
     278            if (empty($voiceAssistantData['vapi_sip'])) { $response->say("No valid Vapi SIP key was saved. Goodbye."); echo $response; exit; }
     279            $response->dial()->sip($voiceAssistantData['vapi_sip']);
     280          }
    272281        }
    273282        // Twilio expects raw XML, Twilio will fail to parse this response if escaped
     
    291300
    292301        // AI assistant response
    293         if ($voiceAssistantData['ai_initiated'] == 1 && isset($voiceAssistantData['id']) && isset($voiceAssistantData['greeting']) && isset($voiceAssistantData['voice']))
    294         {
    295           $connect = $response->connect();
    296           $connect->assistant([
    297               'id' => $voiceAssistantData['id'],
    298               'welcomeGreeting' => $voiceAssistantData['greeting'],
    299               'voice' => $voiceAssistantData['voice'],
    300           ]);
     302        if ($voiceAssistantData['ai_initiated'] == 1)
     303        {
     304          if ($voiceAssistantData['voice_company'] === 'twilio') {
     305            if (empty($voiceAssistantData['twilio_sid'])) { $response->say("No valid Twilio SID key was saved. Goodbye."); echo $response; exit; }
     306            $connect = $response->connect();
     307            $connect->assistant([
     308                'id' => $voiceAssistantData['twilio_sid'],
     309                'welcomeGreeting' => $voiceAssistantData['greeting'],
     310                'voice' => $voiceAssistantData['voice'],
     311            ]);
     312          }
     313          elseif ($voiceAssistantData['voice_company'] === 'vapi')
     314          {
     315            if (empty($voiceAssistantData['vapi_sip'])) { $response->say("No valid Vapi SIP key was saved. Goodbye."); echo $response; exit; }
     316            $response->dial()->sip($voiceAssistantData['vapi_sip']);
     317          }
    301318        }
    302319
     
    315332
    316333        // AI assistant response
    317         if ($voiceAssistantData['ai_busy'] == 1 && isset($voiceAssistantData['id']) && isset($voiceAssistantData['greeting']) && isset($voiceAssistantData['voice']))
    318         {
    319           $connect = $response->connect();
    320           $connect->assistant([
    321               'id' => $voiceAssistantData['id'],
    322               'welcomeGreeting' => $voiceAssistantData['greeting'],
    323               'voice' => $voiceAssistantData['voice'],
    324           ]);
     334        if ($voiceAssistantData['ai_busy'] == 1)
     335        {
     336          if ($voiceAssistantData['voice_company'] === 'twilio') {
     337            if (empty($voiceAssistantData['twilio_sid'])) { $response->say("No valid Twilio SID key was saved. Goodbye."); echo $response; exit; }
     338            $connect = $response->connect();
     339            $connect->assistant([
     340                'id' => $voiceAssistantData['twilio_sid'],
     341                'welcomeGreeting' => $voiceAssistantData['greeting'],
     342                'voice' => $voiceAssistantData['voice'],
     343            ]);
     344          }
     345          elseif ($voiceAssistantData['voice_company'] === 'vapi')
     346          {
     347            if (empty($voiceAssistantData['vapi_sip'])) { $response->say("No valid Vapi SIP key was saved. Goodbye."); echo $response; exit; }
     348            $response->dial()->sip($voiceAssistantData['vapi_sip']);
     349          }
    325350        }
    326351
Note: See TracChangeset for help on using the changeset viewer.