pengenalan
Dalam artikel ini, kami akan mencipta contoh mudah untuk menghantar mesej melalui API WhatsApp menggunakan c#.
Pada mulanya, anda mesti memastikan bahawa perpustakaan RestSharp terakhir Ver: 108.0.1 sudah sedia dan kerana kami akan menggunakan perpustakaan ini dalam artikel ini untuk menghantar mesej ke Gerbang Ultramsg.
Contoh pantas untuk API WhatsApp menggunakan C#
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
string message = "WhatsApp API on UltraMsg.com works good";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/chat";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("body", message);
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Apabila kod sebelumnya dilaksanakan, dan jika mesej berjaya dihantar, respons akan menjadi seperti ini:
{"sent":"true","message":"ok","id":497}
Hantar Imej
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/image";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("image", "https://file-example.s3-accelerate.amazonaws.com/images/test.jpg");
request.AddParameter("caption", "caption text");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Hantar Dokumen
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/document";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("filename", "test.pdf");
request.AddParameter("document", "https://file-example.s3-accelerate.amazonaws.com/documents/cv.pdf");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Hantar Audio
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/audio";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("audio", "https://file-example.s3-accelerate.amazonaws.com/audio/2.mp3");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Hantar Suara
Anda boleh Hantar rakaman audio ppt ke nombor telefon atau kumpulan, Tetapi WhatsApp sensitif terhadap sambungan ini, anda perlu berada dalam format OGG dan codec haruslah opus , Untuk maklumat lanjut, anda boleh menyemak artikel ini.
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/voice";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("audio", "https://file-example.s3-accelerate.amazonaws.com/voice/oog_example.ogg");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Hantar Video
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/video";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("video", "https://file-example.s3-accelerate.amazonaws.com/video/test.mp4");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Hantar Pautan
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/link";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("link", "https://en.wikipedia.org/wiki/COVID-19");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Hantar Kenalan
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/contact";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("contact", "[email protected]");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Hantar Lokasi
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/location";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("address", "ABC company \n Sixth floor , office 38");
request.AddParameter("lat", "25.197197");
request.AddParameter("lng", "55.2721877");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Hantar Vcard
using System;
using RestSharp;
using System.Threading.Tasks;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
var url = "https://api.ultramsg.com/" + instanceId + "/messages/vcard";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("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");
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Contoh untuk menghantar imej sebagai Base64 menggunakan RestSharp
Untuk menghantar imej dan dokumen daripada pc atau pelayan tempatan, anda boleh menukar fail kepada format base64 dan menghantarnya dengan mudah melalui kod berikut:
using System;
using RestSharp;
using System.Threading.Tasks;
using System.IO;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
byte[] AsBytes = File.ReadAllBytes("test.jpeg");
String AsBase64String = Convert.ToBase64String(AsBytes);
var url = "https://api.ultramsg.com/" + instanceId + "/messages/image";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("image", AsBase64String);
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
Contoh untuk menghantar dokumen sebagai Base64 menggunakan RestSharp
using System;
using RestSharp;
using System.Threading.Tasks;
using System.IO;
namespace test
{
class Program
{
static async Task Main(string[] args)
{
string instanceId = "instance950"; // your instanceId
string token = "yourtoken"; //instance Token
string mobile = "14155552671";
byte[] AsBytes = File.ReadAllBytes("test.pdf");
String AsBase64String = Convert.ToBase64String(AsBytes);
var url = "https://api.ultramsg.com/" + instanceId + "/messages/document";
var client = new RestClient(url);
var request = new RestRequest(url, Method.Post);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("token", token);
request.AddParameter("to", mobile);
request.AddParameter("filename", "WhatsApp-API.pdf");
request.AddParameter("document", AsBase64String);
RestResponse response = await client.ExecuteAsync(request);
var output = response.Content;
Console.WriteLine(output);
}
}
}
API WhatsApp menggunakan C# dengan WebClient
ia Tidak disyorkan untuk kerja baharu tetapi ia amat mudah, jika anda perlu melakukan permintaan http secara serentak,WebClient
masih boleh digunakan.
using System;
using System.Collections.Specialized;
using System.Net;
using System.Text;
public class Program
{
public static void Main()
{
using (var wb = new WebClient())
{
var data = new NameValueCollection();
data["token"] = "95041eyo9eqixrsi";
data["body"] = "WhatsApp API on UltraMsg.com works good";
data["to"] = "14155552671";
var response =
wb
.UploadValues("https://api.ultramsg.com/instance950/messages/chat",
"POST",
data);
string responseInString = Encoding.UTF8.GetString(response);
Console.WriteLine (responseInString);
}
///////////
}
}
Contoh untuk menghantar dokumen sebagai Base64 menggunakan c# & WebClient
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.IO;
using System.Net;
using System.Text;
using System.Web;
public class Program
{
public static void Main()
{
using (var wb = new WebClient())
{
byte[] AsBytes = File.ReadAllBytes("1.pdf");
String AsBase64String = Convert.ToBase64String(AsBytes);
var data = new NameValueCollection();
data["token"] = "95041eyo9eqixrsi";
data["to"] = "14155552671";
data["document"] = AsBase64String;
data["filename"] = "a.pdf";
var response =
wb
.UploadValues("https://api.ultramsg.com/instance950/messages/document",
"POST",
data);
string responseInString = Encoding.UTF8.GetString(response);
Console.WriteLine (responseInString);
}
///////////
}
}
akhirnya, anda boleh melihat Dokumentasi dan Soalan Lazim API Whatsapp Penuh .