sonic channel
v1.1.0
عميل الصدأ للواجهة الخلفية للبحث الصوتي.
ننصحك بالبدء بالوثائق.
MSRV هو: 1.58.1
قم بإضافة sonic-channel = { version = "1.1" }
كتابع في Cargo.toml
.
مثال Cargo.toml
:
[ package ]
name = " my-crate "
version = " 0.1.0 "
authors = [ " Me <[email protected]> " ]
[ dependencies ]
sonic-channel = { version = " 1.1 " , features = [ " ingest " ] }
أضف default-features = false
إلى التبعية، إذا كنت تريد استبعاد قناة search
الافتراضية.
ملاحظة: يتطلب هذا المثال تمكين ميزة search
، التي يتم تمكينها افتراضيًا.
use sonic_channel :: * ;
fn main ( ) -> result :: Result < ( ) > {
let channel = SearchChannel :: start (
"localhost:1491" ,
"SecretPassword" ,
) ? ;
let objects = channel . query ( QueryRequest :: new (
Dest :: col_buc ( "collection" , "bucket" ) ,
"recipe" ,
) ) ? ;
dbg ! ( objects ) ;
Ok ( ( ) )
}
ملاحظة: يتطلب هذا المثال تمكين ميزة ingest
.
use sonic_channel :: * ;
fn main ( ) -> result :: Result < ( ) > {
let channel = IngestChannel :: start (
"localhost:1491" ,
"SecretPassword" ,
) ? ;
let dest = Dest :: col_buc ( "collection" , "bucket" ) . obj ( "object:1" ) ;
let pushed = channel . push ( PushRequest :: new ( dest , "my best recipe" ) ) ? ;
// or
// let pushed = channel.push(
// PushRequest::new(dest, "Мой лучший рецепт").lang(Lang::Rus)
// )?;
dbg ! ( pushed ) ;
Ok ( ( ) )
}
ملاحظة: يتطلب هذا المثال تمكين ميزة control
.
use sonic_channel :: * ;
fn main ( ) -> result :: Result < ( ) > {
let channel = ControlChannel :: start (
"localhost:1491" ,
"SecretPassword" ,
) ? ;
let result = channel . consolidate ( ) ? ;
assert_eq ! ( result, ( ) ) ;
Ok ( ( ) )
}