freebox_api_php/README.md

89 lines
2.8 KiB
Markdown
Raw Normal View History

# Freebox v6 PHP API v3
2016-03-06 20:33:56 +01:00
Implementation PHP de l'API de la freebox (dans sa version 3).
## Prérequis
2016-03-06 20:33:56 +01:00
Ce projet est basé sur **composer**. Pensez à installer les dependences :)
2016-03-06 20:43:58 +01:00
## Fonctionnalités
Jusqu'a présent, les fonctionalités suivantes ont été implémentées :
- AirMedia
- FileSystem
- FileSystem (Core)
2016-05-16 13:21:21 +02:00
- FsTask
- FsOperation
- FsListing
- FileSharing
2016-03-06 20:43:58 +01:00
- Downloads
- Download
- Configuration
- DHCP
- FTP
- LAN
- Lan (Core)
- Lan Browser
- Wake On Lan
2016-03-06 20:43:58 +01:00
- System
2016-05-17 12:38:03 +02:00
- LCD
- NAT
- Dmz
- Port Forwarding
- Incoming Port
2016-03-06 20:43:58 +01:00
## Utilisation
### Application
La premiere étape est de créer une application.
La seconde est de demander l'autorisation de connexion a la freebox (cf: cadrant led du Freebox Server)
La derniere est de récuperer une session pour utiliser les divers services de l'API
```php
$App = new \alphayax\freebox\utils\Application( 'com.alphayax.freebox.example', 'Freebox PHP API Exemple', '0.0.1');
$App->authorize();
$App->openSession();
```
### Services
2016-03-06 20:33:56 +01:00
Les appels aux services de l'API se font par l'intermédiaire de services.
Ces derniers possedent les méthodes pour récuperer, ajouter ou mettre a jour des données.
Voici un exemple d'utilisation de l'API System.
1. Nous créons un nouveau service "System"
2. Nous demandons de récuperer la configuration actuelle
3. Nous utilisons le modele retourné pour acceder a la donnée `uptime`
```php
$System = new \alphayax\freebox\api\v3\services\config\System( $App);
/** @var \alphayax\freebox\api\v3\models\SystemConfig $SystemConfig */
$SystemConfig = $System->getConfiguration();
2016-05-14 15:54:59 +02:00
\alphayax\utils\cli\IO::stdout( 'Uptime : '. $SystemConfig->getUptime());
2016-03-06 20:33:56 +01:00
```
2016-03-06 20:43:58 +01:00
## Exemples
2016-03-06 20:33:56 +01:00
Les exemples sont disponibles dans le repertoire `exemple`. Ils sont classés par services :
2016-05-14 15:54:59 +02:00
- `AirMedia` : Exemple de lancement d'une video sur le Freebox Player
2016-05-16 13:21:21 +02:00
- `FileSystem`
- `fileSharing` : Un exemple de partage de fichier sur le net
- `fsListing` : Un exemple de scan de repertoires de la freebox
- `fsOperation` : Un exemple d'operations sur le fichiers (copies, déplacement, renommage, par2..)
- `config`
- `check_dns` : Un script pour récuperer la configuration courrante du DHCP
- `DMZ` : Récupération de la confiugration de votre zone démilitarisée
- `Freeplug` : Affichage de votre configuration de Freeplug
- `IncomingPort` : Retourne la configuration actuelle du port d'entrée HTTP
2016-05-17 12:38:03 +02:00
- `LCD` : Exemple de modification de la luminosité du cadrant LCD de la freebox server
- `LAN` : Configuration du LAN et exploration des machines en réseau
- `PortForwarding` : Exemple d'ajout d'une redirection de port
- `download`
- `dl_rss` : Un script qui parse les flux RSS et qui rajoute en téléchagement les items correspondant a une expression réguliere
2016-03-06 20:33:56 +01:00