Blog

Suscripción a DORNI-SPACE-TIME

En esta lista de correo enviamos a los suscriptores los datos astronómicos del día y estado de la mar así como ofertas de trabajo.

News letter Dorni-Space-Time:
suscripcion a dorni-space-time

Usar los web-hooks de Discord desde PHP

Para enviar mensajes a Discord desde PHP debemos crear un web-hook desde Discord.
Debemos ir a ajustes de nuestro servidor > Integraciones y crear el web-hook , deberemos seleccionar el nombre y el canal donde se mostraran los mensajes y copiar la URL que nos facilita.

En nuestro servidor web ( hemos usado xampp) escribimos el siguiente script PHP:

<?php
//API URL
$url = 'URL-QUE-HEMOS-COPIADO-ANTES';

//create a new cURL resource
$ch = curl_init($url);

//setup request to send json via POST
$data = array(
    'content' => 'Hello DorniSoft!!'
    //'embeds' => '123456'
);
$payload = json_encode($data);

print_r($payload);

//attach encoded JSON string to the POST fields
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);

//set the content type to application/json
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));

//return response instead of outputting
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

//execute the POST request
$result = curl_exec($ch);

print $result;

//close cURL resource
curl_close($ch);

?>

Véase que la variable $data es un array con los parametros que le pasamos a Discord y el elemento ‘content’ es el mensaje que queremos enviar al canal .
Luego realizamos una petición POST a Discord enviandole el JSON y el mensaje se recibe en el canal seleccionado .

Espero que te haya gustado 😉

Números pseudoaleatorios en función de una fecha

Para conseguir que una determinada entrada provoque una salida aleatoria que sea siempre igual para esa determinada entrada, hemos creado este script en php que nos devuelve un número pseudoaleatorio en función de una determinada fecha, en este caso vamos a obtener un numero aleatorio entre el 0 y el 72. Y siempre será el mismo para esa determinada fecha.

<?php



$fechaInicio=strtotime("01-04-2022");
$fechaFin=strtotime("03-04-2032");
$stadistica=array();
for($i=$fechaInicio; $i<=$fechaFin; $i+=86400){
	$ano=date('Y',$i);
	$ano =substr($ano,2,2);
	$mes=date('m',$i);
	$dia=date('d',$i);
	
    
	$aleatorio=((((3*$dia)+(8*$mes)+($ano))%73)+((7*$dia)+(17*$mes)+(2*$ano)))%73;
	$stadistica[$aleatorio]+=1;
	echo"ano $ano----- mes $mes---------dia $dia-----</BR>";

}

ksort($stadistica);

foreach($stadistica as $clave=>$valor){
	//el [clave numero aleatorio]=>ocurrencias del mismo
	echo "[".$clave."]=> ". $valor."</BR>";
}
?>

Ejecutamos el script para ver los resultados y vemos que en el periodo de fechas comprendido entre 01-04-2022 y 03-04-2032 los resultados son los siguientes: [numero aleatorio]=>ocurrencias del mismo.

[0]=> 47
[1]=> 51
[2]=> 50
[3]=> 48
[4]=> 50
[5]=> 49
[6]=> 49
[7]=> 52
[8]=> 52
[9]=> 50
[10]=> 50
[11]=> 52
[12]=> 48
[13]=> 49
[14]=> 51
[15]=> 48
[16]=> 50
[17]=> 51
[18]=> 49
[19]=> 51
[20]=> 50
[21]=> 50
[22]=> 50
[23]=> 50
[24]=> 50
[25]=> 50
[26]=> 50
[27]=> 50
[28]=> 50
[29]=> 49
[30]=> 50
[31]=> 52
[32]=> 51
[33]=> 52
[34]=> 53
[35]=> 49
[36]=> 50
[37]=> 51
[38]=> 48
[39]=> 48
[40]=> 54
[41]=> 49
[42]=> 50
[43]=> 53
[44]=> 49
[45]=> 50
[46]=> 52
[47]=> 49
[48]=> 49
[49]=> 50
[50]=> 49
[51]=> 50
[52]=> 50
[53]=> 49
[54]=> 49
[55]=> 51
[56]=> 50
[57]=> 52
[58]=> 50
[59]=> 51
[60]=> 51
[61]=> 50
[62]=> 49
[63]=> 50
[64]=> 49
[65]=> 50
[66]=> 51
[67]=> 50
[68]=> 50
[69]=> 51
[70]=> 49
[71]=> 50
[72]=> 50

Esperamos que te haya gustado 😉

ESP8266-01S actualizar firmware con Arduino MEGA

Estuve intentando actualizar el firmware del ESP8266-01S de AZDelivery y siguiendo los tutoriales que ví no se adaptaba a mi placa de Arduino ni a mi modulo wifi, asi que me propuse explicar como conseguí actualizar el firmware del módulo wifi ESP8266-01S de AZDelivery, con el firmware NONOS y los últimos comandos AT.

Necesitamos:
1-Arduino MEGA 2560
2-Modulo wifi ESP8266-01S
3-Protoboard
4-Fuente de Alimentación auxiliar para protoboard
5-Jumpers
6-Flash Download Tools (Programa para flashear)
7-NONOS SDK

Realizamos las siguientes conexiones:

ARDUINOESP8266
GNDGND
2GPIO2
4GPIO0
RXRX
TXTX
3CH_PD
3.3v de la fuente auxiliarVCC
Conexiones
Conexiones

Una vez realizadas las conexiones subimos el siguiente sketch a nuestra placa de Arduino MEGA 2560:

int ch_pd = 3;
int io0 = 4;
int io2 = 2;
void setup() {
pinMode(ch_pd, OUTPUT);
pinMode(io0, OUTPUT);
pinMode(io2, OUTPUT);
digitalWrite(io2,HIGH);
digitalWrite(io0,LOW); //GPIO_0 a tierra
digitalWrite(ch_pd, LOW);

delay(1000);
digitalWrite(ch_pd,HIGH);// Bajamos y subimos CH_PD
digitalWrite(io2, LOW);//Subimos y bajamos GPIO_2

}
void loop()
{}

Una vez hecho esto debemos abrir el Flash Download Tools(seleccionaremos en la primera ventana nuestro chip ESP8266 y modo develop), y debemos haber descargado el NONOS SDK del enlace anterior, en el programa de flasheo simplemente tenemos que situar los archivos en su correspondiente dirección de memoria y seleccionar el puerto COM del Arduino y 115200 baud:

Una vez flasheado el programa dirá FINISH y ya podremos desenchufar el Arduino y nuestro modulo se habrá actualizado el firmware.
En próximos post explicaremos como ejecutar comandos AT en nuestro modulo wifi ya actualizado.(Para ejecutar comandos AT podemos seguir el siguiente tutorial AQUÍ).

En posteriores intentos de flasheo del esp8266 no me funcionó este método y tuve que usar un adaptador FTDI conectado con USB, me bajé los drivers para el FTDI de aquí
Y luego simplemente hay que poner el GPIO0 a GND mientras el USB se conecta

Espero que te haya gustado 😉

Subir un proyecto existente a GIT

Si estamos trabajando en windows o mac deberemos bajar GIT para windows o mac desde el enlace GIT . Lo instalamos, en principio siguiente siguiente, las configuraciones por defecto suelen llegar.

Deberemos tener una carpeta con el proyecto que queramos subir al repositorio de GIT

1-A continuación desde nuestra cuenta en github, bitbucket o gitLab creamos un nuevo repositorio y le damos un nombre en este caso juegoAhorcado

Una vez creado el repositorio el propio gitHub nos dice como proceder… solo utilizaremos la primera linea:

2-Ahora abrimos el gitBash que nos acabamos de descargar buscamos en aplicaciones de windows: ‘git’ y aparece el git bash.
Entonces nos dirigimos a la carpeta que tiene el proyecto, si está en C:\xampp\htdocs\juegoAhorcado hacemos:

cd C:/xampp/htdocs/juegoAhorcado

3-Una vez situados en la carpeta del proyecto que debería estar lleno hacemos

git init

para iniciar el proyecto.

4-Seguidamente escribimos la linea que nos ofreció gitHub para conectar los dos repositorios

git remote add origin https://github.com/dornisoft/juegoAhorcado.git

5-Ahora hay que añadir los archivos con la sentencia

git add .

Con este comando añadimos todos los archivos del directorio

6-Es el momento de hacer un commit para pasar los archivos al HEAD que es donde se guardan las modificaciones

git commit -m "commit inicial"

7-En este momento si usamos la consola git por primera vez necesitaremos registrarnos con nuestro usuario de gitHub

git config --global user.name "dornisoft"
git config --global user.email "miemail@ejemplo.com"

8-Y por último subimos el repositorio local al repositorio remoto de gitHub con el comando

git push -u origin master

Y ya tendriamos nuestro codigo en gitHub.

DorniSoft Inc.