forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Основной форум (http://forum.boolean.name/forumdisplay.php?f=49)
-   -   Bluetooth и работа с ним (http://forum.boolean.name/showthread.php?t=13134)

psih1 14.08.2010 15:35

Bluetooth и работа с ним
 
вот тут на днях юзал пример использования Bluetooth разобрался с сервером клиентом а как отправлять сообщение?

psih1 14.08.2010 15:47

Ответ: Bluetooth и работа с ним
 
Так сам нашел отправку русифицырованый пример
PHP код:

program BtProject;
uses bt;
var
    
cmdOKclicked command;
    
waitsearch integer;
    
bt_servers:array[1..2of String; {массив под сервераразмер будет переопределен автоматически}
{
вызывается после завершения поиска серверовсодержит список серверов разделенный ||.
временно возвращает только первый найденный}
procedure servers_list(list: integer);
begin
  wait 
:= MenuAppendString(bt_servers[1]); {количество обнаруженных серверов
    
Debug('servers:'+list);
    
bt.start(bt_servers[1]);{старт соединения с сервером}
end;
{
вызывается после успешного установления соединения}
procedure accept_connection;
var
    
msgString;
begin
    
if bt.is_client=1 then {проверяем мы слиент или сервер :)}
        
msg := 'Сообщение от клиента'
    
else
        
msg := 'Сообщение от сервера';
    
bt.send_message(msg);{посылаем сообщение}
end;
{
вызывается при возникновении ошибок в соединениипропадании соединения.
автоматически вызывается bt.stop;}
procedure connection_error;
var
    
cmcommand;
begin
    showAlert
('Bluetooth',  
              
'Ошибка Bluetooth соединения.'
              
loadImage('/icon.png'),  
              
ALERT_ERROR);  
    
playAlertSound;  
    
cm := createCommand('OK'CM_OK1);  
    
addCommand(cm);  
    
repeat  
        delay
(100);  
    
until getClickedCommand <> emptyCommand;  
end;
{
вызывается при получении сообщения от оппонента}
procedure message_received(msg:String);
begin
  wait 
:= MenuAppendString(msg); 
    
Debug(msg);
end;
begin
    bt
.init;
    
ShowMenu('Main Menu'CH_IMPLICIT); 
     
    
wait      := MenuAppendString('Создать'); 
    
search    := MenuAppendString('Найти'); 

    
cmdOK := CreateCommand('OK'CM_SCREEN1); 
    
AddCommand(cmdOK); 

    
repeat 
      delay
(100); 
      
clicked := GetClickedCommand
    
until clicked cmdOK

    if 
MenuGetSelectedIndex wait then begin
            bt
.wait_connection('ME');  {запуск сервера на ожидание соединений}
            
wait := MenuAppendString('запуск сервера на ожидание соединений');
        
end;    
    if 
MenuGetSelectedIndex search then begin
            bt
.search_connection; {старт поиска серверов}
            
wait := MenuAppendString('старт поиска серверов');
        
end;
    
repeat 
      delay
(100); 
      
clicked := GetClickedCommand
    
until clicked cmdOK;     
    
bt.stop; {отключаем соединение}
end


cherepets 14.08.2010 16:01

Ответ: Bluetooth и работа с ним
 
вроде я этим же примером пользовался, правда так в итоге нигде бт и не заюзал

psih1 16.08.2010 10:16

Ответ: Bluetooth и работа с ним
 
Вот еще столкнулся с проблемой как передать переменную?

cherepets 16.08.2010 10:28

Ответ: Bluetooth и работа с ним
 
вроде только строку, а потом ее разбивать.
хотя может это я не все понял

Eggis 16.08.2010 12:40

Ответ: Bluetooth и работа с ним
 
Отправка:

msg:=''+x //х - переменная;
bt.send_message(msg);

На получаемом телефоне:

procedure message_received(msg:String);
begin
x:=StringToInteger(msg);
end;

Если несколько переменных в одном сообщении, то пользуешься copy, чтобы разбить, как сказал cherepets


Часовой пояс GMT +4, время: 03:39.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot