Mulai Cepat: Menyiarkan pesan real time dari aplikasi konsol
Azure SignalR Service menyediakan REST API untuk mendukung skenario komunikasi server-ke-klien seperti penyiaran. Anda dapat memilih bahasa pemrograman apa pun yang dapat melakukan panggilan REST API. Anda dapat memposting pesan ke semua klien yang terhubung, klien tertentu berdasarkan nama, atau grup klien.
Dalam mulai cepat ini, Anda mempelajari cara mengirim pesan dari aplikasi baris perintah ke aplikasi klien yang terhubung di C#.
Prasyarat
Panduan memulai ini dapat dijalankan di macOS, Windows, atau Linux.
- .NET Core SDK
- Editor teks atau editor kode pilihan Anda.
Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Masuk ke Azure
Masuk ke portal Microsoft Azure menggunakan akun Azure Anda.
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Di bagian ini, Anda membuat instans Azure SignalR dasar yang akan digunakan untuk aplikasi Anda. Langkah-langkah berikut menggunakan portal Azure untuk membuat instans baru, tetapi Anda juga dapat menggunakan Azure CLI. Untuk informasi selengkapnya, lihat perintah az signalr create di Referensi CLI Azure SignalR Service.
- Masuk ke portal Azure.
- Di sisi kiri atas halaman, pilih + Buat sumber daya.
- Pada halaman Buat sumber daya, di kotak teks layanan Pencarian dan marketplace, masukkan signalr lalu pilih SignalR Service dari daftar.
- Pada halaman SignalR Service , pilih Buat.
- Pada tab Dasar, Anda memasukkan informasi penting untuk instans SignalR Service baru Anda. Masukkan nilai berikut:
Bidang | Nilai yang Disarankan | Deskripsi |
---|---|---|
Langganan | Memilih langganan Anda | Pilih langganan yang ingin Anda gunakan untuk membuat instans SignalR Service baru. |
Grup sumber daya | Membuat grup sumber daya bernama SignalRTestResources | Pilih atau buat grup sumber daya untuk sumber daya SignalR Anda. Berguna untuk membuat grup sumber daya baru untuk tutorial ini alih-alih menggunakan grup sumber daya yang ada. Untuk membebaskan sumber daya setelah menyelesaikan tutorial, hapus grup sumber daya. Menghapus grup sumber daya juga menghapus semua sumber daya yang termasuk dalam grup. Tindakan ini tidak dapat diurungkan. Sebelum Anda menghapus grup sumber daya, pastikan grup tersebut tidak berisi sumber daya yang ingin Anda simpan. Untuk mengetahui informasi selengkapnya, lihat Menggunakan grup sumber daya untuk mengelola sumber daya Azure Anda. |
Nama sumber daya | testsignalr | Masukkan nama sumber daya unik untuk digunakan untuk sumber daya SignalR. Jika testsignalr sudah diambil di wilayah Anda, tambahkan digit atau karakter hingga namanya unik. Nama harus berupa string 1 hingga 63 karakter dan hanya berisi angka, huruf, dan karakter tanda hubung ( - ). Nama tidak dapat dimulai atau diakhir dengan karakter tanda hubung, dan karakter tanda hubung berturut-turut tidak valid. |
Wilayah | Pilih wilayah Anda | Pilih wilayah yang sesuai untuk instans SignalR Service baru Anda. Azure SignalR Service saat ini tidak tersedia di semua wilayah. Untuk informasi selengkapnya, lihat Ketersediaan wilayah Azure SignalR Service |
Tingkat harga | Pilih Ubah lalu pilih Gratis (Khusus Dev/Test). Pilih Pilih untuk mengonfirmasi pilihan tingkat harga Anda. | Azure SignalR Service memiliki tiga tingkat harga: Gratis, Standar, dan Premium. Tutorial menggunakan tingkat Gratis , kecuali disebutkan sebaliknya dalam prasyarat. Untuk informasi selengkapnya tentang perbedaan fungsionalitas antara tingkatan dan harga, lihat Harga Azure SignalR Service |
Mode layanan | Pilih mode layanan yang sesuai | Gunakan Default saat Anda menghosting logika hub SignalR di aplikasi web Anda dan menggunakan layanan SignalR sebagai proksi. Gunakan Tanpa Server saat Anda menggunakan teknologi Tanpa Server seperti Azure Functions untuk menghosting logika hub SignalR. Mode klasik hanya untuk kompatibilitas mundur dan tidak disarankan untuk digunakan. Untuk informasi selengkapnya, lihat Mode layanan di Azure SignalR Service. |
Anda tidak perlu mengubah pengaturan pada tab Jaringan dan Tag untuk tutorial SignalR.
- Pilih tombol Tinjau + buat di bagian bawah tab Dasar .
- Pada tab Tinjau + buat , tinjau nilai lalu pilih Buat. Dibutuhkan beberapa saat agar penyebaran selesai.
- Setelah penyebaran selesai, pilih tombol Buka sumber daya .
- Pada halaman sumber daya SignalR, pilih Kunci dari menu di sebelah kiri, di bawah Pengaturan.
- Salin string Koneksi untuk kunci primer. Anda memerlukan string koneksi ini untuk mengonfigurasi aplikasi Anda nanti dalam tutorial ini.
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Buat klon sampel aplikasi
Saat layanan sedang disebarkan, mari kita siapkan kodenya. Pertama, kloning aplikasi sampel dari GitHub. Selanjutnya, atur string koneksi SignalR Service ke aplikasi. Terakhir, jalankan aplikasi secara lokal.
Buka jendela terminal git. Ubah ke folder tempat Anda ingin membuat mengkloning sampel proyek.
Jalankan perintah berikut untuk mengkloning repositori sampel. Perintah ini membuat salinan aplikasi sampel di komputer Anda.
git clone https://github.com/aspnet/AzureSignalR-samples.git
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Bangun dan jalankan sampel
Contoh ini adalah aplikasi konsol yang menunjukkan penggunaan Azure SignalR Service. Ini menyediakan dua mode:
- Mode Server: menggunakan perintah sederhana untuk memanggil REST API Azure SignalR Service.
- Mode Klien: menyambungkan ke Azure SignalR Service dan menerima pesan dari server.
Anda juga mempelajari cara membuat token akses untuk mengautentikasi dengan Azure SignalR Service.
Bangun file yang dapat dieksekusi
Kami menggunakan macOS osx.10.13-x64 sebagai contoh. Anda dapat menemukan referensi tentang cara membangun di platform lain.
cd AzureSignalR-samples/samples/Serverless/
dotnet publish -c Release -r osx.10.13-x64
Memulai klien
cd bin/Release/netcoreapp2.1/osx.10.13-x64/
Serverless client <ClientName> -c "<ConnectionString>" -h <HubName>
Memulai server
cd bin/Release/netcoreapp2.1/osx.10.13-x64/
Serverless server -c "<ConnectionString>" -h <HubName>
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Jalankan sampel tanpa menerbitkan
Anda juga dapat menjalankan perintah berikut untuk memulai server atau klien
# Start a server
dotnet run -- server -c "<ConnectionString>" -h <HubName>
# Start a client
dotnet run -- client <ClientName> -c "<ConnectionString>" -h <HubName>
Gunakan rahasia pengguna untuk menentukan String Koneksi
Anda dapat menjalankan dotnet user-secrets set Azure:SignalR:ConnectionString "<ConnectionString>"
di direktori akar sampel. Setelah itu, Anda tidak memerlukan opsi -c "<ConnectionString>"
lagi.
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Penggunaan
Setelah server dimulai, gunakan perintah tersebut untuk mengirim pesan:
send user <User Id>
send users <User List>
send group <Group Name>
send groups <Group List>
broadcast
Anda dapat memulai beberapa klien dengan nama klien yang berbeda.
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Integrasi dengan non-layanan Microsoft
Layanan Azure SignalR memungkinkan non-layanan Microsoft untuk berintegrasi dengan sistem.
Definisi spesifikasi teknis
Tabel berikut menunjukkan semua versi REST API yang didukung hingga saat ini. Anda juga dapat menemukan file definisi untuk setiap versi tertentu
Versi | Status API | Pintu | Specific |
---|---|---|---|
1.0-preview |
Tersedia | 5002 | Swagger |
1.0 |
Tersedia | Standard | Swagger |
Daftar API yang tersedia untuk setiap versi tertentu tersedia dalam daftar berikut.
API | 1.0-preview | 1.0 |
---|---|---|
Disiarkan ke semua | ✓ | ✓ |
Disiarkan ke grup | ✓ | ✓ |
Disiarkan ke beberapa grup | ✓ (Tidak digunakan lagi) | N / A |
Kirim ke pengguna | ✓ | ✓ |
Kirim ke beberapa pengguna | ✓ (Tidak digunakan lagi) | N / A |
Menambahkan pengguna ke grup | N / A |
✓ |
Menghapus pengguna dari grup | N / A |
✓ |
Periksa keberadaan pengguna | N / A |
✓ |
Hapus pengguna dari semua grup | N / A |
✓ |
Kirim ke sambungan | N / A |
✓ |
Tambahkan sambungan ke grup | N / A |
✓ |
Hapus sambungan dari grup | N / A |
✓ |
Tutup sambungan klien | N / A |
✓ |
Service Health | N / A |
✓ |
Disiarkan ke semua orang
Versi | Metode HTTP API | URL Permintaan | Isi permintaan |
---|---|---|---|
1.0-preview |
POST |
https://<instance-name>.service.signalr.net:5002/api/v1-preview/hub/<hub-name> |
{"target": "<method-name>", "arguments": [...]} |
1.0 |
POST |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name> |
{"target": "<method-name>", "arguments": [...]} |
Disiarkan ke grup
Versi | Metode HTTP API | URL Permintaan | Isi permintaan |
---|---|---|---|
1.0-preview |
POST |
https://<instance-name>.service.signalr.net:5002/api/v1-preview/hub/<hub-name>/group/<group-name> |
{"target": "<method-name>", "arguments": [...]} |
1.0 |
POST |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name> |
{"target": "<method-name>", "arguments": [...]} |
Mengirim ke pengguna
Versi | Metode HTTP API | URL Permintaan | Isi permintaan |
---|---|---|---|
1.0-preview |
POST |
https://<instance-name>.service.signalr.net:5002/api/v1-preview/hub/<hub-name>/user/<user-id> |
{"target": "<method-name>", "arguments": [...]} |
1.0 |
POST |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/users/<user-id> |
{"target": "<method-name>", "arguments": [...]} |
Menambahkan pengguna ke grup
Versi | Metode HTTP API | URL Permintaan |
---|---|---|
1.0 |
PUT |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/users/<user-id> |
Menghapus pengguna dari grup
Versi | Metode HTTP API | URL Permintaan |
---|---|---|
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/users/<user-id> |
Periksa keberadaan pengguna dalam grup
Versi API | Metode HTTP API | URL Permintaan |
---|---|---|
1.0 |
GET |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/users/<user-id>/groups/<group-name> |
1.0 |
GET |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/users/<user-id> |
Kode Status Respons | Deskripsi |
---|---|
200 |
Ada pengguna |
404 |
Tidak ada pengguna |
Hapus pengguna dari semua grup
Versi API | Metode HTTP API | URL Permintaan |
---|---|---|
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/users/<user-id>/groups |
Kirim pesan ke sambungan
Versi API | Metode HTTP API | URL Permintaan | Isi Permintaan |
---|---|---|---|
1.0 |
POST |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id> |
{ "target":"<method-name>", "arguments":[ ... ] } |
Tambahkan sambungan ke grup
Versi API | Metode HTTP API | URL Permintaan |
---|---|---|
1.0 |
PUT |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/connections/<connection-id> |
1.0 |
PUT |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id>/groups/<group-name> |
Hapus sambungan dari grup
Versi API | Metode HTTP API | URL Permintaan |
---|---|---|
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/connections/<connection-id> |
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id>/groups/<group-name> |
Tutup sambungan klien
Versi API | Metode HTTP API | URL Permintaan |
---|---|---|
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id> |
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id>?reason=<close-reason> |
Service Health
Versi API | Metode HTTP API | URL Permintaan |
---|---|---|
1.0 |
GET |
https://<instance-name>.service.signalr.net/api/v1/health |
Kode Status Respons | Deskripsi |
---|---|
200 |
Layanan Bagus |
5xx |
Kesalahan Layanan |
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Membersihkan sumber daya
Jika Anda tidak akan terus menggunakan aplikasi ini, hapus semua sumber daya yang dibuat oleh mulai cepat ini dengan langkah-langkah berikut agar Anda tidak dikenakan biaya apa pun:
Di portal Azure, pilih Grup sumber daya di paling kiri, lalu pilih grup sumber daya yang Anda buat. Atau, Anda dapat menggunakan kotak pencarian untuk menemukan grup sumber daya berdasarkan namanya.
Di jendela yang terbuka, pilih grup sumber daya, lalu klik Hapus grup sumber daya.
Di jendela baru, ketik nama grup sumber daya untuk dihapus, lalu klik Hapus.
Mengalami masalah? Coba panduan pemecahan masalah atau beri tahu kami.
Langkah berikutnya
Dalam panduan memulai ini, Anda mempelajari cara menggunakan REST API untuk menyiarkan pesan real time dari SignalR Service ke klien. Selanjutnya, pelajari lebih lanjut cara mengembangkan dan menyebarkan Azure Functions dengan pengikatan SignalR Service, yang dibangun di atas REST API.