تحميل الوسائط لإرسال مستندات ووسائط Whatsapp

يدعم Ultramsg إرسال الصور ومقاطع الفيديو والمستندات من خلال عنوان URL مباشر ، ولكن إذا كنت بحاجة إلى إرسال المستندات من خادم محلي ، فيجب عليك استخدام الملفات وتحويلها إلى تنسيق base64 ثم إرسالها. لكن عيب base64 هو أن الحجم يقتصر على 10 ملايين حرف كحد أقصى ، أي حوالي 6.5M.

لقد قدمنا حلاً بديلاً وأفضل لهذا عن طريق تحميل الملف من الخادم المحلي إلى CDN بتكلفة مجانية لعملاء Ultramsg.

Route path : [POST] /media/upload

المعلمات المطلوبة:

  • الملف: اسم الملف مثل /path/example.pdf.
  • الرمز المميز: رمز المثيل الخاص بك.

جمع ساعي البريد لإجراء اختبار تحميل الملفات

يمكنك استيراد مجموعة ساعي البريد من هنا .

image

مثال لتحميل المستندات باستخدام PHP

<?php

$curl = curl_init();
curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.ultramsg.com/instance950/media/upload',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => array('file' => new CURLFILE('sample.pdf'), 'token' => 'Yourtoken'),
));

$response = curl_exec($curl);
curl_close($curl);
echo $response;

بعد إرسال الطلب السابق ، سيتم إرجاع رابط الملف إليك لاستخدامه في إرسال WhatsApp API.

مثال على تحميل المستندات باستخدام Python

import requests

url = "https://api.ultramsg.com/instance950/media/upload"

payload={'token': 'Yourtoken'}
files=[
  ('file',('sample.pdf',open('/folder/sample.pdf','rb'),'application/pdf'))
]
headers = {}

response = requests.request("POST", url, headers=headers, data=payload, files=files)

print(response.text)

مثال لتحميل المستندات باستخدام c #

using System.Net;
using System.Text;

namespace FileUploadExample
{
    class Program
    {
        static void Main(string[] args)
        {
            var token = "Yourtoken";
            var instance = "instance950";

            var filePath = "/folder/sample.pdf";
            var url = "https://api.ultramsg.com/" + instance + "/media/upload/?token=" + token;

            var client = new WebClient();

            var response = client.UploadFile(url, "POST", filePath);
            string responseInString = Encoding.UTF8.GetString(response);
            Console.WriteLine(responseInString);

        }
    }
}

مثال لتحميل المستندات باستخدام curl

curl --location --request POST 'https://api.ultramsg.com/instance950/media/upload' \
--form 'file=@"/folder/sample.pdf"' \
--form 'token="Yourtoken"'

مثال لتحميل المستندات باستخدام NodeJs – طلب lib

var request = require('request');
var fs = require('fs');
var options = {
  'method': 'POST',
  'url': 'https://api.ultramsg.com/instance950/media/upload',
  'headers': {
  },
  formData: {
    'file': {
      'value': fs.createReadStream('/folder/sample.pdf'),
      'options': {
        'filename': 'sample.pdf',
        'contentType': null
      }
    },
    'token': 'Yourtoken'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

مثال لتحميل المستندات باستخدام vb.net


Imports System.Net
Imports System.Text

Module Program
    Sub Main(args As String())
        Const token As String = "Yourtoken"
        Const instance = "instance950"
        Const filePath = "test.jpg"
        const url = "https://api.ultramsg.com/" & instance & "/media/upload/?token=" & token
        Dim client = New WebClient()
        Dim response = client.UploadFile(url, "POST", filePath)
        Dim documentUrl As String = Encoding.UTF8.GetString(response)
        Console.WriteLine(documentUrl)
    End Sub
End Module