A pedido de (ahora un colaborador del blog) Alejando Mogollon, voy a postear un código muy sencillo para mostrar el ping desde tu router Mikrotik RouterOS hacia la dirección IP que quieras testear para que agregues a tu App, o simplemente potencies tus herramientas de monitoreo y soporte técnico. Este es el resultado:
En este caso, (para testear) desenchufe el cable del port WAN de mi router.
Solo debemos setear como siempre los valores del Router y en este caso las variables $ping_address y $ping_count.
//////// configura tus datos $ipRouteros ="192.168.100.1"; //ip_de_tu_API $Username ="api_usuario"; //usuario_API $Pass ="#pass"; //contraseña_API $Port = 8727; //puerto_API $ping_address = "8.8.8.8"; // ip a pingear que puede venir de un formulario $ping_count = 5; // cantidad de pings que quiero ejecutar.
IMPORTANTE: Agregarle permisos «test» al grupo del usuario que estes usando para conectar. De lo contrario va a tirar un error de permisos.
Descargar ejemplo aqui.
______________________
publicado primero en tech-nico.com
Excelente!
buena un coordiar saludo estoy testiando y me da estos errores
Notice: Undefined variable: receiveddone in C:\xampp\htdocs\phpapimk\api\api_ping\api_mt_include2.php on line 301
Notice: Undefined index: status in C:\xampp\htdocs\phpapimk\api\api_ping\index.php on line 29
Respuesta desde 8.8.8.8: unread_bytes=56 tiempo=64ms TTL=53.
como ven me da ping correctamente pero me genera esos errores
Hay 2 variables que esta intentando recibir y no traen valor. Prueba leyendo sobre empty () en la pagina de php.org
excelente aporte.
consulta, tomando en cuenta que se va armando un programa con los ejemplos que estas poniendo en tu blog, si en vez de poner una ip buscas un cliente? en definitiva es lo mismo pero por ejemplo para armar algo que lo pueda manejar gente con poco conocimiento tecnico por ejemplo la administrativa, se podra hacer algo similar como para chequear los ping a los clientes?
Silvio, Si claro que si. Podrias juntar la busqueda del cliente (mostrando el log), con el grafico de trafico en tiempo real y el ping de este mismo post. Todos los ejemplos estan publicados y funcionando. Slds.
Nico buen día, primero que todo darte las gracias por estos excelentes tutoriales, he aprendido mucho acerca de la API de mikrotik gracias a tus ejemplos.
Me gustaría saber como logro hacer ping infinito y que PHP me muestre cada paquete enviado y recibido en tiempo real, es para implementar una herramienta que me permita monitorizar diferentes routerboars que tenga en mi red y saber cuando alguno se caiga o me envié una latencia muy alta tomarlo como una alarma. espero que me hayas entendido.
Muchas gracias de antemano.
Alexis, Proba con
ping_count=0;
Nico buen día, te cuento que con ping_count=0; debe de funcionar, solo que al ser un ping infinito el php se queda cargando y nunca me muestra el resultado, la idea es ir mostrando el resultado cada segundo por ejemplo.
Muchas Gracias
Buenas tardes,
Compañero es posible guardar el cache de dns a traces del api, generando un código.
Lo que quiero hacer es guardar el registro de paginas visitadas, y esa informacion se almacena en la cache dns
Yesid, Si en principio, no seria complicado obtener con el API las paginas cacheadas. Pero, a mi modo de verlo, no seria un registro valido porque no tienen fecha o IP del cliente que lo accede. Si necesitas mas detalles, busca información sobre el webproxy, quizas te de mas detalles que el cache de DNS. Slds.
buaaaa, una masa loco!! estoy implementando un Hotspot y necesito que un centro de atencion al cliente cree los usuarios a medida que se registran.. voy a desoxidar un poco el php que aprendi hace años. Me vino al pelo tu blog! Gracias!!
Me alegro Juan!!!
Deberias hacer que el ping se muestre con cualquier ip no lo se usando un text y lo imprima en popus para ver el resultado algo a si seria majo.