Frühlingsstiefel - Twilio

Twilio ist eine 3 rd Party - Anwendung verwendet , SMS zu senden und Sprachanrufe aus unserer Anwendung zu machen. Es ermöglicht uns, die SMS zu senden und Sprachanrufe programmgesteuert zu tätigen.

In diesem Kapitel erfahren Sie, wie Sie das Senden und Tätigen von SMS mithilfe von Spring Boot mit Twilio implementieren.

Note- Wir haben das Trail-Konto in Twilio verwendet, um die SMS zu senden und Sprachanrufe zu tätigen. Weitere Informationen zu Twilio finden Sie unter www.twilio.com .

Zuerst müssen wir die Twilio-Abhängigkeit in unsere Build-Konfigurationsdatei einfügen.

Maven-Benutzer können der Datei pom.xml die folgende Abhängigkeit hinzufügen.

<dependency>
   <groupId>com.twilio.sdk</groupId>
   <artifactId>twilio</artifactId>
   <version>7.16.1</version>
</dependency>

Gradle-Benutzer können der Datei build.gradle die folgende Abhängigkeit hinzufügen.

compile group: "com.twilio.sdk", name:"twilio", version: "7.16.1"

Initialisieren Sie nun das Twilio-Konto mit ACCOUNT_SID und AUTH_ID im statischen Block wie gezeigt -

static {
   Twilio.init(ACCOUNT_SID, AUTH_ID);
}

SMS senden

Um die SMS zu senden, müssen wir der Message.create () -Methode eine From-Number und eine To-Number geben. Der Inhalt des Nachrichtentexts muss auch für die Methode Message.creator () wie gezeigt bereitgestellt werden.

Message.creator(new PhoneNumber("to-number"), new PhoneNumber("from-number"),
   "Message from Spring Boot Application").create();

Die Hauptdatei der Spring Boot-Anwendungsklasse ist unten dargestellt.

package com.tutorialspoint.smsdemo;

import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import com.twilio.Twilio;
import com.twilio.rest.api.v2010.account.Message;
import com.twilio.type.PhoneNumber;

@SpringBootApplication
public class SmsdemoApplication implements ApplicationRunner {
   private final static String ACCOUNT_SID = "<your-account-sid>";
   private final static String AUTH_ID = "<your-auth-id>";

   static {
      Twilio.init(ACCOUNT_SID, AUTH_ID);
   }
   public static void main(String[] args) {
      SpringApplication.run(SmsdemoApplication.class, args);
   }
   @Override
   public void run(ApplicationArguments arg0) throws Exception {
      Message.creator(new PhoneNumber("to-number"), new PhoneNumber("from-number"),
         "Message from Spring Boot Application").create();
   }
}

Der vollständige Code zum Erstellen der Konfigurationsdatei ist unten angegeben.

Maven – pom.xml

<?xml version = "1.0" encoding = "UTF-8"?>
<project xmlns = "http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.tutorialspoint</groupId>
   <artifactId>smsdemo</artifactId>
   <version>0.0.1-SNAPSHOT</version>
   <packaging>jar</packaging>
   <name>smsdemo</name>
   <description>Demo project for Spring Boot</description>

   <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>1.5.9.RELEASE</version>
      <relativePath /> <!-- lookup parent from repository -->
   </parent>

   <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
      <java.version>1.8</java.version>
   </properties>

   <dependencies>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter</artifactId>
      </dependency>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-test</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>com.twilio.sdk</groupId>
         <artifactId>twilio</artifactId>
         <version>7.16.1</version>
      </dependency>
   </dependencies>

   <build>
      <plugins>
         <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
         </plugin>
      </plugins>
   </build>
   
</project>

Gradle – build.gradle

buildscript {
   ext {
      springBootVersion = '1.5.9.RELEASE'
   }
   repositories {
      mavenCentral()
   }
   dependencies {
      classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
   }
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

group = 'com.tutorialspoint'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
   mavenCentral()
}
dependencies {
   compile('org.springframework.boot:spring-boot-starter')
   testCompile('org.springframework.boot:spring-boot-starter-test')
   compile group: "com.twilio.sdk", name:"twilio", version: "7.11.+"   
}

Sie können eine ausführbare JAR-Datei erstellen und die Spring-Boot-Anwendung mit den folgenden Maven- oder Gradle-Befehlen ausführen:

Verwenden Sie für Maven den folgenden Befehl:

mvn clean install

Nach "BUILD SUCCESS" finden Sie die JAR-Datei im Zielverzeichnis.

Verwenden Sie für Gradle den folgenden Befehl:

gradle clean build

Nach "BUILD SUCCESSFUL" finden Sie die JAR-Datei im Verzeichnis build / libs.

Führen Sie die JAR-Datei mit dem folgenden Befehl aus:

java –jar <JARFILE>

Jetzt erhalten Sie die SMS an Ihre "to-number".

Nachricht empfangen an "to-number".

Sent from your Twilio trail account
- Message from Spring Boot Application

Note- In diesem Beispiel haben wir das Trail-Konto verwendet. Sie sollten daher die Nummern überprüfen, bevor Sie die SMS senden.

Sprachanrufe

Um mit Twilio Sprachanrufe zu tätigen, müssen wir die Call.creator () -Methode aufrufen. Für diese Methode müssen wir eine To-Number-, From-Number- und Voice-Note bereitstellen, wie hier gezeigt.

Call.creator(new PhoneNumber("<to-number>"), new PhoneNumber("<from-number>"),
   new URI("http://demo.twilio.com/docs/voice.xml")).create();

Der Code für die Hauptdatei der Spring Boot-Anwendungsklasse ist unten angegeben.

package com.tutorialspoint.smsdemo; 

import java.net.URI;

import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import com.twilio.Twilio;
import com.twilio.rest.api.v2010.account.Call;
import com.twilio.type.PhoneNumber;

@SpringBootApplication
public class SmsdemoApplication implements ApplicationRunner {
   private final static String ACCOUNT_SID = "<ACCOUNT-SID>";
   private final static String AUTH_ID = "AUTH-ID";

   static {
      Twilio.init(ACCOUNT_SID, AUTH_ID);
   }
   public static void main(String[] args) {
      SpringApplication.run(SmsdemoApplication.class, args);
   }
   @Override
   public void run(ApplicationArguments arg0) throws Exception {
      Call.creator(new PhoneNumber("<to-number>"), new PhoneNumber("<from-number>"),
         new URI("http://demo.twilio.com/docs/voice.xml")).create();
   }
}

Der Code für die vollständige Build-Konfigurationsdatei ist unten angegeben -

Maven – pom.xml

<?xml version = "1.0" encoding = "UTF-8"?>
<project xmlns = "http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.tutorialspoint</groupId>
   <artifactId>smsdemo</artifactId>
   <version>0.0.1-SNAPSHOT</version>
   <packaging>jar</packaging>
   <name>smsdemo</name>
   <description>Demo project for Spring Boot</description>

   <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>1.5.9.RELEASE</version>
      <relativePath /> <!-- lookup parent from repository -->
   </parent>

   <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
      <java.version>1.8</java.version>
   </properties>

   <dependencies>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter</artifactId>
      </dependency>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-test</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>com.twilio.sdk</groupId>
         <artifactId>twilio</artifactId>
         <version>7.16.1</version>
      </dependency>
   </dependencies>

   <build>
      <plugins>
         <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
         </plugin>
      </plugins>
   </build>
   
</project>

Gradle – build.gradle

buildscript {
   ext {
      springBootVersion = '1.5.9.RELEASE'
   }
   repositories {
      mavenCentral()
   }
   dependencies {
      classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
   }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

group = 'com.tutorialspoint'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
   mavenCentral()
}
dependencies {
   compile('org.springframework.boot:spring-boot-starter')
   testCompile('org.springframework.boot:spring-boot-starter-test')
   compile group: "com.twilio.sdk", name:"twilio", version: "7.11.+"   
}

Sie können eine ausführbare JAR-Datei erstellen und die Spring Boot-Anwendung mit den folgenden Maven- oder Gradle-Befehlen ausführen.

Verwenden Sie für Maven den folgenden Befehl:

mvn clean install

Nach "BUILD SUCCESS" finden Sie die JAR-Datei im Zielverzeichnis.

Verwenden Sie für Gradle den folgenden Befehl:

gradle clean build

Nach "BUILD SUCCESSFUL" finden Sie die JAR-Datei im Verzeichnis build / libs.

Führen Sie nun die JAR-Datei mit dem hier angegebenen Befehl aus:

java –jar <JARFILE>

Jetzt erhalten Sie von Twilio einen Anruf an Ihre "to-number".

Drücken Sie eine beliebige Taste, nachdem Sie an dem Anruf teilgenommen haben. Sie hören die Sprachnotiz von https://demo.twilio.com/docs/voice.xml

Note- In diesem Beispiel haben wir das Trail-Konto verwendet. Sie sollten daher die Nummern überprüfen, bevor Sie Anrufe tätigen.