Method: Mosquitto::Client#on_unsubscribe

Defined in:
ext/mosquitto/client.c

#on_unsubscribe {|mid| ... } ⇒ Boolean

Set the unsubscribe callback. This is called when the broker responds to a unsubscription request.

Examples:

client.on_unsubscribe{|mid| p :unsubscribed }

Yields:

  • (mid)

Returns:

  • (Boolean)

Yields:

  • unsubscribe callback

Yield Parameters:

  • mid (Integer)

    the message id of the unsubscribe message.

Returns:

  • (true)

    on success

Raises:

  • (TypeError, ArgumentError)

    if callback is not a Proc or if the method arity is wrong



2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
# File 'ext/mosquitto/client.c', line 2121

static VALUE rb_mosquitto_client_on_unsubscribe(int argc, VALUE *argv, VALUE obj)
{
    VALUE proc, cb;
    MosquittoGetClient(obj);
    rb_scan_args(argc, argv, "01&", &proc, &cb);
    MosquittoAssertCallback(cb, 1);
    if (!NIL_P(client->unsubscribe_cb)) rb_gc_unregister_address(&client->unsubscribe_cb);
    mosquitto_unsubscribe_callback_set(client->mosq, rb_mosquitto_client_on_unsubscribe_cb);
    client->unsubscribe_cb = cb;
    rb_gc_register_address(&client->unsubscribe_cb);
    return Qtrue;
}