Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I have been task with the mission of creating a phone solution where clients call a number and using the phone keypad they enter a product ID and base on that ID they should hear the product description that is stored as text in MySQL (text to voice). If they are happy with the product or products they will get an email with all the list of product and their details.
Can anyone point me into the right direction on what to use for this phone server?
Note: maybe I just don't know what to call each service, but that is what needs to be accomplish. I am going crazy reading about trunks, pbx and Asterix
What you are looking for is an Interactive Voice Response system (IVR). There are existing systems that can be programmed for individual applications.
The W3C even has a standard called VoiceXML, which is a standard for interaction between voice systems and computers.
Unfortionately, that is the extent of my knowledge on the topic.
Honestly, Asterisk is not very difficult to set up and get running for something like this. Get an inexpensive and unlimited inbound SIP channel from Callcentric or another trunk provider, and write your IVR as the default extension in the dialplan.
Don't let yourself get overwhelmed. You only need to define your trunk as a SIP peer in sip.conf to get the box talking to your provider, and the dialplan syntax is very, very simple. You don't really need any other configuration for Asterisk itself, unless you have to use a land line, which would require a digium or sangoma board with fxo ports on it, and configuration of the zaptel drivers within asterisk.
Text to speech isn't likely to be as great as you'd like, but it may not be feasible to record all of the audio files that you'd need. The problem is that cloud IVR providers may not be cost effective for your application.
Any other questions, please don't hesitate to ask.
If you don't want to deal with Asterisk, there are other web-based options as well. The one I know the best (because I work there) is Twilio which lets you build phone applications the same way you build web applications. It's much simpler than setting up and hosting your own Asterisk instance and dealing with carrier connections. There are other similar services out there as well.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 7 years ago.
Improve this question
I want to set up a honeypot type trap to catch out and secretly record a tech support scam firm that conned my Grandparents out of a lot of money for a non issue on their computer. Like many such scam firms, they occasionally change their web address and phone numbers and are partially based in India.
I was thinking about running Windows 7 inside a virtual machine and using a SOCKS proxy for the VM's internet connection to hide my true Static IP.
I am then planning to make a video about the scammers and put it on YouTube.
The thing is though, I am doubting whether that I can legally record a conversation in a covert manner and then put it on YT. (In UK)
What I really want to know is whether the scammers will be able to get my private license key, or any other identifiable information from the VM when they have control of it? Also does them having the product ID (including them going through Microsoft) put my license/copy of Windows in jeopardy?
I ideally want to bring them to justice and spread the word about them so that they get closed down. In other words, I want to get my own back on them.
Side Note: If this forum is not appropriate for this question, where would be?
Regards: Elliott
they can easily know that you run on a VM. Just with simple command about your hardware. But, I am sure they will not check if it is a honey pot.I dont know how you are planning to record them. I dont believe that you can record something interesting visually.The first step for them is to have a rootkit on your pc. After that is just about command line. There will be nothing good to record visually other that text line in your honey pot software. And You dont know when the attack you will come. Your Vm must be up all the time and the Ip and Mac address the same. Like the others say dont waste your time.No one in history a been put in jail for hacking a honey pot.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I was just thinking of possible ways to go about temporary login systems. I was thinking having a bunch of your standard images with a jumbled up word and users type in the word. I would have a MySQL table where all the photos have a unique id, link and answer-key. that way the webpage just has to choose a random number the GET photo where id = random number. then compare what the user types in to the answer key of the photo.
I'm not currently trying to create this system, it seems very simple and I was just trying to think if it is a secure system that would work.
so my question really is, would there security risks with this, is it robust enough to keep out bots, would my site be destroyed 10 seconds after implementing it.
What you're describing sounds exactly like a CAPTCHA system. These are used widely to prevent bots from issuing automated requests against an interface. The problem is that it's hard to make images that a bot can't just interpret anyway.
Outsmarted: Captcha security not much of a gotcha is an article about some Stanford researchers who developed an image-recognition tool (which is not publicly available) to test captcha implementations:
Decaptcha was able to decode 66 percent of the Captchas used by Visa's Authorize.net payment site, 70 percent of Blizzard Entertainment's Captchas -- the company's games include World of Warcraft and Diablo -- and 25 percent of Wikipedia's. About one-fifth of Digg.com's Captchas and almost that many of CNN.com's were decodable.
The researchers recommended Google's reCAPTCHA as a much more effective system. You can add a reCAPTCHA widget to your own website. This would be safer and easier than trying to develop your own and find it to be too weak.
Short answer: No, it's not secure. If someone really wants to hack your system he can build his own database of image-word.
The key is to invest in security less than it will cost you if your system will be compromise, so I won't invest in a security system too much (it sounds like you don't really have a sensitive information to hide).
BUT, you have an easy & free solution. You can use reCaptcha, not only it's much more secured, you'll help digitize some useful information.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I am new to IOS development.
I am going to make a Bilingual Dictionary App for IOS. I have two options in front of me for choosing database. SQLlite and MySQL.
If I choose SQLLite then I believe I will have to pack the database with the app. Every user who will use this app the database will be downloaded to his device.
is it a good approach ?
or I should use MySQL ? that stays on the server and app will connect back and forth to get data from it.
Please guide which database should I use for Bilingual Dictionary Mobile app ?
Or If there is anything else I am missing ?
Thanks in advance !!
There are advantages and disadvantages to each, depending on the functionality and user experience you prefer. Unless you plan to update the content frequently, you wouldn't expect it to change constantly, so there isn't an essential need to provide dynamic content. However, hosting the content online can save a lot of space, which for some mobile users may be limited.
However, to me the most important factor to consider is that as a bilingual dictionary, you may have a substantial market of people who are travelling. People who are travelling often don't have data service, and thus must rely on wifi if they want to access this dictionary. As someone who travels with my cellphone, having a dictionary which does not require a data connection is a major functional advantage, and as a designer I would want to provide this functionality, even if just as an option. This may change if you expect that the greater part of your market is not going to use it while travelling.
Agree with Mitch Goshorn's answer. I don't know if you're worrying about the "security" of your database or you just want to save space on device. But I suggest the local one (SQLite). In case that you don't want user to steel your database by hijacking the application folder, you may want to think about encryption. Sorry if this is not considered to be an answer cause I don't have enough reputation to comment.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
This is not something I want to do myself, but it's a question/problem I can't get out of my head.
If you distribute open source-program/classes/libraries, how can you make sure the user has purchased a license? Would it not be very easy for programmers to just remove the license-part of the product and distribute it or use a pirate-version?
Take Invision Power Board for instance. It is written in PHP (i.e completely open and editable) and you have to buy a license to be able to use it. How can they make this limit? Do they authenticate the forum towards their servers? If they do, would it not be easy to simply remove this function?
Another example that I have even more problem understanding is HighCharts, a JS library to draw graphs. They offer a free version with their name on each graph. If you purchase the product, the label is gone. How do they do this?
I know this question is a bit wide and open, but I am just asking for a way to prevent people from simply editing out the license/blockade? What is the essence in this?
There are no license purchases for true "open source" libraries or programs, because the essence of open source is that the code is free and you can build/deploy it yourself at will.
What you're talking about is commercial software that might use a codebase that is easily visible/editable. It's not marketed as "open source," but the source code is easily accessible and potentially easily modified.
There are various mechanisms for obfuscating or hiding the content of the code that some products would choose to use, which make modifying the code more difficult. For example, there are various ways of pre-compiling PHP code rather than distributing the raw files (see this question for examples).
However, the biggest thing that you lose out on with most software of this sort is support. If you're a serious user of a complex piece of software, especially a business user, you would typically want to know that you have a commercial support plan in place for any critical software. The kind of user that would crack/pirate such software (that is, individuals or small companies) aren't likely to be as significant to the vendor.
On the internet there's a further obvious avenue: if a significant public site were using Invision Power Board, they would soon notice and could demand suitable license (or take legal action).
Ultimately, this kind of abuse is very difficult to prevent if someone is determined enough: you are very much at the whim of your users.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I am developing an open source desktop twitter client. I would like to take advantage on the new xAuth authentication method, however my app is open source which means that if I put the keys directly into the source file, it may be a vulnerability (am I correct? The twitter support guy told me).
On the other hand, putting the key directly into a binary also doesn't make sense. I am writing my application in python, so if I just supply the pyc files, it is one more seconds to get the keys, thanks to the excellent reflection capatibilities of Python. If I create a small .so file with the keys, it is also trivial to obtain the key by looking at the raw binary (keys has fixed length and character set).
What is your opinion? Is it really a secutiry hole to expose the API keys?
Security hole? In broad terms, yes. Realistically though, these aren't nuclear launch codes we're talking about.
About the worst thing that could happen is that someone could take and use your app's keys to do something against Twitter's TOS that will end up getting the keys banned. No user data would be vulnerable since you're not distributing the user tokens (that would be much worse from a security standpoint). Since anyone can register an app in 2 seconds at no cost, the only reason to do that kind of impersonation would be specifically to besmirch the reputation of you or your app.
One thing you could do is leave them out of the source code but make it clear that user's compiling from source need to obtain their own keys and put them in the appropriate place, but leave them in the binary version that you distribute. Not 100% secure, but makes it that little bit harder that will deter a certain number of n'er-do-wells.