Come faccio a effettuare una chiamata vocale dalla mia app Java? Come faccio a far funzionare questo programma?


Sto cercando di effettuare una chiamata a un numero, o qualsiasi servizio vocale casuale perché non deve essere funzionale in quanto si tratta di un progetto scolastico. Ecco il codice per il mio jframe.

Quello che voglio fare è, quando clicco sull'icona della chiamata, chiama il numero o un programma vocale.

public class Counselling extends JFrame {

    private JPanel contentPane;

    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    Counselling frame = new Counselling();
                    frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    /**
     * Create the frame.
     */
    public Counselling() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 100, 510, 450);
        contentPane = new JPanel();
        contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
        setContentPane(contentPane);
        contentPane.setLayout(null);

        JButton btnNewButton = new JButton("");
        Image images = new ImageIcon(this.getClass().getResource("/call.png")).getImage();
        btnNewButton.setIcon(new ImageIcon(images));
        btnNewButton.setBounds(106, 92, 268, 133);
        contentPane.add(btnNewButton);


        JButton button = new JButton("");
        button.setBackground(Color.WHITE);
        Image images2 = new ImageIcon(this.getClass().getResource("/msg.png")).getImage();
        button.setIcon(new ImageIcon(images2));
        button.setBounds(106, 241, 268, 125);
        contentPane.add(button);



        JLabel lblNewLabel_1 = new JLabel("");
        Image images1 = new ImageIcon(this.getClass().getResource("/oc.png")).getImage();
        lblNewLabel_1.setIcon(new ImageIcon(images1));
        lblNewLabel_1.setBounds(38, 16, 435, 60);
        contentPane.add(lblNewLabel_1);
    }
}
Author: Cœur, 2016-01-20

1 answers

Twilio è il servizio più comune là fuori ed è estremamente conveniente. Se stai usando Maven, installa aggiungendolo al tuo pom.file xml:

<dependency>
    <groupId>com.twilio.sdk</groupId>
    <artifactId>twilio-java-sdk</artifactId>
    <version>3.4.5</version>
</dependency>

Ecco alcuni esempi di codice su come effettuare una telefonata:

import java.util.Map;
import java.util.HashMap;

import com.twilio.sdk.TwilioRestClient;
import com.twilio.sdk.TwilioRestException;
import com.twilio.sdk.resource.instance.Account;
import com.twilio.sdk.resource.instance.Call;
import com.twilio.sdk.resource.factory.CallFactory;

public class MakeCall {

    public static final String ACCOUNT_SID = "AC123";
    public static final String AUTH_TOKEN = "456bef";

    public static void main(String[] args) throws TwilioRestException {

        TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID,     AUTH_TOKEN);
        Account mainAccount = client.getAccount();
        CallFactory callFactory = mainAccount.getCallFactory();
        Map<String, String> callParams = new HashMap<String, String>();
        callParams.put("To", "5105551212"); // Replace with your phone number
        callParams.put("From", "(510) 555-1212"); // Replace with a Twilio number
        callParams.put("Url", "http://demo.twilio.com/welcome/voice/");
        // Make the call
        Call call = callFactory.create(callParams);
        // Print the call SID (a 32 digit hex like CA123..)
        System.out.println(call.getSid());
    }
}

Consulta la guida all'installazione di Twilio per java per ulteriori informazioni:

Https://www.twilio.com/docs/java/install

 0
Author: Brett McLain, 2016-01-20 02:59:27