ejemplos de integración api mikrotik · •como funciona la api de mikrotik: –a través del...

46
Ejemplos de Integración API Mikrotik MUM Montevideo 2017

Upload: dinhcong

Post on 22-Sep-2018

337 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

EjemplosdeIntegraciónAPIMikrotik

MUMMontevideo2017

Page 2: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

AgendaHablaIPIntegración & Desarrollo

• Introducción• EjemplobásicoconPHP• IntegraciónAsterisk &Hotspot• IntegraciónAndroid &HotSpot• EjemploenC#conPRTG• Q&A

Page 3: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

SobrenosotrosHablaIPIntegración & Desarrollo

• AdolfoTroncoso<[email protected]>– Desarrolladorconmásde20añosdeexperienciaenprogramacióndeaplicacionesdesktop,webymóvilesconintegraciónentelemetríayprocesosdenegocio.

–MTCNA- MTCTCE• JaimeCruzM.<[email protected]>– Integradordesistemasconmásde10añosdeexperienciaentelecomunicaciones,SistemasLinux,Asterisk ytelefoníaIP.

–MTCNA- MTCTCE

Page 4: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

SobreHablaIPHablaIPIntegración & Desarrollo

www.Hablaip.comSantiagodeChile

• Iniciosenel2015• Asesoríaysoporte• Desarrollodeaplicaciones– Telefonía,SMS– AplicacionesAndroid

• Integracióndesistemas–Monitoreo– Geolocalización

Page 5: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

AgendaHablaIPIntegración & Desarrollo

• Introducción• EjemplobásicoconPHP• IntegraciónAsterisk &Hotspot• IntegraciónAndroid &HotSpot• EjemploenC#conPRTG• Q&A

Page 6: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

IntroducciónHablaIPIntegración & Desarrollo

• Quees?–VienedelinglésApplication ProgrammingInterface–esunconjuntodefuncionesquepermitencontrolarunMikrotik desdeunsistemaexterno

• ComofuncionalaAPIdeMikrotik:– AtravésdelenvíodecomandoyrecepcióndelresultadodesuejecuciónutilizandoelprotocoloTelnetalpuertopordefecto8728/tcp.

Page 7: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

IntroducciónHablaIPIntegración & Desarrollo

• Comandossimples:/login/system/reboot/user/active/listen

• Comandosconatributos:/queue/simple/add=max-limit=256k/1M=name=Cli=target=10.10.10.0/24(consultadeinterfaces)/interface/print?type=ether?type=vlan?#|!

Page 8: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

IntroducciónHablaIPIntegración & Desarrollo

• Ejemplodetrazadecomando/login:

Page 9: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

IntroducciónHablaIPIntegración & Desarrollo

• Consultadeinformaciónsystema:

Page 10: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

IntroducciónHablaIPIntegración & Desarrollo

• Hayunaformafacil deusalaAPIdeMikrotik¿?

Page 11: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

HablaIPIntegración & Desarrollo

• Existenlibreríaspara– PHP– Delphi– C/++/#– Python– Rubyon rails– VB.Net– Java– Perl– Etc.

Introducción

Page 12: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

AgendaHablaIPIntegración & Desarrollo

• Introduccion• EjemplobásicoconPHP• IntegraciónAsterisk &Hotspot• IntegraciónAndroid &HotSpot• EjemploenC#conPRTG• Q&A

Page 13: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

EjemploPHPHablaIPIntegración & Desarrollo

• HabilitarAPIenMikrotik– IP->Service– Enable “api”– Aplicarseguridadalservicio“api”

Page 14: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

EjemploPHPHablaIPIntegración & Desarrollo

• Crearun“Group List”– AplicarPolicies:“api,read,write”

Page 15: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

EjemploPHPHablaIPIntegración & Desarrollo

• Crearunusuario– Crearusuario– Asignargrupo“geo-api”– Aplicarseguridad

Page 16: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

EjemploenPHPHablaIPIntegración & Desarrollo

• Libreríasdeejemplo(DenisBasta)https://wiki.mikrotik.com/wiki/API_PHP_class(KamilTrzcinski)GPLhttps://wiki.mikrotik.com/wiki/RouterOS_PHP_class(Vasil Rangelov)LGPL2.1https://wiki.mikrotik.com/wiki/API_PHP_package

Page 17: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

HablaIPIntegración & Desarrollo

• EjemplocódigoPHPconsulta– UtilizaclasePHPgentileza:DenisBasta[http://wiki.mikrotik.com/wiki/API_PHP_class]

EjemploenPHP

Page 18: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

EjemploenPHPHablaIPIntegración & Desarrollo

DEMOSTRACION

Page 19: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

AgendaHablaIPIntegración & Desarrollo

• Introduccion• EjemplobásicoconPHP• IntegraciónAsterisk &Hotspot• IntegraciónAndroid &HotSpot• EjemploenC#conPRTG• Q&A

Page 20: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Asterisk &HotSpotHablaIPIntegración & Desarrollo

• CreacióndeaccesosHotSpot basadosenelnúmerodeanexodelahabitaciónparapoderidentificarfácilmentecadausuario

– Usuario=númerodehabitación(ej.1020)– Clave=IngresadaporelusuariodesdesuanexoporDTFM

Page 21: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Asterisk &HotSpotHablaIPIntegración & Desarrollo

• CreacióndeaccesosHotSpot basadosenelnúmerodeanexodelahabitaciónparapoderidentificarfácilmentecadausuario– Usuario=númerodeanexo(ej.1020)– Clave=Ingresadaporelusuariodesdesuanexo

API

Page 22: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Asterisk &HotSpotHablaIPIntegración & Desarrollo

• IngresoalHotSpot mediantenro.habitación

Page 23: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Asterisk &HotSpotHablaIPIntegración & Desarrollo

• CreaciónIVRenAsterisk: extensions.conf

demo:29040172

Page 24: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Asterisk &HotSpotHablaIPIntegración & Desarrollo

• CreaciónIVRenAsterisk: extensions.conf

• Debug deconsoladeAsterisk

demo:29040172

Page 25: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Asterisk &HotSpotHablaIPIntegración & Desarrollo

• Creacióndeusuario/clavevíaAPIdeMikrotik

demo:29040172

Page 26: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Asterisk &HotSpotHablaIPIntegración & Desarrollo

• Creacióndeusuario/clavevíaAPIdeMikrotik

demo:29040172

ComandodecreacióndeusuarioHotSpot Mikrotik

Page 27: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Asterisk &HotSpotHablaIPIntegración & Desarrollo

DEMOSTRACION

+(598)29040172

Page 28: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

AgendaHablaIPIntegración & Desarrollo

• Introduccion• EjemplobásicoconPHP• IntegraciónAsterisk &Hotspot• IntegraciónAndroid &HotSpot• EjemploenC#conPRTG• Q&A

Page 29: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Android&HotSpotHablaIPIntegración & Desarrollo

• Creacion deaccesosHotSpot basadosenunmensajeSMS– Usuario=númerodeteléfonomóvil– Clave=generadaautomáticayenviadaporSMS

wifi

Suclavees:5476

APIMikrotik

Page 30: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Android&HotSpotHablaIPIntegración & Desarrollo

• Ejemplodemensajeríadeenvío&respuesta

wifi

Suclavees:5476

APIMikrotik

Page 31: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Android&HotSpotHablaIPIntegración & Desarrollo

• Númerodemo+59895299847• Enviarmensaje:wifi

Page 32: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

Android&HotSpotHablaIPIntegración & Desarrollo

DEMOSTRACION

+59895299847

Page 33: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

AgendaHablaIPIntegración & Desarrollo

• Introduccion• EjemplobásicoconPHP• IntegraciónAsterisk &Hotspot• IntegraciónAndroid &HotSpot• EjemploenC#conPRTG• Q&A

Page 34: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

C#&MikrotikHablaIPIntegración & Desarrollo

• EjemplocódigoC#consultas– UtilizaclaseC#deWikiMikrotik[https://wiki.mikrotik.com/wiki/API_in_C_Sharp]

Page 35: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

C#&MikrotikHablaIPIntegración & Desarrollo

• CreacióndeunPlugIN demonitoreoenC#parasistemaPRTG.

DispositivoMikrotik HotSpotSensorvíaAPIdeMikrotik

Page 36: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

C#&MikrotikHablaIPIntegración & Desarrollo

• SeintegróunsensordeMikrotik víaAPI– NúmerodeusuariosHotSpot activos– NúmerodeusuariosHotSpot creados

SensorcreadoenVisualC#conAPIdeMikrotik

Page 37: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

C#&MikrotikHablaIPIntegración & Desarrollo

UsuariosactivosenMikrotikHotSpot

Page 38: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

C#&MikrotikHablaIPIntegración & Desarrollo

Gráficodeusuarioscreados/activosenMikrotik

HotSpot

Page 39: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

C#&MikrotikHablaIPIntegración & Desarrollo

• EjecutableenC#contraAPIMikrotik consulta:– NúmerodeusuariosHotSpot activos– NúmerodeusuariosHotSpot creados

API

Page 40: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

C#&MikrotikHablaIPIntegración & Desarrollo

• EjecutableenC#contraAPIMikrotik:

API

ConsultadetodoslosusuariosenHotSpot Mikrotik

Page 41: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

C#&MikrotikHablaIPIntegración & Desarrollo

AsíseveenelresultadoenPRTG

Page 42: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

AgendaHablaIPIntegración & Desarrollo

• Introducción&Elproblema• Dashboard conAPIMikrotik• IntegraciónAsterisk &Hotspot• IntegraciónAndroid &HotSpot• MonitoreointegradoconPRTG• PotencialidaddelaAPIMikrotik

Page 43: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

PotencialdeAPIMikrotikHablaIPIntegración & Desarrollo

• PosibilidaddeintegraciónconcualquiersistemaatravésdeunaredTCP/IP.– ConosinInternet

• Existelibreríasenmúltipleslenguajes– PHP,Python,Delphi,C#,etc.

Page 44: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

PotencialdeAPIMikrotikHablaIPIntegración & Desarrollo

• Ejemplospresentadoshoy:

PosibilidadesLÍMITADASsoloportuimaginación

Page 45: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

HablaIPIntegración & Desarrollo

Q&A

Page 46: Ejemplos de Integración API Mikrotik · •Como funciona la API de Mikrotik: –A través del envío de comando y recepción del resultado de su ejecución utilizando el protocolo

EjemplosdeIntegraciónAPIMikrotik

MUMMontevideo2017