Hi
I recently posted a job on Elance for the attached project but the prices asked for seemed to be extremely high for what I consider a simple? programming task. (over £1000GBP).
I would have estimated a couple of hundred pounds?
I regularly commission interactive games and touchscreen applications (for museums) and they are usually less than half the prices asked for this project on Elance.
I have attached the full proposal here in the hope that someone could explain why the cost for someone to do this might be so high and please feel free to quote me for the work if you feel it’s something you could achieve.
So user would pick up handset, hear dial tone, enter 123# and hear "beep" "boop" "borp" "blaat" and then message plays, or the "I'm sorry, invalid number entered" message followed by dial tone again, or require use to "hang up" and try again?
CrossRoads:
So user would pick up handset, hear dial tone, enter 123# and hear "beep" "boop" "borp" "blaat" and then message plays, or the "I'm sorry, invalid number entered" message followed by dial tone again, or require use to "hang up" and try again?
Sorry for the slow reply!
Yes that's basically it. No need for dial tone to sound after message as "Please hang up" would be part of the message just replayed.
"beep" "boop" "borp" "blaat" ( or more likely a dialling sound effect).would also be part of the same audio clip triggered by 123, no need to have a separate audio clip for this.
The "down receiver" trigger would be clip of silence. (this just interrupts the currently playing clip so it doesn’t carry on playing when the receiver is replaced.)
Dial tone only needs to trigger on initial pickup of receiver.
Sorry, lost track of this myself - need the forum to notify of changes to posts!
The "beep" "boop" "borp" "blaat" I was thinking would be the tone of each button press so a user would know it was recognized.
I just got some MP3 player cards; thinking I can load 9 files, one for each digit press; after 3 are entered, there would be a slight pause and the selected track plays. Module I have supports 1 to 199 as track names, the software can always map from 642 to a valid number to make selection more interesting.
Haven't tried yet to see how quickly tracks can be selected, how long it takes from the serial command being issued to the track starting.
Can I clarify a couple of points, having looked at your spreadsheet?
It talks about three inputs that respond to handset lift, start to dial and dial counter. Are you in fact using a standard loop disconnect telephone with one pair of contacts that are normally open, go closed when the handset is lifted and then briefly open for each pulse in the digit dialled? Or have the phones been modified in some way.
And can you confirm that, at least initially, you have an audio player that can play out the various samples and you just need the Arduino to trigger the relevant input pin to the player at the right time?
Here's what I have working so far:
On power up with the handset down, no sound is played and display shows HOLD.
When handset is picked up (switch released), dialtone is played and display shows HAND.
As numbers are entered, they appear on the display one by one and a number tone plays. The files I play now say the number so I can test that the correct file is being used.
After 3 are entered the file is played and the display show PLAY.
If the 3-digit number is out of range (below 013 and above 199) the display shows bAdno, the display is cleared (---), and busy signal sounds (beep beep).
That's all working well - except the 'speech' file selected is not quite right. Getting close!
We only made a dozen files. I guess next text is numbering them all sequentially with no gaps, right now they are scattered thru the 199 range.
Ok, this is making more sense.
If the files are named sequentially:
01
02
:
09
10
11
12
:
1e
1f
20
21
23
24
25 (as high as I've gone)
then when you send the card the matching number the correct file plays.
Having gaps in the sequence plays back files in an unexpected manner.
I suppose having an array to map from say 352 to 25 could be used to mix things up, but it seems like an unnecessary complication that I won't pursue.
As it stands, the SD card can have files named in HEX from 0D to C7 that will play back when a user enters 013 to 199. Just can't have any gaps in the hex file names.
Now to incorporate the busy button so the 3rd button name isn't cut off. Or just add a little dumb delay.