Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Enviar mensaje de texto con API smsgateway.me

Estas en el tema de Enviar mensaje de texto con API smsgateway.me en el foro de PHP en Foros del Web. Hola a todos estado rompiéndome la cabeza para poder enviar mensajes automatizados y no puedo :( quisiera que alguien me ayude. Les explico un poc ...
  #1 (permalink)  
Antiguo 21/10/2016, 13:52
 
Fecha de Ingreso: junio-2015
Mensajes: 38
Antigüedad: 8 años, 10 meses
Puntos: 0
Exclamación Enviar mensaje de texto con API smsgateway.me

Hola a todos estado rompiéndome la cabeza para poder enviar mensajes automatizados y no puedo :( quisiera que alguien me ayude. Les explico un poc


Aquí viene mi dolor de cabeza en el archivo Sms.php

Código PHP:
<?php
require "arreglo.php";
include 
"SmsGateway.php";
$smsGateway = new SmsGateway('[email protected]''contraseña');
date_default_timezone_set('America/Lima');

$deviceID IDAPI;
$number '+519999999';
$message 'Feliz cumpleaños"!';
$options = [
'send_at' => strtotime("+2 minutes"),
'expires_at' => strtotime('+1 hour'// Cancel the message in 1 hour if the message is not yet sent
];
$result $smsGateway->sendMessageToNumber($number$message$deviceID,$options);
?>
Pues verán el problema es el strtotime, ahi dice que en 2 minutos se enviara el mensaje y lo hace, pero yo quisiera sacar la fecha de una BD y pasarla por Srtotime + una hora indicada, pero me sale error.

Asi que tengo algo asi

Código PHP:
<?php
date_default_timezone_set
('America/Lima');
$pdo = new PDO('pgsql:host=localhost;port=5432;dbname=Eventos''postgres''12345'); 
$stmt $pdo->prepare("Select to_char(fecha_cumpleaños,'dd-mm-yyyy') from cliente"); 
$stmt->execute(); 
$cumpleaños $stmt->fetchAll(PDO::FETCH_COLUMN0); 
var_dump($cumpleaños);
?>
y me muestra un arrays con todas las fecha y quisiera que segun el mes y el dia se pueda enviar los mensajes de texto, por favor alguien que me ayude
  #2 (permalink)  
Antiguo 21/10/2016, 16:32
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Enviar mensaje de texto con API smsgateway.me

Yo tuve que montar algo un pelín más complejo que eso y te recomiendo no depender del proveedor para la programación del SMS. Yo montaría un sistema de pooling que salte cada 'x' minutos y consulte la BBDD para ver si es la hora de enviar un SMS y entonces lo envíe de forma inmediata. Para la programación de que se compruebe cada "x" minutos podrías usar cron para que te ejecute un pequeño script de php.
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 21/10/2016, 16:36
 
Fecha de Ingreso: junio-2015
Mensajes: 38
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Enviar mensaje de texto con API smsgateway.me

Hola Malenko te agradezco por responderme, estoy haciendo un pequeño proyecto que consiste en una plataforma web y necesito enviar los mensaje y la verdad soy novato en lo de PHP y si me dices que el sistema de pooling es mas complejo estoy refrito xD pero igual leere algo al respecto
  #4 (permalink)  
Antiguo 22/10/2016, 09:06
 
Fecha de Ingreso: junio-2015
Mensajes: 38
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Enviar mensaje de texto con API smsgateway.me

Aquí la solución

Código PHP:
<?php
require "arreglo.php";
require 
"fecha.php";
include 
"SmsGateway.php";
$smsGateway = new SmsGateway('[email protected]''contraseña');
date_default_timezone_set('America/Lima');
 
$deviceID IDAPI;
$number $resultado;
$message 'Feliz cumpleaños"!';
$options = [
'send_at' => strtotime(date('Y-'.$fecha_cumpleaños.' 09:42:00',time())),
'expires_at' => strtotime('+1 hour'// Cancel the message in 1 hour if the message is not yet sent
];
$result $smsGateway->sendMessageToNumber($number$message$deviceID,$options);
?>
Extraigo el mes y día de cumpleaños de mi usuario en la BD luego lo almaceno en una variable y el año lo extraigo por default, así cada año+día+mes + la hora se le enviara un mensaje :)
  #5 (permalink)  
Antiguo 24/10/2016, 03:28
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Enviar mensaje de texto con API smsgateway.me

Y si la fecha del cumpleaños es, pongamos un ejemplo, de aquí a 2-3 meses? Confías en que un sistema externo va a almacenar tus peticiones tanto tiempo? Has preguntado con cuanta antelación puedes programar los SMS?
__________________
Aviso: No se resuelven dudas por MP!
  #6 (permalink)  
Antiguo 25/10/2016, 15:50
 
Fecha de Ingreso: junio-2015
Mensajes: 38
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Enviar mensaje de texto con API smsgateway.me

claro que no, en mi
Código PHP:
require "fecha.php"
hago una comprobación si la fecha cumpleaños de mi cliente es = a la fecha actual recién se envié y como todos los días se comprobara a las 6:am esa tarea por un .bat, ademas es la solución que encontré y nadie me me ha dado una mejor por aquí. Saludos

Etiquetas: mensaje
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:09.