• שימושון php | שימושון למתקדמים - לתועלת הציבור

    נעוץ נעול הועבר
    2
    27 הצבעות
    2 פוסטים
    2k צפיות
    I
    מכיון ש @dudu u ו @011371 לא המשיך את שימושון PHP אכתוב אני שימושון למתקדמים פניית API $url=file_get_contents("https://ivrphone.online"); התשובה תיכנס למשתנה URL פנייה בCURL (העלת קובץ) $uploadUrl = "https://www.call2all.co.il/ym/api/UploadFile?token=$did2:$pass2&path=$path/$fileName&convertAudio=0&autoNumbering=false&tts=$ty"; // הכנת נתוני הקובץ $data = [ 'file' => curl_file_create($filePath, 'audio/mpeg', $fileName), ]; $ch = curl_init($uploadUrl); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_exec($ch); curl_close($ch); שם הקובץ נמצא במשתנה $filePath בדוגמה שולח לימות המשיח מחיקת קובץ מהשרת unlink($filePath); שם הקובץ נמצא במשתנה $filePath הורדת התגובה כקובץ לשרת $downloadUrl = "https://www.call2all.co.il/ym/api/DownloadFile?token=$did:$pass&what=$what"; $ch = curl_init($downloadUrl); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $response = curl_exec($ch); curl_close($ch); $fileName = basename($what); $filePath = "$path/$fileName"; file_put_contents($filePath, $response); שם הקובץ נמצא במשתנה $filePath הפיכת משתנה לגייסון $data = json_decode($response, true); שם המשתנה $response הגייסון יכנס למשתנה data פרוק ערך מגייסון $ini = $data['did']; הערך מפרק יכנס למשתנה ini הגיסון נמצא במשתנה data הערך לפרוק הוא did בהצלחה!
  • נושא זה נמחק!

    נעוץ
    0
    1 הצבעות
    0 פוסטים
    44 צפיות
    אין תגובות
  • אתר להגדרות לימות

    1
    0 הצבעות
    1 פוסטים
    39 צפיות
    אין תגובות
  • קוד php ששולח פקודת API לא עובד טוב

    6
    0 הצבעות
    6 פוסטים
    69 צפיות
    א
    @אA כתב בקוד php ששולח פקודת API לא עובד טוב: בנוגע לקבצי השמע הרגילים הוא מעביר בשלוחות רק את קובץ 000 לא עיינתי לעומק בקוד, אבל מלמעלה נראה לי שזו הבעיה הזאת
  • פיתוח פאנל חדר ועידה

    16
    0 הצבעות
    16 פוסטים
    202 צפיות
    P
    @NA73438 לא, אני רוצה שיהיה אפשר להעלות קובץ למחשב והוא יושמע בלייב בוועידה. אין לי בעיה לשמור אותו בימות ורק אז שיפעל
  • אחסון קודים

    5
    0 הצבעות
    5 פוסטים
    52 צפיות
    B
    @לימוד-בתורת-מרן יותר נוח לעבוד אם PHP בשביל המערכת בכל אופן אני משלם מי שירצה שיהנה אם לא אני לא מפסיד
  • קוד לאלפון אם זיהוי קולי

    נפתר
    5
    0 הצבעות
    5 פוסטים
    144 צפיות
    B
    @anti-malware כן שאלתי אותו והכל תקין בסוף כתבתי קוד חדש והוא עובד לא יודע מה הבעיה בזה תודה
  • ניתוב שיחה לשלוחה

    נפתר
    5
    0 הצבעות
    5 פוסטים
    118 צפיות
    C
    @BEN-ZION להחזיר מהשרת go_to_folder=/999
  • העלאת קובץ גדול לא עובד

    1
    0 הצבעות
    1 פוסטים
    90 צפיות
    אין תגובות
  • נושא זה נמחק!

    לא נפתר
    1
    0 הצבעות
    1 פוסטים
    25 צפיות
    אין תגובות
  • אחסון PHP

    נפתר
    12
    0 הצבעות
    12 פוסטים
    211 צפיות
    B
    הייתה בעיה בקוד כנראה העתקתי אותו מחדש וזה עובד
  • העתקה של מערכת א למערכת ב

    9
    0 הצבעות
    9 פוסטים
    408 צפיות
    א
    @isi יש תוכנית חינמית מוגבלת ותוכנית מתקדמת יותר בתשלום, וכן, זה מעתיק את כל סוגי הקבצים במערכת כולל קבצי txt של Metadata של קבצי שמע
  • שיתוף | קוד למעבר למשאיר ההודעה בחינם

    10
    2 הצבעות
    10 פוסטים
    454 צפיות
    8
    @איל-משולש שלחתי לך
  • עזרה בקוד

    5
    0 הצבעות
    5 פוסטים
    207 צפיות
    ע
    @121244 תנסה לבקש קוד תקין ותראה מה יתן, מה יש להפסיד?
  • הדבקה בשרת

    11
    2 הצבעות
    11 פוסטים
    665 צפיות
    H
    @טנטפון אתה כותב קוד בוורד?????
  • נושא זה נמחק!

    2
    0 הצבעות
    2 פוסטים
    5 צפיות
  • שליחת מייל על ידי קוד PHP

    8
    0 הצבעות
    8 פוסטים
    266 צפיות
    י
    @פלמנמוני יישר כח
  • איחסון PHP בחינם

    10
    0 הצבעות
    10 פוסטים
    385 צפיות
    ש
    הם עדיין מאפשרים חינמי לפי הידוע לי
  • אתר לניהול מערכת טלפונית לא עובד

    8
    1 הצבעות
    8 פוסטים
    381 צפיות
    פ
    @טנטפון זה אשכול ישן...
  • 0 הצבעות
    10 פוסטים
    432 צפיות
    ט
    @ivrפון הקוד אחרי שסידרתי ``` <?php $ApiDID = $_GET['ApiDID']; $pass = $_GET['pass']; $path1 = $_GET['path1']; $path2 = $_GET['path2']; $tiz = $_GET['tiz']; $what = $_GET['what']; // קריאת נתונים מ-API $url1 = @file_get_contents("https://www.call2all.co.il/ym/api/GetIVR2Dir?token=$ApiDID:$pass&path=$path2&filesLimit=1&orderDir=desc"); if ($url1 === false) { print "id_list_message=m-1080."; // שגיאה בקריאה ל-API exit; } $data = json_decode($url1, true); $ok1 = $data["responseStatus"]; if ($ok1 !== 'OK' || !isset($data["files"])) { print "id_list_message=m-1080."; // לא נמצא קובץ או שגיאה ב-API exit; } $tz = $data["files"]; // סינון קבצים בסיומות '.wav' ו-'.tts' $filteredTz = array_filter($tz, function ($value) { return (substr($value, -4) === '.wav' || substr($value, -4) === '.tts'); }); // חיפוש הקובץ הגבוה ביותר $highestValue = ""; foreach ($filteredTz as $value) { $parts = explode('/', $value); $lastPart = end($parts); // לוקח את החלק האחרון מהנתיב $lastPartWithoutExtension = substr($lastPart, 0, -4); // מסיר את הסיומת if ($lastPartWithoutExtension > $highestValue) { $highestValue = $lastPartWithoutExtension; } } // העתקת הקובץ $url = @file_get_contents("https://www.call2all.co.il/ym/api/FileAction?token=$ApiDID:$pass&what=$path1/$what&target=$path2/$highestValue&action=copy"); if ($url === false) { print "id_list_message=m-1080."; // שגיאה בהעתקת הקובץ exit; } $data = json_decode($url, true); if (empty($data) || !isset($data["success"]) || $data["success"] !== 'true') { print "id_list_message=m-1080."; // שגיאה בתשובה מה-API exit; } // הפעלת צינטוק $url2 = @file_get_contents("https://www.call2all.co.il/ym/api/RunTzintuk?token=$ApiDID:$pass&TzintukTimeOut=8&phones=tzl:$tiz"); if ($url2 === false) { print "id_list_message=m-1080."; // שגיאה בהפעלת צינטוק exit; } $data = json_decode($url2, true); $ok2 = $data["responseStatus"]; if ($ok2 == 'OK') { print "id_list_message=m-2573"; // הצלחה בהפעלת צינטוק } else { print "id_list_message=m-1080."; // שגיאה בהפעלת צינטוק } print "ok"; // סיום ?> שיפורים בקוד: הוספת טיפול בשגיאות: הוספתי את השימוש ב־@file_get_contents() יחד עם בדיקות אם הקריאה מחזירה false, כלומר אם הייתה בעיה בהורדת הנתונים מה-API. סינון קבצים: השתמשתי ב־substr במקום str_ends_with למקרה שאתה עובד עם גרסאות ישנות של PHP. ביקורת נתונים: לפני כל שלב קריטי, הוספתי בדיקות אם התשובה מכילה את המידע הצפוי (כמו קובץ או הודעת הצלחה). חיפוש קובץ גבוה ביותר: הפכתי את לולאת החיפוש קצת יותר ברורה ומסודרת, כולל שימוש ב־end() כדי לקחת את החלק האחרון של הנתיב בצורה יותר ברורה.