API:顯示費率表

    需要的檔案

    • webservice/display_ratecard.php
    • common/lib/*

    開發說明

    sample_display_ratecard.php

    <?php
    /*
       * @return string
       * @param string $url
       * @desc Return string content from a remote file
    */
    
    function open_url($url)
    {
        $ch = curl_init();
    
        curl_setopt ($ch, CURLOPT_URL, $url);
        curl_setopt ($ch, CURLOPT_HEADER, 0);
    
        ob_start();
    
        curl_exec ($ch);
        curl_close ($ch);
        $string = ob_get_contents();
    
        ob_end_clean();
    
        return $string;
    }
    
    
    
    $private_key = "Ae87v56zzl34v";
    $private_key_md5 = md5($private_key);
    
    $api_url = "http://localhost/a2b_api/display_ratecard.php?" .
                            "key=$private_key_md5" .
                            "&page_url=http://localhost/a2b_api/sample_display_ratecard.php" .
                            "&field_to_display=t1.destination,t1.dialprefix,t1.rateinitial" .
                            "&column_name=Destination,Prefix,Rate/Min" .
                            "&field_type=,,money" .
                            "&fullhtmlpage=1&filter=countryname,prefix".
                            "&".$_SERVER['QUERY_STRING'];
    
    
    // ----------------- USAGE -------------------------
    
    #usage:
    $content = open_url ($api_url);
    print ($content);
    
    ?>
    

    Tips:

    • key: api_security_key
    • tariffgroupid: Call Plan ID
    • ratecardid: Rate Card ID (必須同時有 tariffgroupid)
    • css_url:
    • nb_display_lines: 每頁顯示資料筆數
    • filter:
      • countryname 顯示國家選擇
      • prefix 顯示號碼搜尋
    • field_to_display: 要顯示的來資料庫欄位 (t1.destination,t1.dialprefix,t1.rateinitial)
    • field_type: 資料欄位的屬性,money or date (,,money)
    • column_name: 欄位名稱 (Destination, Dialprefix, Rate/Min)
    • browse_letter: 是否顯示 A-Z 字母搜尋 (yes or no)
    • prefix_select: 是否顯示國碼搜尋
    • currency_select: 預設幣別顯示(USD or EUR etc...; 若不想顯示可以輸入 0)
    • page_url: PHP查詢網頁的URL,就是放這個程式的網頁。
    • merge_form:
    • fullhtmlpage:
    • resulttitle:
    • lcr: 是否啟用 LCR,1: 是;0: 否(預設)

    發現問題及解決

    1. 在網頁的國家選擇項目清單顯示不完整
    2. 顯示時費率只能顯示小數點三位
    國家選擇列表修正

    編輯 display_ratecard.php:將 1000 改成 3000 試試

    // fix for Country Select
    display_ratecard.php
    if ($FILTER_COUNTRY) {
        $QUERY = 'SELECT DISTINCT destination FROM cc_prefix ORDER BY destination LIMIT 0, 1000';
        $country_list = $instance_table->SQLExec($DBHandle, $QUERY, 1, $caching_query);
    }
    
    費率可顯示小數點四位

    編輯 Misc.php: 將最下方 3 改成 4

    function display_2bill($var, $currency = BASE_CURRENCY) {
    	global $currencies_list, $choose_currency;
    
    	if (isset ($choose_currency) && strlen($choose_currency) == 3)
    		$currency = $choose_currency;
    	if ((!isset ($currencies_list)) || (!is_array($currencies_list)))
    		$currencies_list = get_currencies();
    	$var = $var / $currencies_list[strtoupper($currency)][2];
    	echo number_format($var, 3) . ' ' . strtoupper($currency);
    }
    
    標籤 (Edit tags)
    • No tags
    您必須 登入 才能發佈評論。
    Powered by MindTouch Core