Bu sayfada, Mürekkep balığı cihazında ortamın nasıl kontrol edileceği açıklanmaktadır REST API veya komut satırı arayüzünü kullanarak. Örneğin, Kablosuz sinyali veya Mürekkep balığı cihazının GPS konumunu güncelleyin.
Hizmetler
cvd env
komutu,
Mürekkep balığı ortamı:
Hizmetler | Açıklama |
---|---|
GnssGrpcProxy
|
Mürekkep balığı coğrafi konumu için GNSS'yi kontrol eder özelliğini kullanabilirsiniz. |
OpenwrtControlService
|
Sanallaştırılmış bir Kablosuz erişim noktası olan Openwrt 'i kontrol eder
sağlayıcım var. |
WmediumdService
|
Kablosuz ortam simülatörü olan Wmediumd öğesini kontrol eder
kablosuz ağ özelliğini kullanıyor. |
REST API'yi kullanarak ortamı kontrol etme
Bu bölümde, Rest API'yi kullanarak ortamın nasıl kontrol edileceği açıklanmaktadır
<https://localhost:1443>
hizmet uç noktası aracılığıyla yapılıyor.
Kullanılabilir hizmetleri veya yöntemleri listeleme
Tüm hizmetlerin listesini almak için aşağıdaki URL'ye şu şekilde bir GET
isteği gönderin:
Cihaz kimliği.
https://localhost:1443/devices/DEVICE_ID/services
Bir hizmete yönelik tüm yöntemlerin listesini almak için şuraya bir GET
isteği gönderin:
aşağıdaki URL'yi eklemeniz gerekir.
https://localhost:1443/devices/DEVICE_ID/services/SERVICE_NAME
Bir yöntemle ilgili ayrıntılı bilgi (ör. istek veya yanıt) almak için
aşağıdaki URL'ye bir cihaz kimliğiyle GET
isteği gönderin,
hizmet adı ve yöntem adı girilmelidir.
https://localhost:1443/devices/DEVICE_ID/services/SERVICE_NAME/METHOD_NAME
İstek ve yanıt türleriyle ilgili ayrıntılı bilgi edinin
Bir istek veya yanıt mesajı türüyle ilgili ayrıntılı bilgi edinmek için GET
gönderin
aşağıdaki URL'ye bir cihaz kimliği, hizmet adı ve
mesaj türünden
emin olmanız gerekir. Bu, her bir dosyanın adını ve türünü
alanına girmelisiniz. Daha sonra bu bilgileri kullanarak
RPC isteği göndermek için kullanılan JSON biçimli proto mesajı.
https://localhost:1443/devices/DEVICE_ID/services/SERVICE_NAME/REQUEST_OR_RESPONSE_TYPE_NAME/type
Ortamda değişiklik yapmak için RPC isteği gönderme
JSON biçimli protosu olan bir hizmetin yöntemini çağırmak üzere RPC isteği göndermek için,
aşağıdaki URL'ye bir cihaz kimliğine, hizmete sahip bir POST
isteği gönderin
ve yöntem adı girilmelidir. JSON biçimli protokol,
gövde.
https://localhost:1443/devices/DEVICE_ID/services/SERVICE_NAME/METHOD_NAME
Kullanım alanı örneği
Aşağıda, Wi-Fi'ı değiştirmek için Rest API'nin örnek kullanım alanı verilmiştir
SetTxpower
numaralı telefonu arayarak sinyal gücü.
Hizmet adını, yöntem adını ve istek mesajı türünü belirleme kablosuz sinyal gücünü değiştirme adı.
Şuna bir
GET
isteği göndererek kullanılabilir tüm hizmetlerin listesini alabilirsiniz: ekleyin.https://localhost:1443/devices/cvd-1/services
Bu, örnek bir yanıttır.
{"services":["OpenwrtControlService","EchoService","GnssGrpcProxy","WmediumdService"]}
GET
isteği göndererekWmediumdService
için yöntemlerin listesini alın .https://localhost:1443/devices/cvd-1/services/WmediumdService
Bu, örnek bir yanıttır.
{"methods":["ListStations","LoadConfig","ReloadConfig","SetCivicloc","SetLci","SetPosition","SetSnr","SetTxpower","StartPcap","StopPcap"]}
Şunun için istek ve yanıt mesajı türleri hakkında bilgi edinin:
SetTxpower
yöntemini kullanarakGET
yöntemini kullanabilirsiniz.https://localhost:1443/devices/cvd-1/services/WmediumdService/SetTxpower
Bu, örnek bir yanıttır.
{"request_type_name":"wmediumdserver.SetTxpowerRequest","response_type_name":"google.protobuf.Empty"}
wmediumdserver.SetTxpowerRequest
isteğiyle ilgili ayrıntılı bilgi edinin aşağıdaki URL'ye birGET
isteği göndererek mesaj türünü belirtin.https://localhost:1443/devices/cvd-1/services/WmediumdService/wmediumdserver.SetTxpowerRequest/type
Bu, örnek bir yanıttır.
message SetTxpowerRequest { string mac_address = 1; int32 tx_power = 2; }
Kablosuz ağı değiştirmek için
WmediumdService
hizmetine RPC isteği gönderin bu URL'ye birPOST
isteği göndererek istenen sinyale kadar sinyal gücünü artırın aşağıdaki istek gövdesiyle değiştirebilirsiniz.https://localhost:1443/devices/cvd-1/services/WmediumdService/SetTxpower
{"mac_address":"42:00:00:00:00:00", "tx_power":1}
Bu, örnek bir yanıttır.
{}
Komut satırını kullanarak ortamı kontrol etme
Bu bölümde cvd env
CLI komutu için kullanılabilen alt komutlar açıklanmaktadır.
Daha fazla bilgi için, yardım mesajını cvd help env
kullanarak yazdırın.
Kullanılabilir hizmetleri veya yöntemleri listeleme
Tüm hizmetlerin listesini almak için cvd env ls
öğesini bağımsız değişken olmadan kullanın.
cvd env ls
Bir hizmete yönelik tüm yöntemlerin listesini almak için hizmeti kullanabilirsiniz.
cvd env ls SERVICE_NAME
İstek veya yanıt mesajı türleri gibi ayrıntılı bilgileri almak için yöntemini eklemeyi unutmayın.
cvd env ls SERVICE_NAME METHOD_NAME
İstek ve yanıt türleriyle ilgili ayrıntılı bilgi edinin
Bir istek veya yanıt mesajı türüyle ilgili ayrıntılı bilgi edinmek için
cvd env type
komutudur. Bu komut, her alanın tüm adlarını ve türlerini yazdırır
sağlayabilirsiniz. Daha sonra bu bilgileri kullanarak JSON biçiminde bir metin
proto mesajı gösterilir.
cvd env type SERVICE_NAME REQUEST_OR_RESPONSE_TYPE_NAME
Ortamda değişiklik yapmak için RPC isteği gönderme
JSON biçimli protosu olan bir hizmetin yöntemini çağırmak üzere RPC isteği göndermek için,
cvd enc call
komutunu kullanın. RPC isteği sona erdiğinde arayüz,
Rpc succeeded with OK status
mesajını ve varsa bir yanıt yazdırır
mesajı görebilirsiniz.
cvd env call SERVICE_NAME METHOD_NAME JSON_FORMATTED_PROTO
Kullanım alanı örneği
Aşağıda, değişiklik yapmaya ilişkin cvd env
CLI komutunun örnek bir kullanım alanı verilmiştir
SetTxpower
numaralı telefonu arayarak kablosuz ağ sinyal gücünü artırın.
Hizmet adını, yöntem adını ve istek mesajı türünü belirleme kablosuz sinyal gücünü değiştirme adı.
Kullanılabilir tüm hizmetlerin listesini alın.
cvd env ls (Omitted) { "services" : [ "OpenwrtControlService", "EchoService", "GnssGrpcProxy", "WmediumdService" ] }
WmediumdService
için yöntemlerin listesini alın.cvd env ls WmediumdService (Omitted) { "methods" : [ "ListStations", "LoadConfig", "ReloadConfig", "SetCivicloc", "SetLci", "SetPosition", "SetSnr", "SetTxpower", "StartPcap", "StopPcap" ] }
Şunun için istek ve yanıt mesajı türleri hakkında bilgi edinin:
SetTxpower
yöntemini çağırın.cvd env ls WmediumdService SetTxpower (Omitted) { "request_type" : "wmediumdserver.SetTxpowerRequest", "response_type" : "google.protobuf.Empty" }
wmediumdserver.SetTxpowerRequest
isteğiyle ilgili ayrıntılı bilgi edinin mesaj türü.cvd env type WmediumdService wmediumdserver.SetTxpowerRequest (Omitted) message SetTxpowerRequest { string mac_address = 1; int32 tx_power = 2; }
Kablosuz ağı değiştirmek için
WmediumdService
hizmetine RPC isteği gönderin sinyal gücünü istediğiniz düzeye indirin.cvd env call WmediumdService SetTxpower "{mac_address:'42:00:00:00:00:00', tx_power:1}" (Omitted) Rpc succeeded with OK status {}