Aceitando conexões SCO em um driver de perfil Bluetooth
Um driver de perfil SCO pode se registrar para responder a solicitações de conexão sco (Connection-Oriented síncronas) de entrada de dispositivos remotos. Por exemplo, um driver de perfil SCO para um dispositivo CTP (perfil de telefonia sem fio) responde a uma solicitação de conexão SCO de entrada do dispositivo CTP, aceitando ou rejeitando a solicitação. Se o driver de perfil do servidor aceitar a solicitação, o driver de perfil do servidor responderá à entrada do dispositivo e passará essa entrada para a pilha de driver Bluetooth.
Os drivers de perfil de servidor devem executar as etapas a seguir para aceitar solicitações de conexão SCO de entrada de dispositivos Bluetooth remotos.
Para receber solicitações de conexão SCO de entrada de dispositivos remotos
Os drivers de perfil devem criar e enviar uma solicitação BRB_SCO_REGISTER_SERVER para registrar uma função de retorno de chamada SCO com a pilha de driver Bluetooth para que a pilha possa notificar o driver de perfil de solicitações de conexão SCO de entrada.
Quando a pilha de driver Bluetooth recebe uma solicitação de conexão SCO de entrada de um dispositivo remoto, ela chama a Função de Retorno de Chamada SCO registrada anteriormente pelo driver de perfil. A pilha de driver Bluetooth passa o valor ScoIndicationRemoteConnect para o parâmetro Indication da função de retorno de chamada.
Para responder a solicitações de conexão de entrada, os drivers de perfil devem criar e enviar uma solicitação de BRB_SCO_OPEN_CHANNEL_RESPONSE . Com base no valor do membro Response da estrutura _BRB_SCO_OPEN_CHANNEL passada com essa solicitação, o driver de perfil do servidor aceita ou rejeita a solicitação de conexão.
Se o driver de perfil do servidor aceitar a conexão, a pilha de driver Bluetooth poderá chamar a Função de Retorno de Chamada SCO conforme especificado no membro De retorno de chamada da estrutura _BRB_SCO_OPEN_CHANNEL para notificar o driver de perfil do servidor de quaisquer alterações na conexão SCO.
Depois que o driver de perfil aceitar uma solicitação de conexão, ele poderá usar outros BRBs para enviar e receber dados pela conexão SCO recém-estabelecida.
Para parar de receber notificações de tentativas de conexão SCO de dispositivo remoto, os drivers de perfil devem criar e enviar uma solicitação BRB_SCO_UNREGISTER_SERVER para cancelar o registro de um servidor quando o driver de perfil processar IRP_MN_REMOVE_DEVICE Plug and Play remover notificações.
Para obter mais informações sobre notificações e funções de retorno de chamada, consulte Suporte a notificações de eventos Bluetooth.