I gave this talk at Barcamp Liverpool, which was to briefly explain how I worked out how to send and receive SMS messages from a PC using a mobile phone, a Bluetooth adaptor and a piece of software for Linux called ser2net.
4. Using SMS in your personal projects And programmers all know how to read from databases
5. Using SMS in your personal projects And programmers all know how to read from databases mostly
6. Using SMS in your personal projects So, why not use something which would read SMS messages from a mobile phone, and insert them into a database for processing?
7. Using SMS in your personal projects Of course, I couldn't find one so I wrote one!
8. Using SMS in your personal projects I wanted to help users who like exchanging SMS with microblogging sites (like Twitter or Identi.ca)
9. Using SMS in your personal projects But couldn't because they turned it off
10. Using SMS in your personal projects Or didn't have it in my country for my network
11. Using SMS in your personal projects It also meant I had a project to work on :)
12. Using SMS in your personal projects Enter smsToLaconica
13. Using SMS in your personal projects Crap name huh?
14. Using SMS in your personal projects Laconica is the microblogging software I was writing for initially
15. Using SMS in your personal projects My first draft only took SMS messages and sent them to Laconi.ca based sites e.g. ”Yey! I'm talking at #BarcampLiverpool”
16. Using SMS in your personal projects Next I wanted to also send SMSs back from my direct messages and replies e.g. ”@jontheniceguy I'm loving it so far!”
17. Using SMS in your personal projects (I hope that's what I'll read!)
18. Using SMS in your personal projects So, I had to learn about how to send and receive SMS messages.
19. Using SMS in your personal projects It's actually pretty easy.
21. Using SMS in your personal projects The mobile phone acts like a modem – you talk to it with AT commands
22. Using SMS in your personal projects AT+CMGL=”All” or AT+CMGL=4 These commands retrieve all messages on your phone, depending on the modes your phone will accept – PDU or Text
23. Using SMS in your personal projects Modes in SMS
24. Using SMS in your personal projects PDU is a binary format – it's 7 bit binary, stored in 8 bit chunks converted to hex.
25. Using SMS in your personal projects The messages look like this: 07911326040000F0040B911346610089F600002080629 17314080CC8F71D14969741F977FD07
26. Using SMS in your personal projects I found it really hard to send SMS messages in PDU mode, so I switched my focus to TEXT mode
27. Using SMS in your personal projects I found it really hard to send SMS messages in PDU mode, so I switched my focus to TEXT mode Which is just normal text
28. Using SMS in your personal projects You don't need to know all the detail now, but it does work
29. Using SMS in your personal projects And you don't ACTUALLY need to be working with Laconi.ca or identi.ca to use the code in your own site!
30. Using SMS in your personal projects It's just a PHP script which you run as a daemon!
31. Using SMS in your personal projects (You might need to tweak it a bit!)
32. Using SMS in your personal projects The code is released under the Affero General Public License (v3), but if you contact me directly, I'll consider re-licensing for your project
33. Using SMS in your personal projects Or, you could just look at lib_text.php or lib_pdu.php in the source code
34. Using SMS in your personal projects So, where is the source code?
35. Using SMS in your personal projects Sourceforge of course!
36. Using SMS in your personal projects It's at http://sourceforge.net/projects/laconicatools
37. Using SMS in your personal projects Or http://is.gd/2pad for short!
38. Using SMS in your personal projects What do you need to make it run?
39. Using SMS in your personal projects A mobile phone
40. Using SMS in your personal projects One you can connect to with a data cable or bluetooth
41. Using SMS in your personal projects That exposes the modem as a serial port
42. Using SMS in your personal projects (Nokia's do well on this, and most of us have an old one kicking around)
43. Using SMS in your personal projects I use a Linux daemon called ser2net to expose the serial port via telnet (on port 2000)
44. Using SMS in your personal projects And then you need PHP, and a database that PHP knows how to talk to (which is most of them!)
45. Using SMS in your personal projects And that's it
46. Using SMS in your personal projects Any questions?