IBus protocol implementation