Trait SlackWebRequestSender

Source
pub trait SlackWebRequestSender {
    type Error: Error;

    // Required method
    fn send<'life0, 'async_trait, I, K, V, S>(
        &'life0 self,
        method: S,
        params: I,
    ) -> Pin<Box<dyn Future<Output = Result<String, Self::Error>> + Send + 'async_trait>>
       where I: IntoIterator + Send + 'async_trait,
             K: AsRef<str> + 'async_trait,
             V: AsRef<str> + 'async_trait,
             I::Item: Borrow<(K, V)>,
             S: AsRef<str> + Send + 'async_trait,
             Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Functionality for sending authenticated and unauthenticated requests to Slack via HTTP.

If you do not have a custom client to integrate with and just want to send requests, use the default_client() function to get a simple request sender.

Required Associated Types§

Required Methods§

Source

fn send<'life0, 'async_trait, I, K, V, S>( &'life0 self, method: S, params: I, ) -> Pin<Box<dyn Future<Output = Result<String, Self::Error>> + Send + 'async_trait>>
where I: IntoIterator + Send + 'async_trait, K: AsRef<str> + 'async_trait, V: AsRef<str> + 'async_trait, I::Item: Borrow<(K, V)>, S: AsRef<str> + Send + 'async_trait, Self: 'async_trait, 'life0: 'async_trait,

Make an API call to Slack. Takes a map of parameters that get appended to the request as query params.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl SlackWebRequestSender for Client

Source§

type Error = Error

Source§

fn send<'life0, 'async_trait, I, K, V, S>( &'life0 self, method_url: S, params: I, ) -> Pin<Box<dyn Future<Output = Result<String, Self::Error>> + Send + 'async_trait>>
where I: IntoIterator + Send + 'async_trait, K: AsRef<str> + 'async_trait, V: AsRef<str> + 'async_trait, I::Item: Borrow<(K, V)>, S: AsRef<str> + Send + 'async_trait, Self: 'async_trait, 'life0: 'async_trait,

Implementors§