Page 1 of 1

SMS appointment booking project

Posted: Tue May 14, 2013 11:15 am
by HarryAasterud

Hi all. I am a (hobby-) web designer with limited programming skills. Have experience with designing asp pages with ms-access DB, and have some knowledge on how to work with mySQL.

That said, I wanted to give Appery a go and see if I could make an appointment booking system.

Basically I am looking at an appointment registration/confirmation app. There are many of those out there. Enter an appointment and send a reminder to the client at a specific time before the event. But I want to include the option to receive SMS where the client can book an appointment by SMS in f.ex.the simplest format . The app will then allocate the first available time slot (predefined time slots in a db), reserve it and send an SMS back to confirm date and time of the appointment. I could think of more ways to format the SMS with additional parameters . The app can then look at the request, allocate the first available time slot that corresponds to the request, reserve it, and send SMS confirmation.

A second reminder should be send before the event. Cancellation of an appointment could be done be returning the confirmation SMS, so the app can flag the time slot as available again.

The booked appointments should become visible in my Android calendar app. It should also be available for export to other web based EMR systems. I am investigating export/syncing possibilities to OpenEMR.

The UI and messages need to be configurable, and best would be to open up for multiple language so that users all over the world can modify it to suite their needs. This would run as an app, so I do not (yet) fully understand if Appery can create an app that includes a database, like Android SDK does, if everything needs to be hosted (Cloud).

I jumped right into it and looked on how to define the time slots. I think a good way could be to pre-define time slots, like from 10:00-11:00, next from 11:30-12:30, third from 13:30-14:30, and the last from 15:00-16:00. With an option to pre-define on what weekdays I want to make the time slot available (f.ex Saturday only 11:30-12:30).

I created the DB, and a new collection called time_slots. My first challenge showed up right away :o). This is what I created:

_id
session_start (number)= hh.mm
session_end (number) = hh.mm
dow_mo (boolean) = true/false
dow_tu (boolean) = true/false
dow_we (boolean) = true/false
dow_th (boolean) = true/false
dow_fr (boolean) = true/false
dow_sa (boolean) = true/false
dow_su (boolean) = true/false
booked (boolean) = true/false

Questions:

  1. What type of field should session_start and _end be? How is time stored? If I use type "DATE" it forces me to pick a date. That is not the intention for this database. But then again, dow_mo 10.00-11.00 should correspond with any given Monday from 10 AM til 11 AM in the device calendar app. (am hoping to be able to list all appointments here)

  2. The day of the week (dow_xx) is solely for intern use. Just so the app knows when I want the time slots to be available.

  3. Once a column is created, I can not move it to the left or right, nor can I change the data-type. Is this correct?

    I know this is a more advanced project, but I feel I am up to it. With some pointers in the right direction I believe this could be really fun!

    Best regards, Polar


SMS appointment booking project

Posted: Tue May 14, 2013 11:33 am
by HarryAasterud

... it just struck me. About time format. If the app is going to intercept SMS with a booking in the format this will be entered in the database as pure text. So there will need to be some kind of conversion or comparison. If SMS contains "1300", this means in real time xxxx. Or am I overseing something?


SMS appointment booking project

Posted: Tue May 14, 2013 12:06 pm
by Kateryna Grynko

Hi Harry, we'll take a look.


SMS appointment booking project

Posted: Tue May 14, 2013 12:38 pm
by Kateryna Grynko
  1. We do not provide a separate type for storing hours and minutes. You can store time as a string "09:00", or as the number of 900, 1000, or start a separate numeric field for the hours and a numeric field for minutes.
    1. To store the day of the week you can similarly use a number from 1 to 7, or store abbreviated weekday names "mon", "tue", "wed", etc in a table.
    2. After creating the columns you cannot change them, their order, their type or rename them. As a workaround you can export your collection to CSV file, change the order of columns in it and then import it into a new collection.

SMS appointment booking project

Posted: Tue May 14, 2013 12:47 pm
by HarryAasterud

Thx Katya for swift reply :o).