Estoy tratando de crear una aplicación de llamadas usando flutter y he creado el backend usando un node.js. Así es como se ve mi archivo main.dart en flutter:
import 'package:flutter/material.dart'; import 'dart:async'; import 'dart:io'; import 'package:flutter/services.dart'; import 'package:flutter_dialpad/flutter_dialpad.dart'; import 'dart:js'; import 'package:js/js.dart'; void main() => runApp(MyApp()); class MyApp extends StatefulWidget { @override _MyAppState createState() => _MyAppState(); } class _MyAppState extends State<MyApp> { @override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( backgroundColor: Colors.black, body: SafeArea( child: DialPad( enableDtmf: true, outputMask: "(000) 000-0000", backspaceButtonIconColor: Colors.red, makeCall: (number){ print(number); } ) ), ), ); } }
Quiero usar esta variable de "número" en mi archivo app.js que se ve así:
const accountSid = '***'; const authToken = '***'; const client = require('twilio')(accountSid, authToken); client.calls.create({ url: 'http://demo.twilio.com/docs/voice.xml', to: '+10000000', from: '+1000000', }, function(err, call){ if (err) { console.log(err); } else { console.log(call.sid); } })
Quiero poder usar la variable "número" de mi archivo main.dart en el campo "para" en mi archivo app.js. Por favor, ayúdame...
Lo que necesita es una forma de pasar datos entre aplicaciones, y la forma más fácil sería a través de una API REST. Puede usar el módulo HTTP en NodeJS o un paquete de terceros como Express y configurar una ruta POST a su servidor NodeJS. , donde el número se envía como dato. Una vez que se reciben los datos en su servidor, puede llamar a su función Twilio y enviar una respuesta. En Flutter, puede usar el paquete http para realizar la llamada a la API.