Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
api:ukazky [2017/07/19 15:19] – [stažení nahrávek hovorů] rootapi:ukazky [2019/08/28 16:13] – [odeslání SMS] root
Line 23: Line 23:
  
 curl_close($cc); curl_close($cc);
 +?>
 +</code>
 +=== PHP čte čísla a text z csv soubor ===
 +<code php hromadne_sms.php >
 +<?php
 +// program spustíte když do příkazové řádky dáte php hromadne_sms.php jmeno_csv_souboru.csv
 +// nezapomente upravit jmeno a heslo
 +
 +
 +if ( $argc == 1 ) { 
 +  echo "Očekávám jediný parametr, jméno  souboru s csv".PHP_EOL;
 +  echo "První sloupeček je číslo, druhý sloupeček je text sms.". PHP_EOL . PHP_EOL ;
 +  exit;
 +  }
 + else  echo "Snažím se číst z csv souboru $argv[1]".PHP_EOL ;
 +$jmeno_souboru_z_ktereho_cteme=$argv[1];
 +
 +$handle = fopen($jmeno_souboru_z_ktereho_cteme, "r");
 +$authentication = array("user" => "pepa", "password" => "zdepa");
 + 
 +$cc = curl_init("https://www.odorik.cz/api/v1/sms");
 +curl_setopt($cc, CURLOPT_RETURNTRANSFER, true);
 +
 +for ($i = 0; $row = fgetcsv($handle ); ++$i) {
 +    // Do something will $row array
 +$sms = array( "sender" => "Odorik.cz", "recipient" => $row[0],
 +              "message" => $row[1]);
 + 
 + curl_setopt($cc, CURLOPT_POSTFIELDS, $authentication + $sms);
 + echo "odesilam sms na číslo $row[0] s textem $row[1] ". PHP_EOL ;
 + $response = curl_exec($cc);
 + 
 + if (strstr($response, "successfully_sent") == false) {
 +   echo "SMS zpravu se nepodarilo odeslat. Duvod: " . $response;
 + }
 + 
 +}
 + 
 +fclose($handle);
 +curl_close($cc);
 +?>
 +
 ?> ?>
 </code> </code>
Line 133: Line 175:
 === PHP === === PHP ===
  
-Script below downloads all available recordings (stored at Odorik.cz) recordings from yeasterday.  To be run each night. 
  
-<code php> 
-<?php 
-$auth = array('user' => 'xxxxxx', 
-              'password' => 'yyyyyyy'); 
- 
-function calls_timespan_params() { 
-  date_default_timezone_set('Europe/Prague'); 
- 
-  $now = date_create('now'); 
-  $yesterday = date_modify($now, '-1 day'); 
- 
-  $from = date_create(date_format($yesterday, 'Y-m-d') . ' 00:00:00'); 
-  $to = date_create(date_format($yesterday, 'Y-m-d') . ' 23:59:59'); 
- 
-  return array( 'from' => date_format($from, 'c'), 
-                'to' => date_format($to, 'c')); 
-} 
- 
-function download($url) { 
-  $curl = curl_init(); 
-  curl_setopt($curl, CURLOPT_URL, $url); 
-  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
-  $data = curl_exec($curl); 
-  curl_close($curl); 
- 
-  return $data; 
-} 
- 
-function download_recording($call, $auth) { 
-  $fname = filename($call); 
- 
-  if (file_exists($fname)) { 
-    fwrite(STDERR, "file " . $fname . " (call " . $call->id . ") exists, skipping\n"); 
-    return(-1); 
-  } 
- 
-  $auth_qs = http_build_query($auth); 
-  $data = download('https://www.odorik.cz/api/v1/call_recordings/' . $fname . '?' . $auth_qs); 
- 
-  $file = fopen($fname, "w+"); 
-  fputs($file, $data); 
-  fclose($file); 
-} 
- 
-function filename($call) { 
-  #var_dump($call); 
-  #exit(0); 
- 
-  #return $call->id . '.' . $call->recording->format; 
-  return $call->date . '---' . $call->direction . '---' . $call->source_number . '---' . $call->destination_number . '.' . $call->recording->format; 
-} 
- 
-$qs = http_build_query(array_merge($auth, calls_timespan_params())); 
-$calls = json_decode(download("https://www.odorik.cz/api/v1/calls.json?" . $qs)); 
- 
-foreach($calls as $call) { 
-  if ($call->recording != NULL) { 
-    download_recording($call, $auth); 
-  } 
-} 
-?> 
-</code> 
  
  
 
api/ukazky.txt · Last modified: 2022/05/09 15:28 by root