Jump to content
Bicrypto v4.6.0 + All Plugins
Posted
  • Popular Post
comment_35854

Whatsapp Gateway | Multi Device


This script has been completely modified and many important features and fixes have been added by @Magd Almuntaser
He is now responsible for the updates of this script and has full intellectual property rights
So no one will violate the terms of use that he has set

Latest Features:
1. WhatsApp Account Connectivity

All types of WhatsApp Accounts to be able to connect with WhatsApp Gateway (Multi Number & Multi Device);
Ease of the WhatsApp Account connectivity process with a QRcode Scan or with an Authentication Code directly from your device.

2. Message

Availability of various types of (text messages, media, polls, lists, locations, VCard) can easily be used by you;
You can send mass messages for your marketing campaign activities, promotions or business programs easily and on a scheduled basis;
Setup automatic message replies with more natural (alami) and selected keywords for operational optimization of use;
Manage sent message history with automatic and scheduled deletions.

4. Integration

You can easily integrate your WhatsApp Account with various (AI) artificial intelligence services, namely ChatGPT, DALL-E, Gemini, and Cloude with API authentication codes only;
You can easily activate Ai for Single or Multiple use on your WhatsApp Account;
You can easily select Ai in your WhatsApp messages for WhatsApp Group, Private, or Both types;
You can easily setup call rejection automatically if there is a (Call) call and provide a specific response or information;
Setup your WhatsApp and Ai accounts more naturally (alami) with "Already read" status";
Setup your WhatsApp and Ai accounts more naturally (natural) with the status "Typing...".
You can easily integrate and communicate your services with the Webhook mechanism of WhatsApp Gateway | Multi Device.

5. Application Settings

Nowadays you can easily and quickly carry out the process of setting up the WhatsApp Gateway | Multi Device* application by Magd Almuntaser with the settings panel;
You can easily set up applications based on server ecosystem, smtp, etc quickly;
Multi language support (english, Indonesian, Indian, Spanish and Arabic) for easy use.

6. Developer Options

Currently WhatsApp Gateway | Multi Device* by Magd Almuntaser has provided various API services for your easy development consisting of:
        1). Send Message API
        2). Send Media API
        3). Send Poll API
        4). API Send Button
        5). Send API Templates
        6). Send List message API
        7). Send Location API
        8). Send VCard API
        9). Generate QR API
        10). Disconnect devices
        11). Create User API
        12). User Info API
        13). Device Info API
        14). Check Number API
        15). Webhook Example

Ease of setup and availability of the (API Key) API Key for authentication and authorization of your development process.

7. Security

Currently there is a 2 factor authentication (2FA) service available to maintain the security and comfort of application access;
A password reset service is available if you forget your account login information.


Coming Soon:

1. Landing page for Software as Service services (Subscription Services);
2. Payment gateway page management (QRIS, BCA virtual account, PayPal, Stripe);
3. Added user account management;
4. (ticket) obstacle reporting service for users and managers;
.. And many more.


Whatsapp Gateway | Multi Device

  • Replies 4.4k
  • Views 276k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Magd Almuntaser
    Magd Almuntaser

    What's new so far in version 9.0.0: - Added landing page (welcome page). - Added plans system. - Added Manage Languages system. - Added (landing page) edit page. - Added ticket system. - Added cronjob

  • Magd Almuntaser
    Magd Almuntaser

    What's new so far in version 9.0.0: - Added Landing page (Homepage). - Added Plans System. - Added Manage Payment gateways. - Added Manage Languages system. - Added (Homepage) edit page. - Added Ticke

  • Magd Almuntaser
    Magd Almuntaser

    What's new in version 9.0.0 so far: - Added landing page (welcome page). - Added plans system. - Added cronjob page. - Added Multi-Keyword in autoreply. - Added send message with footer. -

Posted Images

Featured Replies

comment_77573
4 hours ago, Gak Taw said:

better use apache or nginx for aapanel?

now im use apache

Who here uses aapanel and it runs smoothly, please provide information
Thank You

for a small traffic there aren't significant difference between apache or nginx, but for a larger traffic website nginx still the best.

And you must edit htaccess for working with it

  • Author
comment_77575
3 minutes ago, Remos said:

@Unicode Is your code running i am trying to install in shared hosting namecheap nodejs is connecting but i am not getting qr to scan please help

Check your port through this site if it is open or not:
 

https://www.yougetsignal.com/tools/open-ports/


Also don't forget to check your .env file that your data is as follows:

APP_URL=http://yoursite.com
WA_URL_SERVER=http://yoursite:3100
TYPE_SERVER=other

Focus on using http and not https.. unless you see page number 40, you can find out how to make it work on https

comment_77588
22 hours ago, Magd Almuntaser said:

😅 yes
What's new in version 8.5.0 so far:
-
Added send sticker feature.
-
Added wysiwyg whatsapp (text editing tools).
-
Added view once message feature for (images & videos).
-
Added API for send sticker and api-docs.
-
Re-Design Test message, Create campagin and Autoreply.

image.thumb.png.202cf31ba983b49297a5da6d3aff3749.png 

 

================================

 

image.png.cb4b4aa274481610ffbb6a93566a27c9.png

is this version release yet?

comment_77616
11 hours ago, Enno The Explorer said:

pakai shared hosting mas..murah idcloudhost

Ini sih no komen mas.

ibarat rumah kalo hosting itu kamu ngekos, coba bikin vps pasti pusing bayar license hahaha 🤣. Aku aja sudah ndak nyaman pake hosting karena ndak leluasa.

Hosting hanya untuk mpwa aja, biar gk ganggu web utama yg udah running

comment_77617
2 minutes ago, Unicode said:

Ini sih no komen mas.

ibarat rumah kalo hosting itu kamu ngekos, coba bikin vps pasti pusing bayar license hahaha 🤣. Aku aja sudah ndak nyaman pake hosting karena ndak leluasa.

Hosting hanya untuk mpwa aja, biar gk ganggu web utama yg udah running

nah makanya pake aapanel, gratis tis tis... ya sebenarnya bisa pake cli, tapi bikin capeq hati dan pikiran. mending hati dan pikiran di fokuskan ke target janda kampung sebelah... hehehehe...

 

aku malah mpwa nebeng di vps production. dari pada sewa hosting lagi. banyakan dramanya dibanding actionnya

comment_77618
Just now, kecoamumet said:

nah makanya pake aapanel, gratis tis tis... ya sebenarnya bisa pake cli, tapi bikin capeq hati dan pikiran. mending hati dan pikiran di fokuskan ke target janda kampung sebelah... hehehehe...

 

aku malah mpwa nebeng di vps production. dari pada sewa hosting lagi. banyakan dramanya dibanding actionnya

Iya sih 😁

hosting banyak drama haha. Untungnya di tempat host skrg gk drama, tp kapan hari ada drama dikit karena down 30 menit 🥲.

Cloudpanel udah nyoba bro?

tp pake Nginx dia

comment_77619
3 minutes ago, Unicode said:

Iya sih 😁

hosting banyak drama haha. Untungnya di tempat host skrg gk drama, tp kapan hari ada drama dikit karena down 30 menit 🥲.

Cloudpanel udah nyoba bro?

tp pake Nginx dia

dari dulu pengen nyoba cloudpanel. penasaran. dia bisa multi-user juga ya? bisa untuk di jual lagi jadi hostingan ya... hehehe... boleh deh, nanti coba cloudpanel. kalau aapanelkan singleuser.

comment_77620
3 minutes ago, kecoamumet said:

dari dulu pengen nyoba cloudpanel. penasaran. dia bisa multi-user juga ya? bisa untuk di jual lagi jadi hostingan ya... hehehe... boleh deh, nanti coba cloudpanel. kalau aapanelkan singleuser.

Iya itu sayang bgt aapanel single user.
Tapi fitur cloudpanel kok gk sebanyak aapanel, bingung mau jalanin node gmn…

comment_77654

SHARE QURAN VIA GOOGLE APPSCRIPT (Script quran.php dari mamank @Magd Almuntaser)

Buka Google Spreadsheets lalu buat table seperti ini ( Your Website | Apikey | Sender | Tujuan | Text/Audio/Hybrid )

image.png.197932549ec8a943dd3e735bbb1e0812.png

atau bisa copy dari ini : https://docs.google.com/spreadsheets/d/1ICpCKMOSFOxDDeipt71wDHakocBVFmQVrpmguHWcEkM/edit?usp=sharing
 

lalu pergi ke Extensi -> AppScript

lalu copas script ini ke appscript lalu save.
 

function sendQuranMessage() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var YOUR_WEBSITE = sheet.getRange('A2').getValue();
  var API = sheet.getRange('B2').getValue();
  var YOUR_NUMBER = sheet.getRange('C2').getValue();
  var AUDIO = sheet.getRange('E2').getValue();
  
  var dataRange = sheet.getRange(2, 4, sheet.getLastRow() - 1, 1);
  var ALL_NUMBERS = dataRange.getValues();

  var TAFSIR = "kemenag";
  var SHAIKH = "alafasy";

  ALL_NUMBERS.forEach(function(row, index) {
    var number = row[0];
    number = String(number).trim();
    
    var randomAyat = getAyatFromAPI();
    
    Logger.log(randomAyat);
  
    var arabic = randomAyat.arab;
    var indonesia = randomAyat.translation;
    
    var surahNumber = randomAyat.number && randomAyat.number.inSurah ? randomAyat.number.inSurah : 'Unknown Surah';
    var numberInSurah = randomAyat.number && randomAyat.number.inQuran ? randomAyat.number.inQuran : 'Unknown Ayat';
  
    var tafsirQuran = randomAyat.tafsir && randomAyat.tafsir[TAFSIR] && randomAyat.tafsir[TAFSIR].short 
      ? randomAyat.tafsir[TAFSIR].short 
      : 'Tafsir tidak tersedia';
  
    var audioUrl = randomAyat.audio[SHAIKH];
  
    var MessageTemplate = `*Ayat Alquran*

    {{arabic}}

    {{indonesia}}

    *(Qs. {{S}}:{{Q}})*

    *Tafsir (${TAFSIR}):*
    {{tafsir}}

    *Sedekah Jariyah*`;
    
    var Message = MessageTemplate.replace("{{arabic}}", arabic)
                                 .replace("{{indonesia}}", indonesia)
                                 .replace("{{Q}}", numberInSurah)
                                 .replace("{{S}}", surahNumber)
                                 .replace("{{tafsir}}", tafsirQuran);
    
    if (AUDIO == 2) {
      Logger.log("Mengirim Teks ke nomor: " + number);
      Logger.log("Pesan Teks: " + Message);
      sendTextMessage(YOUR_WEBSITE, API, YOUR_NUMBER, number, Message);
      
      Logger.log("Mengirim Audio ke nomor: " + number);
      Logger.log("URL Audio: " + audioUrl);
      sendAudioMessage(YOUR_WEBSITE, API, YOUR_NUMBER, number, audioUrl);
      
    } else if (AUDIO == 1) {
      Logger.log("Mengirim Audio ke nomor: " + number);
      Logger.log("URL Audio: " + audioUrl);
      sendAudioMessage(YOUR_WEBSITE, API, YOUR_NUMBER, number, audioUrl);
      
    } else {
      Logger.log("Mengirim Teks ke nomor: " + number);
      Logger.log("Pesan Teks: " + Message);
      sendTextMessage(YOUR_WEBSITE, API, YOUR_NUMBER, number, Message);
    }

    Utilities.sleep(2000);
  });
}

function getAyatFromAPI() {
  var url = "https://quran-api-id.vercel.app/random";
  var response = UrlFetchApp.fetch(url);
  var data = JSON.parse(response.getContentText());
  
  Logger.log(data);
  
  return data;
}

function sendTextMessage(YOUR_WEBSITE, API, sender, number, message) {
  var url = YOUR_WEBSITE + "/send-message";
  var payload = {
    'api_key': API,
    'number': number,
    'sender': sender,
    'message': message
  };
  
  var options = {
    'method': 'POST',
    'contentType': 'application/json',
    'payload': JSON.stringify(payload),
    'muteHttpExceptions': true
  };
  
  var response = UrlFetchApp.fetch(url, options);
  Logger.log("Response from server: " + response.getContentText());
}

function sendAudioMessage(YOUR_WEBSITE, API, sender, number, audioUrl) {
  var url = YOUR_WEBSITE + "/send-media";
  var payload = {
    'api_key': API,
    'number': number,
    'sender': sender,
    'media_type': 'audio',
    'caption': '',
    'url': audioUrl
  };
  
  var options = {
    'method': 'POST',
    'contentType': 'application/json',
    'payload': JSON.stringify(payload),
    'muteHttpExceptions': true
  };
  
  var response = UrlFetchApp.fetch(url, options);
  Logger.log("Response from server: " + response.getContentText());
}

lalu tambahkan trigger sesuai kebutuhan kalian. contoh 15/30/60 menit sekali


Jika pilih hybrid akan seperti ini
image.png.3b99040e17f25408d6fcf1240a908726.png

Notes
 

Quote

FUNCTION            
1. Your website anda bisa isi URL MPWA sendiri            
2. Apikey cukup isi 1 apikey saja            
3. Sender bisa anda isi beberapa nomor sender yang sudah terconnect di mpwa            
4. Nomor tujuan dapat di isi berapa banyak pun            
5. 0 (Text Only) | 1 (Audio Only) | 2 (Text+Audio)            
6. Message dikirim ke nomor tujuan berbeda ayat untuk menghidari nya spam     
   


 

Edited by Pebrian

comment_77656
45 minutes ago, Pebrian said:

SHARE QURAN VIA GOOGLE APPSCRIPT (Script quran.php dari mamank @Magd Almuntaser)

Buka Google Spreadsheets lalu buat table seperti ini ( Your Website | Apikey | Sender | Tujuan | Text/Audio/Hybrid )

image.png.197932549ec8a943dd3e735bbb1e0812.png

atau bisa copy dari ini : https://docs.google.com/spreadsheets/d/1ICpCKMOSFOxDDeipt71wDHakocBVFmQVrpmguHWcEkM/edit?usp=sharing
 

lalu pergi ke Extensi -> AppScript

lalu copas script ini ke appscript lalu save.
 

function sendQuranMessage() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var YOUR_WEBSITE = sheet.getRange('A2').getValue();
  var API = sheet.getRange('B2').getValue();
  var YOUR_NUMBER = sheet.getRange('C2').getValue();
  var AUDIO = sheet.getRange('E2').getValue();
  
  var dataRange = sheet.getRange(2, 4, sheet.getLastRow() - 1, 1);
  var ALL_NUMBERS = dataRange.getValues();

  var TAFSIR = "kemenag";
  var SHAIKH = "alafasy";

  ALL_NUMBERS.forEach(function(row, index) {
    var number = row[0];
    number = String(number).trim();
    
    var randomAyat = getAyatFromAPI();
    
    Logger.log(randomAyat);
  
    var arabic = randomAyat.arab;
    var indonesia = randomAyat.translation;
    
    var surahNumber = randomAyat.number && randomAyat.number.inSurah ? randomAyat.number.inSurah : 'Unknown Surah';
    var numberInSurah = randomAyat.number && randomAyat.number.inQuran ? randomAyat.number.inQuran : 'Unknown Ayat';
  
    var tafsirQuran = randomAyat.tafsir && randomAyat.tafsir[TAFSIR] && randomAyat.tafsir[TAFSIR].short 
      ? randomAyat.tafsir[TAFSIR].short 
      : 'Tafsir tidak tersedia';
  
    var audioUrl = randomAyat.audio[SHAIKH];
  
    var MessageTemplate = `*Ayat Alquran*

    {{arabic}}

    {{indonesia}}

    *(Qs. {{S}}:{{Q}})*

    *Tafsir (${TAFSIR}):*
    {{tafsir}}

    *Sedekah Jariyah*`;
    
    var Message = MessageTemplate.replace("{{arabic}}", arabic)
                                 .replace("{{indonesia}}", indonesia)
                                 .replace("{{Q}}", numberInSurah)
                                 .replace("{{S}}", surahNumber)
                                 .replace("{{tafsir}}", tafsirQuran);
    
    if (AUDIO == 2) {
      Logger.log("Mengirim Teks ke nomor: " + number);
      Logger.log("Pesan Teks: " + Message);
      sendTextMessage(YOUR_WEBSITE, API, YOUR_NUMBER, number, Message);
      
      Logger.log("Mengirim Audio ke nomor: " + number);
      Logger.log("URL Audio: " + audioUrl);
      sendAudioMessage(YOUR_WEBSITE, API, YOUR_NUMBER, number, audioUrl);
      
    } else if (AUDIO == 1) {
      Logger.log("Mengirim Audio ke nomor: " + number);
      Logger.log("URL Audio: " + audioUrl);
      sendAudioMessage(YOUR_WEBSITE, API, YOUR_NUMBER, number, audioUrl);
      
    } else {
      Logger.log("Mengirim Teks ke nomor: " + number);
      Logger.log("Pesan Teks: " + Message);
      sendTextMessage(YOUR_WEBSITE, API, YOUR_NUMBER, number, Message);
    }

    Utilities.sleep(2000);
  });
}

function getAyatFromAPI() {
  var url = "https://quran-api-id.vercel.app/random";
  var response = UrlFetchApp.fetch(url);
  var data = JSON.parse(response.getContentText());
  
  Logger.log(data);
  
  return data;
}

function sendTextMessage(YOUR_WEBSITE, API, sender, number, message) {
  var url = YOUR_WEBSITE + "/send-message";
  var payload = {
    'api_key': API,
    'number': number,
    'sender': sender,
    'message': message
  };
  
  var options = {
    'method': 'POST',
    'contentType': 'application/json',
    'payload': JSON.stringify(payload),
    'muteHttpExceptions': true
  };
  
  var response = UrlFetchApp.fetch(url, options);
  Logger.log("Response from server: " + response.getContentText());
}

function sendAudioMessage(YOUR_WEBSITE, API, sender, number, audioUrl) {
  var url = YOUR_WEBSITE + "/send-media";
  var payload = {
    'api_key': API,
    'number': number,
    'sender': sender,
    'media_type': 'audio',
    'caption': '',
    'url': audioUrl
  };
  
  var options = {
    'method': 'POST',
    'contentType': 'application/json',
    'payload': JSON.stringify(payload),
    'muteHttpExceptions': true
  };
  
  var response = UrlFetchApp.fetch(url, options);
  Logger.log("Response from server: " + response.getContentText());
}

lalu tambahkan trigger sesuai kebutuhan kalian. contoh 15/30/60 menit sekali


Jika pilih hybrid akan seperti ini
image.png.3b99040e17f25408d6fcf1240a908726.png

Notes
 


 

Masya Allah..Amaziing mas 😍👍👍👍

saran aja klo bisa penulisannya Ayat Al Quran | Surat: abx | Qs.01:01

sama buat pilihan terjemahan per Ayat bisa ga mas, sprt ini :
 

image.png.12b2e01f0206450ddeb1a31e3c749d8a.png

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

Recently Browsing 3

Latest Updated Files