Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (1): [1]   

> Без описания
SkaDi
Отправлено: 15 Марта, 2016 - 23:17:52
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 25
Дата рег-ции: Сент. 2013  
Репутация: 0




Пытаюсб наладить обмен между кибор прогой и левой, через сокет но это в итоге.
пробовал сделать по этому примеру(для просмотра ссылки Вам необходимо авторизоваться) но сервер не читает данные которые я отсылаю и левой программы
(посылаю через udpSocket на 127.0.0.1,10005);

потом попробовал пример
 Цитата:
char s[100];
char p[9999];
//if (opensocket ("5.9.150.14", 80)==1)//Можно по ip
if (opensocket ("kibor-bot.com", 80)==1)//Если открыли сокет
{
messagebox ("open");//Воспроизводим
}
else
{messagebox ("not open");//Воспроизводим
}

при использовании opensocket ("kibor-bot.com", 80)- открывает
при opensocket ("5.9.150.14", 80)- не открывает

можно както реализовать мою задачку?
 
 Top
Kibor
Отправлено: 15 Марта, 2016 - 23:27:26
Post Id



Администратор
Эксперт


Просматривает форум
Сообщений всего: 8144
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




 SkaDi пишет:
при использовании opensocket ("kibor-bot.com", 80)- открывает
при opensocket ("5.9.150.14", 80)- не открывает

значить изменился ip..... новый 176.9.203.18
(Добавление)
 Цитата:
char recvs[256];//массив в который принимаем
int flag_recv=0;// это флаг в котором будет 1 когда на сервер придет сообщение
enablelistenport (10005);//включили прослушку 10005 порта (самому выбирать)
recvport (#recvs[0], 256, #flag_recv);//начали слушать. в отдельном потоке
loop()
{
if (flag_recv==1)//если тут 1 - пришло сообщение
{
flag_recv=0;//обнулим
messagebox (format(#recvs[0]));
}
sleep(10);
}

чудесно слушает и выводит посланное сообщение на 127.0.0.1 10005
 
 Top
SkaDi
Отправлено: 16 Марта, 2016 - 11:11:11
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 25
Дата рег-ции: Сент. 2013  
Репутация: 0




char s[100];
char p[9999];
//if (opensocket ("5.9.150.14", 80)==1)//Можно по ip
if (opensocket ("127.0.0.1", 10005)==1)//Если открыли сокет
{
messagebox ("open");//Воспроизводим
}
else
{messagebox ("not open");//Воспроизводим
}

чето на работе даже так не открывает((((( дома делал на ip полученый по cmd /k ipconfig /all
сокет открывался, а на работе ни в какую((
 
 Top
Kibor
Отправлено: 16 Марта, 2016 - 11:25:11
Post Id



Администратор
Эксперт


Просматривает форум
Сообщений всего: 8144
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




 SkaDi пишет:
дома делал на ip полученый по cmd /k ipconfig /all
сокет открывался, а на работе ни в какую((

брандмауэр писал что надо дать разрешение?
наверно блокирует.
(Добавление)
а хотя не... он тут не при чем. то есть при чем если блокирует серверную программу..
(Добавление)
а что вообще требуется получить?
 
 Top
SkaDi
Отправлено: 16 Марта, 2016 - 12:23:36
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 25
Дата рег-ции: Сент. 2013  
Репутация: 0




хочу из программы написанной под Qt передавать данные в Кибор. На данный момент сделал это через системный буфер, но это все равно както кривовато(

вот хочу через сокеты организовать, Qt-Qt работает, кибор-кибор(копипаст из примеров http://kibor-bot.com/forum/topic.php?forum=1&topic=69) тоже работает, а qt-kibor не хочет( (возможно изза того что в Qt использую UdpSocket);

думал мб через opensocket законектятся, но пока что никак, прииду домой еще попробую.

(Отредактировано автором: 16 Марта, 2016 - 12:26:50)

 
 Top
Kibor
Отправлено: 16 Марта, 2016 - 13:23:08
Post Id



Администратор
Эксперт


Просматривает форум
Сообщений всего: 8144
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




Этот пример работает.
Это сервер. Он получил ответ от клиента написанного на C++
http://kibor-bot.com/forum/topic...77246#1458077246

Клиентом служил чат Кибор в котором я изменил IP на 127.0.0.1 Все работает и программа на C++ связывается с Кибором.

Как там в Qt не знаю.
 
 Top
SkaDi
Отправлено: 16 Марта, 2016 - 18:23:15
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 25
Дата рег-ции: Сент. 2013  
Репутация: 0




сделал через tcpSocket и

CODE:
char recvs[256];//массив в который принимаем
int flag_recv=0;// это флаг в котором будет 1 когда на сервер придет сообщение
enablelistenport (10005);//включили прослушку 10005 порта (самому выбирать)
recvport (#recvs[0], 256, #flag_recv);//начали слушать. в отдельном потоке
loop()
{
messagebox(format(flag_recv));
if (flag_recv==1)//если тут 1 - пришло сообщение
{
flag_recv=0;//обнулим
messagebox (format(#recvs[0]));
recvport (#recvs[0], 256, #flag_recv);//начали слушать. в отдельном потоке
}
sleep(10);
}


правда есть пара интересных моментов.
Почемуто флаг, пока нет сообщения равен -1, хотя мы его обнуляем(похоже что в recvport он выставляется в -1)
после приема 1го сообщения, чтение прекращаяется, и приходится включать прослушку заново( так и должно быть?)
 
 Top
Kibor
Отправлено: 16 Марта, 2016 - 18:32:50
Post Id



Администратор
Эксперт


Просматривает форум
Сообщений всего: 8144
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




 SkaDi пишет:
Почемуто флаг, пока нет сообщения равен -1, хотя мы его обнуляем(похоже что в recvport он выставляется в -1)

да. ставит -1 если нет сообщения.. не важно.

 SkaDi пишет:
после приема 1го сообщения, чтение прекращаяется, и приходится включать прослушку заново( так и должно быть?)

так должно.
так как неизвестно, может надо ответить?
короче надо включать если не надо отвечать.
или если отвечать над, то ответить и потом опять включать.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by