예제 #1
0
     $object = new AastraIPPhoneExecute();
     $object->addEntry('Key:Goodbye');
     $object->setTriggerDestroyonExit();
     break;
     # Callback
 # Callback
 case 'callback':
     # Input Screen
     require_once 'AastraIPPhoneInputScreen.class.php';
     $object = new AastraIPPhoneInputScreen();
     $object->setDestroyOnExit();
     # Input number
     $object->setTitle(Aastra_get_label('Edit Number', $language));
     $object->setType('number');
     $object->setPrompt(Aastra_get_label('Number to dial', $language));
     $object->setParameter('paused');
     $object->setURL($XML_SERVER . '&action=dial&msg=' . $msg . '&cause=' . $cause);
     $object->setDefault($cause);
     # Common Softkeys
     $object->addSoftkey('1', Aastra_get_label('Backspace', $language), 'SoftKey:BackSpace');
     $object->addSoftkey('5', Aastra_get_label('Dial', $language), 'SoftKey:Submit');
     $object->addSoftkey('6', Aastra_get_label('Cancel', $language), $XML_SERVER . '&action=detail&msg=' . $msg);
     break;
     # Dial
 # Dial
 case 'dial':
     # PhoneExecute
     require_once 'AastraIPPhoneExecute.class.php';
     $object = new AastraIPPhoneExecute();
     # Number not valid?
     if (strlen($paused) < 1 || preg_match('/[^0-9]/', $paused)) {
예제 #2
0
     }
     break;
     # Edit personal numbers
 # Edit personal numbers
 case 'edit_info':
     # Retrieve stored data
     $array_user = Aastra_manage_userinfo_Asterisk($user, 'get');
     # Various labels
     $array_type = array('cell' => array('Cell Phone', 'Cell phone number'), 'home' => array('Home Phone', 'Home phone number'), 'other' => array('Other Phone', 'Other phone number'));
     # Input new call forward
     require_once 'AastraIPPhoneInputScreen.class.php';
     $object = new AastraIPPhoneInputScreen();
     $object->setDestroyOnExit();
     $object->setTitle($array_type[$type][0]);
     $object->setPrompt($array_type[$type][1]);
     $object->setParameter('value');
     $object->setType('number');
     $object->setURL($XML_SERVER . '&action=set_info&type=' . $type);
     $object->setDefault($array_user[$type]);
     # Softkeys
     if ($nb_softkeys) {
         if ($nb_softkeys == 6) {
             $object->addSoftkey('1', Aastra_get_label('Backspace', $language), 'SoftKey:BackSpace');
             $object->addSoftkey('5', Aastra_get_label('Cancel', $language), $XML_SERVER . '&action=info&type=' . $type);
             $object->addSoftkey('6', Aastra_get_label('Submit', $language), 'SoftKey:Submit');
         } else {
             $object->addSoftkey('10', Aastra_get_label('Cancel', $language), $XML_SERVER . '&action=info&type=' . $type);
             $object->setCancelAction($XML_SERVER . '&action=info&type=' . $type);
         }
     }
     break;
예제 #3
0
$XML_SERVER .= '?user='******'biorhytm', 'user='******'1.4.2.', 0);
Aastra_test_php_function('imagecreate', Aastra_get_label('PHP-GD extension not installed.', $language));
$nb_softkeys = Aastra_number_softkeys_supported();
# Nothing entered
if ($bdate == '') {
    $date = Aastra_get_user_context($user, 'biorhytm');
    $object = new AastraIPPhoneInputScreen();
    $object->setTitle(Aastra_get_label('Biorhythms', $language));
    $object->setPrompt(Aastra_get_label('Birth Date (MM/DD/YYYY)', $language));
    $object->setParameter('bdate');
    $object->setType('dateUS');
    $object->setURL($XML_SERVER);
    $object->setDefault($date);
    $object->setDestroyOnExit();
    if ($nb_softkeys == 10) {
        $object->addSoftkey('10', Aastra_get_label('Exit', $language), "SoftKey:Exit");
    }
} else {
    # Save user context
    Aastra_save_user_context($user, 'biorhytm', $bdate);
    # Extract day/month/year
    $birthMonth = substr($bdate, 0, 2);
    $birthDay = substr($bdate, 3, 2);
    $birthYear = substr($bdate, 6, 4);
    # check date for validity, display error message if invalid
예제 #4
0
         }
         $object->setCancelAction($XML_SERVER . '&user='******'launch';
     }
     break;
     # Password
 # Password
 case 'password':
     # Input Password
     require_once 'AastraIPPhoneInputScreen.class.php';
     $object = new AastraIPPhoneInputScreen();
     $object->setTitle(sprintf(Aastra_get_label('VoiceMail Access (%s)', $language), $user));
     $object->setPrompt(Aastra_get_label('Enter Password', $language));
     $object->setParameter('pin');
     $object->setType('number');
     $object->setURL($XML_SERVER . '&user='******'&action=check');
     $object->setPassword();
     $object->setDestroyOnExit();
     # Softkeys
     if ($nb_softkeys) {
         if ($nb_softkeys == 6) {
             $object->addSoftkey('1', Aastra_get_label('Backspace', $language), 'SoftKey:BackSpace');
             $object->addSoftkey('4', Aastra_get_label('Chg. User', $language), $XML_SERVER);
             $object->addSoftkey('5', Aastra_get_label('Submit', $language), 'SoftKey:Submit');
             $object->addSoftkey('6', Aastra_get_label('Exit', $language), 'SoftKey:Exit');
         } else {
             $object->addSoftkey('9', Aastra_get_label('Change User', $language), $XML_SERVER);
             $object->addSoftkey('10', Aastra_get_label('Exit', $language), 'SoftKey:Exit');
         }
예제 #5
0
        $action = 'list';
        break;
}
# Process action
switch ($action) {
    # Search the directory
    case 'search':
        # InputScreen
        require_once 'AastraIPPhoneInputScreen.class.php';
        $object = new AastraIPPhoneInputScreen();
        $object->setTitle(Aastra_get_label('Directory Lookup', $language));
        $object->setURL($XML_SERVER . '&action=list');
        $object->setDestroyOnExit();
        $object->setType('string');
        $object->setPrompt(Aastra_get_label('Letters in name', $language));
        $object->setParameter('lookup');
        if ($lookup != '') {
            $object->setDefault($lookup);
        }
        # Softkeys
        $object->addSoftkey('5', Aastra_get_label('List Mode', $language), $XML_SERVER . '&action=list', 1);
        $object->addSoftkey('6', Aastra_get_label('Search', $language), 'SoftKey:Submit', 2);
        $object->addSoftkey('9', Aastra_get_label('Cancel', $language), $XML_SERVER . '&action=list', 3);
        $object->addSoftkey('10', Aastra_get_label('Exit', $language), 'SoftKey:Exit', 4);
        $object->setCancelAction($XML_SERVER . '&action=list');
        $object->addIcon(1, 'Icon:Book');
        $object->addIcon(2, 'Icon:Search');
        $object->addIcon(3, 'Icon:ArrowLeft');
        $object->addIcon(4, 'Icon:CircleRed');
        break;
        # Preferences
예제 #6
0
Aastra_trace_call('weather', 'zip=' . $zip . ', index=' . $index);
# Test User Agent
Aastra_test_phone_version('1.4.2.', 0);
# Get Language
$language = Aastra_get_language();
# Get global compatibility
$nb_softkeys = Aastra_number_softkeys_supported();
# Callback
$XML_SERVER .= '?user='******'') {
    # Input zip code
    $object = new AastraIPPhoneInputScreen();
    $object->setTitle(Aastra_get_label('US Local Weather', $language));
    $object->setPrompt(Aastra_get_label('Enter ZIP code', $language));
    $object->setParameter('zip');
    $object->setType('number');
    $object->setURL($XML_SERVER);
    $object->setDestroyOnExit();
    $data = Aastra_get_user_context($user, 'weather');
    if ($data['last'] != NULL) {
        $object->setDefault($data['last']);
    }
    if ($nb_softkeys) {
        if ($nb_softkeys == 6) {
            $object->addSoftkey('1', Aastra_get_label('Backspace', $language), 'SoftKey:BackSpace');
            $object->addSoftkey('5', Aastra_get_label('Submit', $language), 'SoftKey:Submit');
            $object->addSoftkey('6', Aastra_get_label('Exit', $language), 'SoftKey:Exit');
        } else {
            $object->addSoftkey('10', Aastra_get_label('Exit', $language), 'SoftKey:Exit');
        }
예제 #7
0
    if ($nb_softkeys > 0) {
        if ($nb_softkeys < 7) {
            $object->addSoftkey('4', Aastra_get_label('Back', $language), $XML_SERVER);
            $object->addSoftkey('6', Aastra_get_label('Exit', $language), 'SoftKey:Exit');
        } else {
            $object->addSoftkey('9', Aastra_get_label('New Lookup', $language), $XML_SERVER);
            $object->addSoftkey('10', Aastra_get_label('Exit', $language), 'SoftKey:Exit');
        }
    }
    $object->setCancelAction($XML_SERVER);
} else {
    # Input area code
    $object = new AastraIPPhoneInputScreen();
    $object->setTitle(Aastra_get_label('Area code finder', $language));
    $object->setPrompt(Aastra_get_label('Enter area code', $language));
    $object->setParameter('area');
    $object->setType('number');
    $object->setURL($XML_SERVER);
    $object->setDestroyOnExit();
    # Softkeys
    if ($nb_softkeys > 0) {
        if ($nb_softkeys < 7) {
            $object->addSoftkey('1', Aastra_get_label('Backspace', $language), 'SoftKey:BackSpace');
            $object->addSoftkey('5', Aastra_get_label('Lookup', $language), 'SoftKey:Submit');
            $object->addSoftkey('6', Aastra_get_label('Exit', $language), 'SoftKey:Exit');
        } else {
            $object->addSoftkey('10', Aastra_get_label('Exit', $language), 'SoftKey:Exit');
        }
    }
}
# Top title
예제 #8
0
 case 'change':
     # Authenticate user
     if ($action == 'change') {
         Aastra_check_signature_Asterisk($user);
     }
     # Retrieve all status
     $array_night = Aastra_manage_daynight_Asterisk('get_all', '');
     # Check if password configured
     if ($array_night[$index]['password'] != '') {
         # Input password
         require_once 'AastraIPPhoneInputScreen.class.php';
         $object = new AastraIPPhoneInputScreen();
         $object->setDestroyOnExit();
         $object->setTitle(sprintf('%s (%d)', $array_night[$index]['desc'], $index));
         $object->setPrompt(Aastra_get_label('Enter Password', $language));
         $object->setParameter('password');
         $object->setType('number');
         $object->setPassword();
         $object->setURL($XML_SERVER . '&action=set_change&index=' . $index);
         # Softkeys
         if ($nb_softkeys) {
             if ($nb_softkeys == 6) {
                 $object->addSoftkey('1', Aastra_get_label('Backspace', $language), 'SoftKey:BackSpace');
                 if ($mode == 'SINGLE') {
                     $object->addSoftkey('5', Aastra_get_label('Cancel', $language), 'SoftKey:Exit');
                 } else {
                     $object->addSoftkey('5', Aastra_get_label('Cancel', $language), $XML_SERVER . '&action=list&index=' . $index);
                 }
                 $object->addSoftkey('6', Aastra_get_label('Submit', $language), 'SoftKey:Submit');
             } else {
                 if ($mode == 'SINGLE') {
예제 #9
0
Aastra_trace_call('google', 'user='******', question=' . $question);
# Test User Agent
Aastra_test_phone_version('1.4.2.', 0);
# Get Phone language
$language = Aastra_get_language();
# Global compatibility
$nb_softkeys = Aastra_number_softkeys_supported();
# Initial call test on parameter passed
if (!$question) {
    # Input Question
    $object = new AastraIPPhoneInputScreen();
    $object->setDestroyOnExit();
    $object->setType('string');
    $object->setTitle(Aastra_get_label('Ask Google', $language));
    $object->setPrompt(Aastra_get_label('Enter your question', $language));
    $object->setParameter('question');
    $object->setURL($XML_SERVER);
    $data = Aastra_get_user_context($user, 'google');
    if ($data['last'] != NULL) {
        $default = $data['last'];
    } else {
        $default = 'Define SIP';
    }
    $object->setDefault($default);
    # Softkeys
    if ($nb_softkeys > 0) {
        if ($nb_softkeys < 7) {
            $object->addSoftkey('1', Aastra_get_label('Backspace', $language), 'SoftKey:BackSpace');
            $object->addSoftkey('2', Aastra_get_label('Help', $language), $XML_SERVER . '&question=help');
            $object->addSoftkey('3', Aastra_get_label('ABC', $language), 'SoftKey:ChangeMode');
            $object->addSoftkey('4', Aastra_get_label('NextSpace', $language), 'SoftKey:NextSpace');
예제 #10
0
# Depending on action
switch ($action) {
    # Input symbol
    case 'input':
    case 'inputfav':
        # Input sticker
        require_once 'AastraIPPhoneInputScreen.class.php';
        $object = new AastraIPPhoneInputScreen();
        $object->setType('string');
        if ($action == 'input') {
            $object->setTitle(Aastra_get_label('Get Stock quotes', $language));
        } else {
            $object->setTitle(sprintf(Aastra_get_label('Favorite #%s', $language), $selection + 1));
        }
        $object->setPrompt(Aastra_get_label('Enter Ticker', $language));
        $object->setParameter('symbol');
        if ($action == 'input') {
            $object->setURL($XML_SERVER . '&action=display');
        } else {
            $object->setURL($XML_SERVER . '&action=set&selection=' . $selection);
        }
        $data = Aastra_get_user_context($user, 'stock');
        if ($action == 'input') {
            if ($data['last'] != NULL) {
                $default = $data['last'];
            } else {
                $default = 'AAH.TO';
            }
        } else {
            $default = $data['favorites'][$selection];
        }
예제 #11
0
         }
     }
     break;
     # Edit forward number
 # Edit forward number
 case 'edit_number1':
 case 'edit_number2':
     # Get current status
     $away = Aastra_manage_presence_Asterisk($user, 'action');
     # Input new number
     require_once 'AastraIPPhoneInputScreen.class.php';
     $object = new AastraIPPhoneInputScreen();
     $object->setDestroyOnExit();
     $object->setTitle(Aastra_get_label('Destination', $language));
     $object->setPrompt(Aastra_get_label('Enter number', $language));
     $object->setParameter('type');
     $object->setType('number');
     $object->setURL($XML_SERVER . '&action=set_number&state=' . $state . '&value1=' . AA_PRESENCE_ACT_CFWD . '&selection=' . $action);
     $object->setDefault($away['act_param'][$state]);
     # Softkeys
     if ($nb_softkeys) {
         if ($nb_softkeys == 6) {
             $object->addSoftkey('1', Aastra_get_label('Backspace', $language), 'SoftKey:BackSpace');
             if ($action == 'edit_number1') {
                 $object->addSoftkey('5', Aastra_get_label('Cancel', $language), $XML_SERVER . '&action=select_number&state=' . $state);
             } else {
                 $object->addSoftkey('5', Aastra_get_label('Cancel', $language), $XML_SERVER . '&action=input_prefs2&state=' . $state);
             }
             $object->addSoftkey('6', Aastra_get_label('Submit', $language), 'SoftKey:Submit');
         } else {
             if ($action == 'edit_number1') {
예제 #12
0
        $searchmethod = implode(",", $searchmethod);
    }
}
//step 1&2: ensure that the search term hasnt been entered yet, and promt for it. If
//we dont have a search method either, return default to prompt for method
if (!$search) {
    switch ($searchmethod) {
        case 't9':
            $sql = 'DELETE FROM contactdir_details WHERE extension = ? and type = ?';
            $db->query($sql, array($user, 'searchmethod'));
            $sql = 'INSERT INTO contactdir_details (extension, type, val) VALUES (?, ?, ?)';
            $db->query($sql, array($user, 'searchmethod', 't9'));
            $input->setTitle('Contact Directory');
            $input->setPrompt('Enter first three chars.');
            $input->setType('string');
            $input->setParameter('search');
            $input->setDefault($searchterm);
            $input->setURL($XML_SERVER_PATH . 'contactdir.php?searchmethod=t9');
            $input->setDestroyOnExit();
            $input->addSoftkey('1', 'One-Touch', $XML_SERVER_PATH . 'contactdir.php?user='******'&searchmethod=onetouch');
            $input->addSoftkey('5', 'Back', $XML_SERVER_PATH . 'contactdir.php');
            $input->addSoftkey('4', 'Search', 'SoftKey:Submit');
            $input->addSoftkey('6', 'BKSpace', 'SoftKey:BackSpace');
            $input->addSoftkey('3', 'Exit', 'SoftKey:Exit');
            $input->output();
            break;
        case 'onetouch':
            $sql = 'DELETE FROM contactdir_details WHERE extension = ? and type = ?';
            $db->query($sql, array($user, 'searchmethod'));
            $sql = 'INSERT INTO contactdir_details (extension, type, val) VALUES (?, ?, ?)';
            $db->query($sql, array($user, 'searchmethod', 'onetouch'));
예제 #13
0
     $input->setPrompt('Enter your password');
     $input->setParameter('param');
     $input->setType('string');
     $input->setURL('http://myserver.com/script.php?test=1');
     $input->setPassword();
     $input->setDestroyOnExit();
     $input->setDefault('');
     $input->setCancelAction($XML_SERVER);
     $input->output();
     break;
 case 'inputscreen2':
     require_once 'AastraIPPhoneInputScreen.class.php';
     $input = new AastraIPPhoneInputScreen();
     $input->setTitle('Title');
     $input->setPrompt('Enter the date');
     $input->setParameter('param');
     $input->setType('dateUS');
     $input->setURL('http://myserver.com/script.php');
     $input->setDestroyOnExit();
     $input->setCancelAction($XML_SERVER);
     $input->output();
     break;
 case 'inputscreen3':
     require_once 'AastraIPPhoneInputScreen.class.php';
     $input = new AastraIPPhoneInputScreen();
     $input->setTitle('Restricted application');
     $input->setDisplayMode('condensed');
     $input->setURL($XML_SERVER);
     $input->setDestroyOnExit();
     $input->addField('empty');
     $input->addField('string');
예제 #14
0
     }
     break;
     # Third step: label
 # Third step: label
 case '3':
     # Check if step 2 is properly completed
     if ($input2 != '') {
         # Input label
         require_once 'AastraIPPhoneInputScreen.class.php';
         $object = new AastraIPPhoneInputScreen();
         $object->setDestroyOnExit();
         $object->setTitle($array_title[$input1]);
         $object->setType('string');
         $object->setPrompt(Aastra_get_label('Enter key label', $language));
         $object->setURL($XML_SERVER . '&selection=' . $selection . '&action=set&type=' . $type . '&set=' . $set . '&input1=' . $input1 . '&input2=' . $input2);
         $object->setParameter('input3');
         # Default value
         switch ($input1) {
             case 'speeddial':
             case 'speeddialconf':
             case 'speeddialxfer':
                 switch ($array_key[$selection]['type']) {
                     case 'speeddial':
                     case 'speeddialconf':
                     case 'speeddialxfer':
                         if ($input2 == $array_key[$selection]['value'] and $array_key[$selection]['label'] != '') {
                             $object->setDefault($array_key[$selection]['label']);
                         }
                         break;
                 }
                 break;