Topik ini menjelaskan cara memanggil operasi API dari IoT Platform. Dalam contoh ini, operasi Pub dipanggil untuk menerbitkan pesan ke perangkat menggunakan topik kustom.
Lihat dokumentasi API
Anda dapat memanggil operasi Pub untuk menerbitkan pesan ke perangkat menggunakan topik kustom. Untuk informasi lebih lanjut, lihat Daftar Operasi Berdasarkan Fungsi. Baca referensi API dari operasi tersebut untuk memahami data dan izin yang diperlukan untuk memanggil operasi ini.
Buat pengguna RAM dan berikan izin kepada pengguna RAM
Identitas
Anda dapat menggunakan akun Alibaba Cloud, pengguna Resource Access Management (RAM), atau peran RAM untuk memanggil operasi ini. Untuk informasi tentang perbedaan di antara identitas ini, lihat Identitas, Kredensial, dan Otorisasi. Dalam contoh ini, pengguna RAM digunakan untuk memanggil operasi ini.
Masuk ke Konsol RAM. Buat pengguna RAM, pilih hanya opsi OpenAPI Access untuk parameter Mode Akses, lalu catat pasangan AccessKey. Untuk informasi lebih lanjut, lihat Buat Pengguna RAM.
Otorisasi
Di halaman Pengguna Konsol RAM, temukan pengguna RAM yang ingin Anda kelola dan klik Add Permissions di kolom Actions.
Di bagian Select Policy panel Tambah Izin, masukkan
IoTdi kotak pencarian untuk mencari dan memilih kebijakan AliyunIOTFullAccess.CatatanAnda dapat melampirkan kebijakan sistem IoT Platform berikut ke pengguna RAM:
AliyunIOTFullAccess: memberikan izin penuh pada IoT Platform.
AliyunIOTReadOnlyAccess: memberikan izin baca-saja pada IoT Platform.
Untuk informasi lebih lanjut tentang cara membuat kebijakan kustom, lihat Izin Kustom.
Klik OK.
Kredensial
Secara default, pasangan AccessKey dibuat saat Anda membuat pengguna RAM. Anda dapat langsung menggunakan pasangan AccessKey tersebut.
Anda juga dapat melakukan operasi berikut untuk membuat pasangan AccessKey: Pergi ke halaman detail pengguna RAM. Di tab Authentication, klik Create AccessKey. Untuk informasi lebih lanjut, lihat Buat Pasangan AccessKey.
Panggil operasi
Dalam contoh ini, SDK IoT Platform untuk Python digunakan untuk memanggil operasi tersebut.
Siapkan lingkungan Python
Periksa apakah Python 3 sudah terinstal.
Linux atau macOS
Buka terminal dan jalankan perintah
python3 --version.Jika nomor versi Python 3 ditampilkan, Python 3 telah terinstal. Jika tidak, Python 3 belum terinstal. Lanjutkan ke langkah berikutnya untuk menginstal Python 3.
Windows
Di direktori instalasi Python, klik dua kali python.exe untuk membuka Command Prompt. Anda juga dapat menekan Win+R. Di kotak dialog Run, masukkan python dan klik OK.
Jika output serupa dengan yang berikut ini ditampilkan, Python 3 telah terinstal:
Python 3.9.6 (tags/v3.9.6:db3ff76, Jun 28 2021, 15:26:21) [MSC v.1929 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>>Unduh dan instal Python.
Untuk informasi lebih lanjut tentang cara mengunduh Python 3, kunjungi situs resmi Python.
Linux
Dapatkan paket Python.
wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tgzEkstrak paket Python.
tar -zxvf Python-3.9.6.tgzBeralih ke jalur tempat paket Python diekstraksi dan tentukan jalur instalasi.
cd Python-3.9.6 sudo ./configure --prefix=/usr/bin/python3Kompilasi dan instal Python.
make make installKonfigurasikan variabel lingkungan untuk menyimpan jalur instalasi Python 3.
Sebagai contoh, jika Anda menggunakan sistem operasi Ubuntu Linux, lakukan langkah-langkah berikut:
Buka file
.bashrc.nano ~/.bashrcTambahkan konten berikut ke akhir file. Simpan dan tutup file.
export PATH=$PATH:/usr/bin/python3Jalankan perintah berikut untuk memperbarui variabel lingkungan:
source ~/.bashrcJalankan perintah berikut untuk memeriksa apakah variabel lingkungan PATH berisi jalur instalasi Python 3:
echo $PATH
macOS
Python 2.7 diinstal secara default di macOS. Kami sarankan Anda mengunduh dan menginstal versi terbaru Python 3.
Setelah Anda mengunduh paket Python, klik dua kali paket instalasi untuk membuka panduan.
Klik Continue, lalu instal Python 3 sesuai petunjuk.
Konfigurasikan variabel lingkungan untuk menyimpan jalur instalasi Python 3.
Windows
Setelah Anda mengunduh paket Python, klik dua kali paket instalasi untuk membuka panduan. Gunakan pengaturan default dan pilih Add Python 3.9 to PATH.
Klik Instal Sekarang untuk menginstal Python.
Setelah instalasi selesai, klik Close.
Ulangi Langkah 1 untuk memeriksa versi Python 3. Jika nomor versi Python 3 ditampilkan, Python 3 telah terinstal.
Konfigurasikan variabel lingkungan
Dalam contoh ini, variabel lingkungan dikonfigurasi untuk mengelola pasangan AccessKey. Ini mencegah risiko keamanan yang disebabkan oleh hard-coding pasangan AccessKey ke dalam kode bisnis Anda.
Linux atau macOS
Ganti
<access_key_id>dan<access_key_secret>dalam perintah berikut dengan ID AccessKey dan Rahasia AccessKey dari pengguna RAM dan jalankan perintah di terminal:export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id> export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret>Windows
Buat file variabel lingkungan, tambahkan variabel lingkungan
ALIBABA_CLOUD_ACCESS_KEY_IDdanALIBABA_CLOUD_ACCESS_KEY_SECRETke file tersebut, lalu tentukan ID AccessKey Anda untuk ALIBABA_CLOUD_ACCESS_KEY_ID dan Rahasia AccessKey Anda untuk ALIBABA_CLOUD_ACCESS_KEY_SECRET. Kemudian, mulai ulang sistem operasi Windows.
Instal dependensi
pip3 install alibabacloud_tea_openapi
pip3 install alibabacloud_iot20180120
pip3 install alibabacloud-tea-consoleUnduh kode contoh
Pergi ke halaman halaman debugging Pub di OpenAPI Explorer. Untuk informasi lebih lanjut tentang operasi ini, lihat Pub.
Tentukan parameter permintaan IotInstanceId, ProductKey, TopicFullName, dan MessageContent. Anda tidak perlu menentukan parameter lainnya.
Klik Initiate Call.
Setelah Call success ditampilkan di tab Response, klik tab SDK Sample Code dan pilih Python.
Klik Download Project untuk mengunduh paket kode contoh.
Ekstrak paket kode contoh di komputer Anda dan masuk ke direktori alibabacloud_sample.
Jalankan kode
Jalankan perintah berikut:
python sample.pyOutput berikut akan ditampilkan:
{
"headers": {
"date": "Thu, 10 Aug 2023 09:26:52 GMT",
"content-type": "application/json;charset=utf-8",
"content-length": "99",
"connection": "keep-alive",
"keep-alive": "timeout=25",
"access-control-allow-origin": "*",
"access-control-expose-headers": "*",
"x-acs-request-id": "1296FD43-4BD3-5F80-AB2C-1ADF99B02253",
"x-acs-trace-id": "aee72e4c5e***************77fc9d",
"etag": "9umD************cjYJ8og9"
},
"statusCode": 200,
"body": {
"MessageId": 1689000000000004736,
"RequestId": "1296FD43-4BD3-5F80-AB2C-1ADF99B02253",
"Success": true
}
}