Découvrez comment installer, configurer et utiliser le SDK IoT Platform pour PHP afin d'appeler les opérations d'API IoT Platform.
Installer le SDK
Le SDK IoT Platform pour PHP fait partie du SDK Alibaba Cloud pour PHP. Si vous avez déjà installé le SDK Alibaba Cloud pour PHP, ignorez cette section.
-
Installez un environnement de développement PHP.
PHP 5.5.0 ou une version ultérieure est requis. Téléchargez et installez PHP depuis le site officiel de PHP.
-
Installez Composer.
Composer gère la dépendance du SDK IoT Platform pour PHP.
Sous Windows, téléchargez et exécutez Composer-Setup.exe depuis getcomposer.org.
-
Sinon, exécutez la commande curl suivante :
curl -sS https://getcomposer.org/installer | php
RemarqueSi l'installation échoue en raison de problèmes réseau, utilisez le miroir Composer d'Alibaba Cloud.
-
Ajoutez la dépendance du SDK IoT Platform pour PHP :
composer require alibabacloud/iotLe code source et la documentation sont disponibles dans les dépôts GitHub openapi-sdk-php-iot et SDK Alibaba Cloud pour PHP.
Initialiser le SDK
Le code suivant montre un exemple d'initialisation du SDK pour appeler une API dans la région Chine (Shanghai).
Créez un objet $iClientProfile avec votre région et vos identifiants, puis transmettez-le à DefaultAcsClient($iClientProfile)DefaultAcsClient($iClientProfile) pour initialiser le client.
include_once 'aliyun-php-sdk-core/Config.php';
use \Iot\Request\V20180120 as Iot;
// Set your AccessKey ID, AccessKey secret, and ProductKey.
$accessKeyId = getenv('ACCESS_KEY_ID');
$accessSecret = getenv('ACCESS_KEY_SECRET');
$iClientProfile = DefaultProfile::getProfile("cn-shanghai", $accessKeyId, $accessSecret);
$client = new DefaultAcsClient($iClientProfile);
|
Paramètre |
Description |
|
$iClientProfile |
Stocke les informations d'initialisation du SDK. Consultez votre région dans le coin supérieur gauche de la console IoT Platform. Tous les ID de région disponibles sont répertoriés dans Régions prises en charge. |
Envoyer une requête
Chaque opération d'API possède une classe correspondante nommée ${nom de l'opération d'API}+"Request"${API operation name}+"Request". Créez une instance $request$request, définissez les paramètres avec les méthodes "set"+${paramètre de requête}"set"+${Request parameter}, et appelez getAcsResponse($request)getAcsResponse($request) pour obtenir la réponse.
Pour obtenir la liste des API cloud IoT Platform, consultez la liste des API. Pour les descriptions des paramètres de requête dans request et des paramètres de réponse dans response, reportez-vous à la référence d'API correspondante.
Cette rubrique utilise l'opération Pub comme exemple pour montrer comment publier un message sur un topic. Pour plus d'informations sur les paramètres de requête, consultez Pub.
Dans le code suivant, ${iotInstanceId}${iotInstanceId} représente l'ID de l'instance. Vous pouvez trouver l'IDID de l'instance actuelle sur la page Instance Overview de la console IoT Platform.
Si un ID existe, vous devez le transmettre. Sinon, l'appel d'API échouera.
Si la page Instance Details ou l'ID n'existe pas, vous n'avez pas besoin de transmettre un ID. Vous pouvez supprimer le code de requête lié à
IotInstanceIdou transmettre une valeur vide"". Sinon, l'appel d'API échouera.
Pour plus d'informations sur les instances, consultez Présentation des instances. Pour savoir comment acheter une instance, consultez Acheter une instance Enterprise. Pour les questions fréquentes, consultez FAQ sur les instances IoT Platform.
$request = new Iot\PubRequest();
$request->setIotInstanceId("iotInstanceId");
$request->setProductKey("productKey");
$request->setMessageContent("aGVsbG93b3JsZA="); //hello world Base64 String.
$request->setTopicFullName("/productKey/deviceName/get"); // The full name of the topic that is used to publish the message.
$response = $client->getAcsResponse($request);
print_r($response);
Annexe : Exemple de code
Vous pouvez accéder au Centre d'exemples de SDK Cloud IoT Platform pour afficher ou télécharger des exemples de code pour les appels d'API. L'exemple de code fournit des exemples pour les SDK Java, Python, PHP, .NET et Go.
Le portail des développeurs OpenAPI d'Alibaba Cloud propose un outil de débogage d'API en ligne. Sur la page API debugging, vous pouvez rechercher et tester des appels d'API. Le portail génère automatiquement des exemples de code SDK dans différents langages en fonction des paramètres que vous saisissez. Consultez le code généré dans l'onglet SDK Example et la réponse dans l'onglet Call Result.