NSStream Probleme d'ecriture sur le stream Output
Bonjour
je viens enfin de reussir a me connecter a mon systéme de domotique sur le port qui m'interesse mais je n'arrive pas a ecrire des données sur ce port
j'ai utiliser NSSTream qui marche nikel d'ailleur mais je comprends pas comment simplement ecrire sur le stream Output par exemple TOTO ( pour faire simple ) via un bouton
si quelqu'un a deja jouer avec NSStream ca m'aiderai beaucoup
merci par avance
Lastiko
je viens enfin de reussir a me connecter a mon systéme de domotique sur le port qui m'interesse mais je n'arrive pas a ecrire des données sur ce port
j'ai utiliser NSSTream qui marche nikel d'ailleur mais je comprends pas comment simplement ecrire sur le stream Output par exemple TOTO ( pour faire simple ) via un bouton
si quelqu'un a deja jouer avec NSStream ca m'aiderai beaucoup
merci par avance
Lastiko
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
alors pour connecter , je fais ca
je vois bien sur la connection monter sur ce port 5000 sur le systéme de domotique ( jusque la tout va bien ;D )
ensuite pour la déconnection
idem ca marche
la gestion des events
bon la y a un truc qui arrive sur le systeme de domotique quand ca connect
je lis ca "connection reussie\r\n"
j'ai donc repris la partie qui envoie ca et mise dans un bouton mais ca veut pas le refaire en envoyant TOTO par exemple mais rien a faire
meme google m'a pas aidé sur le coup ( ce salopard lol )
Si quelqu'un pouvait m'aiguiller , je serais ravi :why?:
Apparemment, à partir de la méthode action d'un bouton, tu ne peux plus renvoyer des données dans ton NSOutputStream, non ?
Que te renvoient les différents status et autres messages d'erreur ?
EDIT : correction d'une faute de frappe dans le code...
merci pour le coup de main
et que donnent les message d'erreur/status ?
Il va falloir que tu sois un peu plus causant si tu veux qu'on t'aide.
Ca veut dire quoi "ça marcha pas" ?
Plantage ? erreur à la compil ?
Qu'affiche la log ?
ca donne une erreur de compli
" error : error syntax before";"token
voila l'erreur que ca donne apres ca
NSInteger i=[oStream write:[toto cStringUsingEncoding:NSASCIIStringEncoding] maxLength:[toto lengthOfBytesUsingEncoding:NSASCIIStringEncoding];
etrange non ? tu as une idée docteur No ;D
Bah ouais que j'ai une idée...
Tu devais toujours pas être réveillé quand tu as pondu ton code, non ?
Car dans le delegate stream:handleEvent:, quand tu reçois un événement NSStreamEventHasSpaceAvailable, tu émets une chaine "connexion reussie", puis si l'envoi a été correct (la valeur retournée par write:maxLength: est positive), tu fermes immédiatement ta connexion par un [oStream close]; !
Donc inutile par la suite d'utiliser ton oStream.
effectivement ca marche maintenant ( le code c'est pas moi qui l'ai ecris je l'ai trouver sur le net )
j'ai un probleme sur la stabilité de la connection , l'application marche mais coupe au bout d'un certain temps
en cherchant l'erreur je me suis rendu compte que dans la version 3 du SDK , il n'y a plus NSHost et forcément ca me mets deux warning
warning no '+ hostWithAddress' method found
et
warning 'NSStream' may not respond to '+ getStreams ToHost:port:inputStream:outputStream'
je me demande si ca ne viendrait pas de ca mon soucis
mais ca deconnecte toujours au bout d'un moment
erreur NSPOSIXErrorDomaine code = 54
on va dire que ca fait 3 jours que je suis sur ce probleme
la je viens de reprendre mon prog complement
dans le simulateur la connection tiens 1h30 sans soucis ( enfin j'ai stopper le test apres 1 h 30 )
mais dés que je teste dans l'ipod voila en 1 ou 2 minutes c'est mort , plus de connection
est ce que quelqu'un peut m'aider la
Moi j'ai des gros soucis pour implementer un petit client/serveur simple entre un iphone et un PC.
Le pb n° 1 est qu'il faut du code des 2 cotés. Un du coté de l'Iphone (ObjC) et 1 du coté du PC (lequel ??)
J'avais pense quelque chose de simple :
L'iphone envoie une trame a un PC (sur appui bouton dans l'iphone) et celui ci renvoie a l'Iphone une trame de reponse quand il a fini de bosser (exemple si de l'iphone on envoi "toto", coté PC, on affiche "toto" dans un page HTML ou on stocke l'info dans une base SQlite par exemple)
Quand le PC a terminé son traitement, il renvoie vers l'iphone un message que l'on affiche sur l'Iphone ("titi")
quelqu'un pourrait m'aider (de maniere concrete). Eventuellement avec quelques bout de code qui marchent ?
merci de votre retour car ce n'est pas tres evident sur l'Iphone.
A priori, je dois etre sur le bon forum
Certes, mais pas la peine de poster 3 fois la même question...
Mais cela dit tu as raison.
je ferais attention