I know we can use SendGrid and there are examples provided but SendGrid is awful and everything goes to spam with the non-dedicated IP accounts (yes, even after enabling DKIM and all that other stuff). All the free IPs are blacklisted and SendGrid support won't remove them or give me non-blacklisted IPs.
Is there any other way to send emails without using SendGrid using Twilio Functions? Can I somehow use NodeMailer and set it up with Gmail? That would be the ideal solution.
Twilio developer evangelist here.
With Twilio Functions you can install any npm module you like as long as it doesn't require native extensions (look out for anything that depends on node-gyp for example).
As NodeMailer has no dependencies, you can absolutely use it. Just head to the Configuration section in your Twilio console and add NodeMailer as a dependency. You can then require it in any of your Twilio Functions and use it from there.
Let me know if that helps at all.
Related
I am currently using a Twilio phone number with ShortySMS for some SMS marketing. When a customer responds (sends me an inbound message), I want to get an email. How can I accomplish this?
Twilios Code Exchange has a Quick Deploy option for this scenario. The Quick Deploy uses SendGrid as the mail sender so you'll need to have a SendGrid account in addition to your Twilio account.
The Quick Deploy utilizes a Twilio Function to run the code needed to take the incoming SMS message from Twilio, craft an email message and send it using the SendGrid API. The code for that function is located in a public Github repository if you want to take a look at what its doing.
If you use the Quick Deploy, once the function is created you can then customize its code if you want to change the default templates behavior.
Hope that helps.
I have a web app in production using Twilio which makes use of the programmable video API and various webhook call backs. When certain events happen, Twilio lets my API know via the webhook so the appropriate actions are then triggered.
From what I can tell, there is no development (ie: sandbox) environment for Twilio. This is very strange. I would expect there to be a sandbox environment so that we can do complete local development without needing to create fake responses from Twilio for webhooks and the likes.
It appears that Twilio's recommendation is to use ngrok or similar for development. But this is not possible when you already have a production application running and Twilio has no sandbox. I can't simply change my webhook endpoint in my Twilio account to point to my local ngrok end point. That would mean that my production end point is not live during that time.
The other suggestion by Twilio is that we create fake responses which we expect to receive by using curl or similar. This seems incredibly impractical having to trigger fake responses at dozens of different points in time throughout the flow of an app rather than simply receiving them from a sandbox/dev environment with Twilio.
What is the recommended method to do local Twilio related development which incorporates webhook callbacks when you already have a production app running?
I'm not familiar with Twillio specifically but generally speaking, you can add multiple webhook URLs. The idea would be to have one URL pointing to your production server and another pointing to the Ngrok endpoint.
Alternatively, you could use https://hookdeck.io (disclaimer: I'm the founder) to send the same webhook to multiple URLs. We call this webhook fan-out, you could set up both your production URL and Ngrok as destinations and provide a single endpoint (provided by Hookdeck) to Twilio.
It would look something like this:
Twilio is cool and has great prices for calls and toll-free. I have used it with Zoho CRM, but I would like to use it without being tied to a CRM.
Is there some service or place where you can just download or use ready-made web or windows clients? I want to use Twilio similar to how I would use Skype - and have it automatically / easily connect to my Twilio account. My Google searches have not returned any results.
The closest (already built client) I can think of is a SIP client, something like Zoiper.
Take a look at my answer in the link (it only describes the setup for voice but you could add messaging too):
How do I forward a Twilio number to a VoIP phone?
This must be a silly question, but is there any way to make calls btw two iOS apps without server app mentioned in Twilio tutorials. Tell me please what server app does and is there any way to perform such tasks on front end instead?
Twilio developer evangelist here.
The server is required to generate an access token for your users to get access to the Twilio service.
You also need to host some TwiML to tell Twilio what to do with calls when you make them.
If you are not interested in running a server, however, you are in luck. Just recently, Twilio launched Functions, a serverless environment for you to deploy code to. With a Twilio Function, you can use Node.js to generate your access tokens for your users and you won't have to host the code yourself, it will all be on the Twilio platform.
Check out Twilio Functions in your console and take a look at the Node.js quickstart application for the iOS Twilio Programmable Voice SDK which should give you an idea of how to use Node for your application within Functions. I'm sure there'll be tutorials and blog posts coming out. Also, check out this video on how to create access tokens for your apps with Twilio Functions.
Let me know if that helps at all.
I am new to Mandrill and its integration. Can anyone help me to figure out the advantages of using Mandrill? What can be done using Mandrill other than sending messages and tracking them?
Mandrill has many uses. You might have seen those on their website itself. Actually its a Mail Transaporter like PHP mailer, but it uses their own server for sending mails.
As said on their website,
Mandrill runs on a globally distributed infrastructure that can
deliver emails in milliseconds.
This is because when you send a mail through their SMTP or send.json (API) method, the send mail possibly see the fastest path algorithm to deliver a mail. That's why it take milliseconds to deliver. They have ~7 different mail servers worldwide for this.
Major Features,
Sending mails fastly than our own server using PHP Mailer.
Sending mails via pre-designed templates which can be reusable by the merge vars we're using.
Support multiple language platforms like, cURL, JSON, Python, PHP, Ruby, Nodejs, Dart and also their depending frameworks.
It tracks clicks from the mail we sent. For Ex: each and every url link in our sent mails is redirected only after tracking from mandrillapp site. This enables mandrill to track the no of opens in a mail and track analytics.
Through mandrill we can construct our own mail sending application or integrate into an existing application.
It's mostly used for Transactional Messages like functions like welcome mail, forgot password, cart details and etc.
It can be integrated into other shopping cart web applications.
Their api call works on even in the developer environment.
Lesser spam.
Verified domain options like DKIM and SPF settings. This enables the mails to identified by major email providers like gmail, google, etc.
It can be used as SMTP version and can be integrated into major SMTP applications.
Reports: Demographics of email send, Compare status, Which url in our mails has been clicked and no of counts.
Setup rule for delivering emails.
A/B testing, custom SMTP headers, Inbound domains and etc.
There are many other features in developer perspective. If you mention in which platform you're trying to use mandrill addditional details can be provide.
Hope this might help you.
To name a few, You can
1) use templates to do A/B testing ( which allow you to experiment with different templates, and end up with something which is effective).
2) use Embedded images , which will reduce the chance that your emails will end up in spam.
Hope this helps,