كيفية إرسال WhatsApp API مع OCaml

مقدمة

في هذه المقالة ، سننشئ مثال بسيط لإرسال الرسائل عبر WhatsApp API باستخدام OCaml.

أول رسالة WhatsApp API باستخدام OCaml

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/chat" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&body=WhatsApp API on UltraMsg.com works good&priority=10&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

إرسال صورة

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/image" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&image=https://file-example.s3-accelerate.amazonaws.com/images/test.jpg&caption=image Caption&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

إرسال ملف

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/document" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&filename=hello.pdf&document=https://file-example.s3-accelerate.amazonaws.com/documents/cv.pdf&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

إرسل صوت

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/audio" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&audio=https://file-example.s3-accelerate.amazonaws.com/audio/2.mp3&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

إرسال تسجيل صوتي

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/voice" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&audio=https://file-example.s3-accelerate.amazonaws.com/voice/oog_example.ogg&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

إرسال فيديو

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/video" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&video=https://file-example.s3-accelerate.amazonaws.com/video/test.mp4&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)
open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/link" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&link=https://en.wikipedia.org/wiki/COVID-19&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

إرسال جهة اتصال

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/contact" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&[email protected]&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

إرسال موقع جغرافي

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/location" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&address=ABC company \n Sixth floor , office 38&lat=25.197197&lng=55.2721877&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

إرسال Vcard

open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "https://api.ultramsg.com/instance1150/messages/vcard" in
let body = Cohttp_lwt_body.of_string "token=token_here&to=966550883606&vcard= BEGIN:VCARD\nVERSION:3.0\nN:lastname;firstname\nFN:firstname lastname\nTEL;TYPE=CELL;waid=14000000001:14000000002\nNICKNAME:nickname\nBDAY:01.01.1987\nX-GENDER:M\nNOTE:note\nADR;TYPE=home:;;;;;;\nADR;TYPE=work_:;;;;;;\nEND:VCARD&referenceId=" in

Client.call ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)

أخيرا يمكن مشاهدة دليل وثائق Whatsapp API Documentation. بالإضافة للأسئلة الشائعة FAQ