irclog2html for #htc-blueangel on 20051201

07:07.48*** join/#htc-blueangel rob_w (n=bob@p85.212.148.143.tisdip.tiscali.de)
07:07.48*** mode/#htc-blueangel [+o rob_w] by ChanServ
09:20.58*** join/#htc-blueangel oho_ (n=oho@81-179-87-148.dsl.pipex.com)
09:21.05oho_Hi
11:11.59*** join/#htc-blueangel cp15_ (n=8fa4660d@www.it-schaller.de)
11:12.08cp15_Good morning
11:12.21oho_hi cp15_
11:13.05cp15_Hi oho_
11:17.34cp15_Any news on gomunicator research?
11:18.14oho_I will have some time this afternoon and will continue to work on it. In addition I have put some time aside on the weekend
11:19.29cp15_Great. Unfortunately I don't have that much time currently. I have to finish my bookkeeping for the last year
11:21.55oho_sounds like fun
11:22.09oho_no worries, I will do as much as possible
11:24.50cp15_Well, partly it will be fun, since I will get a big refund... On the other hand...
11:33.07rob_whey cp15_ , looks like someone wants to invest in me .. into "mobil Linux devices"
11:33.36rob_wmaybe by then i will need exspert assistance in coding / porting
11:35.36rob_wi was thinking of you by that
11:39.13cp15_Well, we should talk offline about that, I think
12:16.54*** join/#htc-blueangel cp15_ (n=8fa4660d@www.it-schaller.de)
12:17.00cp15_Hmm...
12:32.09rob_wwhat
12:39.10cp15_Got disconnected
14:16.27ohocp15_: I am just checking all AT commands, there are quite a few in the code of GO... which are not implemented on the BA. Also do you know what it means when the BA returns 4 after a command ?
14:20.50cp15_oho: Try setting text status replies with ATV1
14:20.54cp15_4 means ERROR
14:21.08ohoI thought so
14:21.17ohook I will try it with ATV1
14:21.27ohosome already say ERROR: some number
14:44.31*** join/#htc-blueangel iclem (n=iclem@iclem.net)
16:00.19cp15_Will go home now
16:45.46*** join/#htc-blueangel cp15 (i=ufdxeg@p549A0EE3.dip0.t-ipconnect.de)
16:45.46*** mode/#htc-blueangel [+o cp15] by ChanServ
16:47.20cp15re
16:53.13rob_wwb cp15
17:12.57*** join/#htc-blueangel _cronos_ (n=cronos@ron34-1-82-224-149-102.fbx.proxad.net)
19:09.38ohocp15: could you please tell me why the code has a method which explicitly reads from the socket and in addition to that there is a "socket handler" which takes every new msg and processes it. It seems to me that the tryReadPhone method is not needed !?
19:59.09*** join/#htc-blueangel JuNuKN (n=JuNuKN@Kb945.k.pppool.de)
20:23.34ohoI am going home now, but I will go online again when I am home - see you guys
20:46.21cp15oho: Are you already at home?
20:51.40oho_yes
20:51.45oho_hi cp15
20:52.36cp15Ok, the reason for the socket handler and the tryReadPhone is to be able to use synchronous and asynchronous commands
20:53.51oho_I thought so, but when using synchronous ones, doesn't the standard socket listener pick up the msg before the tryReadPhone is getting it ?
20:54.47cp15No, the socket listener is only called when gtk (or glib really) is in its main loop
20:55.54oho_ah ok that makes sense then, otherwiese I couldn't see a reason for it
20:56.16oho_cheers
20:58.09oho_but this way isn't it possible that we might miss a call ? or is the incomming call msg not removed by the GSM module ?
21:00.13cp15tryReadPhone calls processReadLine, which reacts on "RING"
21:00.42cp15So no matter if you get the "RING" during the idle loop or (unlikely) during a command
21:01.24oho_ok - thanks, that was the last bit I didn't fully understand. I will start re-writing the software on Saturday
21:02.20cp15Ok, may I make some suggestions?
21:02.31oho_yes go on
21:03.09oho_my plan is def. to seperate the gui from the phone software
21:03.53cp15I think we need three essential functions: Processing a synchronous command, processing an asynchronous command and reacting to unsolicited replies
21:04.08cp15First, the asynchronous call
21:04.55oho_this is done bye the socket listener - isn't it ?
21:04.59cp15You call a function with the command you want to execute, a timeout how long you want to wait and a function which gets called when the command is completed or a timeout has occured
21:06.12cp15The function does the following: It puts the command into a queue
21:06.33cp15When there is no active command, the next command from the queue will get executed and the timeout will be set
21:06.46oho_ok
21:07.15oho_and for the synchronous we don't need a time out, because it will be send straight after !?
21:07.32cp15Then you collect all lines which will occur after the command until a "OK","ERROR" or similar happens
21:07.51cp15Then you call the callback function with the collected lines and cancel the timeout
21:08.38cp15If the timeout occurs, you will also call the callback function, but with a flag that signals the timeout
21:09.16cp15You need a timeout both in the asynchronous and in the synchronous calls, else a little error will lock up the phone
21:09.47cp15The synchronous case is similar to the asynchronous, but you don't need a callback function
21:10.08cp15It blocks until either the timeout occurs or you get a reply
21:10.41cp15Internally it could work like the asynchronous case, with a loop which gets serial input until the callback sets a exit flag
21:11.02oho_ok that makes sense - thank you. One other question, how do you determine how long the time out needs to be
21:11.14cp15Try and error
21:11.15oho_is that just guess work ?
21:11.25oho_ok
21:11.39cp15Then we have a third case: Unsolicited replies
21:12.43cp15You get these when the phone rings, when calls are transferred, when you get a SMS and maybe some other cases
21:13.00cp15For this there is a function where you could register a prefix
21:13.27oho_I have seen it, but I can't remember the name
21:13.29cp15When the prefix occurs, a callback associated to this prefix will get called
21:14.16cp15So, I hope my ideas are not completely nonsense. If you want to discuss, I am open for everything
21:14.38oho_no that sounds good
21:15.04oho_I think my problem was that I am not 100% in C mode yet.
21:15.36oho_a constant socket listener with a queue would be nice
21:16.00cp15Yeah, but this will make you 100% event driven
21:16.12oho_true
21:16.20cp15You can't issue an ATH and wait for the reply
21:16.55cp15You always have to set up a callback which processes the reply and then decides what to do
21:17.38oho_yeah makes sense
21:17.42oho_cheers
21:17.55oho_I will let you know how I am getting on
21:18.45cp15Ok, I hoped I have time to improve the at command processing for myself, but I have much other stuff to do
21:18.59cp15So I am glad that you take the job
21:19.34oho_I already learned quite a bit
21:20.04oho_I am sure we can reduce the amount of code by 1/2
21:20.26oho_there is a lot of dead code at the moment
21:20.41cp15One last thing: I wouldn't seperate gui and command processing right now, it makes development much harder, since you have to design proper interfaces which may be not ideal later
21:21.05oho_ok
21:21.25cp15But, since it is your work, do as you like
21:22.00oho_I am quite happy to listen to people who know what they are talking about
21:23.28*** join/#htc-blueangel _cronos_ (n=cronos@ron34-1-82-224-149-102.fbx.proxad.net)
22:05.36oho_I am going offline now - see you
22:06.26cp15Bye, see you
22:14.48*** join/#htc-blueangel ChanServ (ChanServ@services.)
22:14.49*** mode/#htc-blueangel [+o ChanServ] by irc.freenode.net
22:57.58*** join/#htc-blueangel cp15 (i=uindfh@p549A0EE3.dip0.t-ipconnect.de)
22:57.58*** mode/#htc-blueangel [+o cp15] by ChanServ
23:09.45cp15Will go to bed now. Good night
23:09.59*** part/#htc-blueangel cp15 (i=uindfh@p549A0EE3.dip0.t-ipconnect.de)
23:13.31*** join/#htc-blueangel cp15 (i=tdvixl@p549A0EE3.dip0.t-ipconnect.de)
23:13.31*** mode/#htc-blueangel [+o cp15] by ChanServ

Generated by irclog2html.pl by Jeff Waugh - find it at freshmeat.net! Modified by Tim Riker to work with blootbot logs, split per channel, etc.